अपने एपीआई में स्पाइक अरेस्ट नीति जोड़ें

यह Apigee Edge के दस्तावेज़ हैं.
पर जाएं Apigee X के दस्तावेज़ों.
info

आपको इस ट्यूटोरियल में क्या जानकारी मिलेगी

इस ट्यूटोरियल में, आपको इनके बारे में जानकारी मिलेगी:

  • ऐसी नीति जोड़ना जो अनुरोध और जवाब पर असर डालती है.
  • नीति के असर को देखना.

आपको किन चीज़ों की ज़रूरत होगी

  • आपके प्रॉक्सी में कम से कम एक नीति (यह 'शुरू करें' ट्यूटोरियल का भी हिस्सा है).
  • curl कमांड लाइन से एपीआई कॉल करने के लिए, आपके कंप्यूटर पर इंस्टॉल होना चाहिए.

Spike Arrest नीति जोड़ना

इस ट्यूटोरियल में, आपको SpikeArrest नीति को जोड़ना और कॉन्फ़िगर करना सिखाया जाएगा. इससे, टारगेट सेवा को अचानक बढ़ने वाले ट्रैफ़िक से बचाया जा सकता है. ऐसा ट्रैफ़िक, इस्तेमाल में बढ़ोतरी, गड़बड़ी वाले क्लाइंट, या दुर्भावनापूर्ण हमलों की वजह से हो सकता है. जब अनुरोधों की संख्या, दर की सीमा से ज़्यादा हो जाती है, तो एपीआई किसी अनुरोध के लिए, HTTP 500 गड़बड़ी का मैसेज दिखाता है.

