एंटीपैटर्न: एपीआई प्रॉक्सी में एक से ज़्यादा प्रॉक्सीEndpoints तय करें

यह Apigee Edge का दस्तावेज़ है.
Go to the Apigee X documentation.
info

ProxyEndpoint के कॉन्फ़िगरेशन से यह तय होता है कि क्लाइंट ऐप्लिकेशन, Apigee Edge के ज़रिए एपीआई का इस्तेमाल कैसे करते हैं. ProxyEndpoint, एपीआई प्रॉक्सी का यूआरएल तय करता है. साथ ही, यह भी तय करता है कि प्रॉक्सी कैसे काम करती है. जैसे, कौनसी नीतियां लागू करनी हैं, किन टारगेट एंडपॉइंट पर रूट करना है, और इन नीतियों या रूट के नियमों को लागू करने के लिए किन शर्तों को पूरा करना है.

संक्षेप में, ProxyEndpoint का कॉन्फ़िगरेशन, एपीआई को लागू करने के लिए ज़रूरी सभी चीज़ें तय करता है.

ऐंटीपैटर्न

किसी एपीआई प्रॉक्सी में एक या एक से ज़्यादा प्रॉक्सी एंडपॉइंट हो सकते हैं. एक ही प्रॉक्सी में कई एपीआई लागू करने के लिए, कई ProxyEndpoint तय करना एक आसान तरीका है. इससे, TargetEndpoint को कॉल करने से पहले और बाद में, नीतियों और/या कारोबारी नियमों का फिर से इस्तेमाल किया जा सकता है.

दूसरी ओर, एक ही एपीआई प्रॉक्सी में कई ProxyEndpoint तय करने पर, कई ऐसे एपीआई को एक साथ जोड़ा जाता है जो एक-दूसरे से जुड़े नहीं होते. इससे, एपीआई प्रॉक्सी को पढ़ना, समझना, डीबग करना, और बनाए रखना मुश्किल हो जाता है. इससे, एपीआई प्रॉक्सी का मुख्य मकसद पूरा नहीं होता. एपीआई प्रॉक्सी का मुख्य मकसद, डेवलपर के लिए एपीआई बनाना और उन्हें बनाए रखना आसान बनाना है.

असर

किसी एपीआई प्रॉक्सी में कई ProxyEndpoint होने से:

  • डेवलपर के लिए, एपीआई प्रॉक्सी को समझना और बनाए रखना मुश्किल हो सकता है.
  • Analytics का डेटा धुंधला हो सकता है. डिफ़ॉल्ट रूप से, Analytics का डेटा प्रॉक्सी लेवल पर इकट्ठा किया जाता है. कस्टम रिपोर्ट बनाने पर ही, प्रॉक्सी एंडपॉइंट के हिसाब से मेट्रिक का ब्रेकडाउन दिखता है.
  • एपीआई प्रॉक्सी से जुड़ी समस्याओं को हल करना मुश्किल हो सकता है.

सबसे सही तरीका

नई एपीआई प्रॉक्सी लागू करते समय या मौजूदा एपीआई प्रॉक्सी को फिर से डिज़ाइन करते समय, ये सबसे सही तरीके अपनाएं:

  1. एक ProxyEndpoint के साथ एक एपीआई प्रॉक्सी लागू करें.
  2. अगर कई एपीआई, एक ही टारगेट सर्वर शेयर करते हैं और/या टारगेट सर्वर को कॉल करने से पहले या बाद में एक ही लॉजिक की ज़रूरत होती है, तो अलग-अलग एपीआई प्रॉक्सी में ऐसा लॉजिक लागू करने के लिए, शेयर किए गए फ़्लो का इस्तेमाल करें.
  3. अगर कई एपीआई, एक ही शुरुआती बेस पाथ शेयर करते हैं, लेकिन सफ़िक्स अलग-अलग होते हैं, एक ही ProxyEndpoint में, शर्तों के हिसाब से फ़्लो का इस्तेमाल करें.
  4. अगर कई ProxyEndpoint वाली कोई एपीआई प्रॉक्सी मौजूद है और उसमें कोई समस्या नहीं है, तो आपको कुछ भी करने की ज़रूरत नहीं है.

हर एपीआई प्रॉक्सी के लिए एक ProxyEndpoint का इस्तेमाल करने से:

  1. प्रॉक्सी को बनाए रखना आसान हो जाता है
  2. Analytics में बेहतर जानकारी मिलती है. जैसे, प्रॉक्सी की परफ़ॉर्मेंस और टारगेट के रिस्पॉन्स टाइम की जानकारी, सभी ProxyEndpoint के लिए एक साथ रोल अप करने के बजाय अलग-अलग रिपोर्ट की जाएगी
  3. समस्याओं को तेज़ी से हल किया जा सकता है

इस बारे में और पढ़ें