किसी एपीआई प्रॉक्सी में Spike Arrest नीति जोड़ना:

  1. apigee.com/edge में साइन इन करें.
  2. बाईं ओर मौजूद नेविगेशन बार में, डेवलप करें > एपीआई प्रॉक्सी को चुनें.
  3. वह एपीआई प्रॉक्सी चुनें जिसमें आपको Spike Arrest नीति जोड़नी है.

    अगर आपने 'शुरू करें' ट्यूटोरियल के हिसाब से काम किया है, तो इसे "getstarted" प्रॉक्सी में जोड़ा जा सकता है. यह प्रॉक्सी, एपीआई प्रॉक्सी बनाना में बनाई गई थी.

  4. नई एपीआई प्रॉक्सी के एडिटर में, डेवलप करें टैब पर क्लिक करें:

    एपीआई प्रॉक्सी एडिटर की मदद से, अपनी एपीआई प्रॉक्सी का स्ट्रक्चर देखा जा सकता है और उसके फ़्लो को कॉन्फ़िगर किया जा सकता है. एडिटर, आपकी प्रॉक्सी के अनुरोध और जवाब के मैसेज फ़्लो को विज़ुअल तरीके से दिखाता है. साथ ही, प्रॉक्सी को तय करने वाले एक्सएमएल को भी दिखाता है, जिसमें बदलाव किया जा सकता है.

  5. बाईं ओर मौजूद नेविगेटर पैनल में, प्रॉक्सी एंडपॉइंट > डिफ़ॉल्ट में जाकर, PreFlow पर क्लिक करें. (_फ़्लो_ के कॉन्सेप्ट के बारे में, अन्य ट्यूटोरियल में बताया जाएगा.)
  6. अनुरोध के PreFlow के लिए, सबसे ऊपर मौजूद +Step बटन पर क्लिक करें. इससे, उन सभी नीतियों की कैटगरी के हिसाब से सूची दिखती है जिन्हें बनाया जा सकता है.

    'अनुरोध के PreFlow में चरण' पर क्लिक करें

  7. ट्रैफ़िक मैनेजमेंट कैटगरी में, Spike Arrest को चुनें. नया नीति डायलॉग दिखता है:

    स्पाइक अरेस्ट नीति बनाना

  8. डिफ़ॉल्ट नाम छोड़ें और जोड़ें पर क्लिक करें. नई नीति, अनुरोध के PreFlow से जुड़ी होती है.
  9. नेविगेटर में, पक्का करें कि प्रॉक्सी एंडपॉइंट > डिफ़ॉल्ट में मौजूद PreFlow अब भी चुना गया हो. साथ ही, एपीआई प्रॉक्सी एडिटर में यह देखें:
    • एपीआई प्रॉक्सी एडिटर की बाईं ओर मौजूद नेविगेटर में, नीतियां में नई Spike Arrest-1 नीति जोड़ी गई है.
    • एपीआई प्रॉक्सी एडिटर के सबसे ऊपर बीच में मौजूद **डिज़ाइनर व्यू** में, Spike Arrest-1 आइकॉन जोड़ा गया है. यह आइकॉन, आपकी प्रॉक्सी के मैसेज फ़्लो को विज़ुअल तरीके से दिखाता है.
    • नीति के लिए एक्सएमएल, एपीआई प्रॉक्सी एडिटर के सबसे नीचे बीच में मौजूद कोड व्यू में दिखता है.

    स्पाइक अरेस्ट नीति के साथ PreFlow देखें

  10. नेविगेटर में, नीतियों में जाकर Spike Arrest-1 को चुनें. इसके बाद, एपीआई प्रॉक्सी एडिटर में यह देखें:
    • नीति की जानकारी, एपीआई प्रॉक्सी एडिटर के सबसे ऊपर बीच में मौजूद डिज़ाइनर व्यू में दिखती है.
    • नीति के लिए एक्सएमएल, एपीआई प्रॉक्सी एडिटर के सबसे नीचे बीच में मौजूद कोड व्यू में दिखता है.
    • नीति के लिए एक्सएमएल एलिमेंट और एट्रिब्यूट की वैल्यू, एपीआई प्रॉक्सी एडिटर की दाईं ओर मौजूद प्रॉपर्टी इंस्पेक्टर में दिखती हैं.

  11. नीति के लिए एक्सएमएल में, <Rate> एलिमेंट की वैल्यू को 1pm पर बदलें. इसका मतलब है कि क्लाउड में हर 60 सेकंड में, करीब दो अनुरोधों की अनुमति दी जाती है.

    दर को हर मिनट (pm) या हर सेकंड (ps) के हिसाब से, इंटिजर वैल्यू के तौर पर तय किया जा सकता है. यह बहुत कम सीमा है और इसका इस्तेमाल, नीति को दिखाने के लिए सिर्फ़ इस ट्यूटोरियल में किया गया है. आम तौर पर, इसे ज़्यादा सीमा पर सेट किया जाता है.

    ध्यान दें कि प्रॉपर्टी इंस्पेक्टर में, Rate की वैल्यू भी बदलकर "1pm" हो जाती है. इसके अलावा, प्रॉपर्टी इंस्पेक्टर में Rate की वैल्यू बदली जा सकती है. यह बदलाव, एक्सएमएल व्यू में दिखेगा.

  12. अपने बदलावों के साथ, मौजूदा वर्शन को सेव करने के लिए, सेव करें पर क्लिक करें.
  13. curl का इस्तेमाल करके, एपीआई को कॉल करें. साथ ही, अपनी Apigee संगठन का नाम org_name की जगह डालें:

    curl "http://org_name-test.apigee.net/getstarted"

    उदाहरण के लिए:

    curl "http://ahamilton-eval-test.apigee.net/getstarted" | python -m json.tool

    पक्का करें कि अनुरोध पूरा हो जाए और आपको वही एक्सएमएल जवाब दिखे जो पहले दिखा था. (वेब ब्राउज़र में सिर्फ़ यूआरएल भी डाला जा सकता है.)

  14. curl कमांड को एक मिनट के अंदर दो या तीन बार और चलाएं (या ब्राउज़र विंडो को रीफ़्रेश करें). ध्यान दें कि आपको यह मैसेज मिलता है, क्योंकि आपने नीति की दर की सीमा पार कर दी है:
    {
    "fault": {
      "faultstring":"Spike arrest violation. Allowed rate : 1pm",
      "detail": {
        "errorcode":"policies.ratelimit.SpikeArrestViolation"}
      }
    }

    अगर एक मिनट के अंदर ज़्यादा कॉल करने की कोशिश की जाती है, तो आपको गड़बड़ी का मैसेज मिलता रहेगा.

  15. अपनी नीति में बदलाव करके, <Rate> की सीमा को 15pm पर सेट करें. इसका मतलब है कि क्लाउड में हर चार सेकंड में, करीब दो कॉल की अनुमति दी जाती है. इसके बाद, एपीआई प्रॉक्सी को सेव करें.
  16. curl कमांड चलाएं या ब्राउज़र को बार-बार रीफ़्रेश करें (curl ज़्यादा तेज़ है). ध्यान दें कि अगर चार सेकंड के अंतराल में एक या दो कॉल किए जाते हैं, तो आपके कॉल पूरे हो जाते हैं. अगर कॉल तेज़ी से किए जाते हैं, तो चार सेकंड के अंदर दो से ज़्यादा कॉल करने पर, आपको गड़बड़ी का मैसेज मिलेगा. हालांकि, हर चार सेकंड के अंतराल के बाद कॉल किए जा सकते हैं. इसके उलट, 1pm सेटिंग के साथ पूरे एक मिनट के लिए कॉल नहीं किए जा सकते.