इस्तेमाल करने की सीमा

Google Forms API एक शेयर सेवा है, इसलिए हम इसमें कोटा और सीमाएं लागू करते हैं, ताकि सभी उपयोगकर्ता इसे सही तरीके से इस्तेमाल कर सकें. साथ ही, Google Workspace सिस्टम की सेहत को भी सुरक्षित रखा जा सकता है.

तय सीमा से ज़्यादा अनुरोध करने पर, आम तौर पर आपको 429: Too many requests एचटीटीपी स्टेटस कोड का जवाब मिलेगा. अगर ऐसा होता है, तो आपको एक्स्पोनेंशियल बैकऑफ़ एल्गोरिदम का इस्तेमाल करना चाहिए और कुछ देर बाद कोशिश करनी चाहिए. अगर आप नीचे दिए गए हर मिनट के कोटा के अंदर रहें, तो एक दिन में किए जाने वाले अनुरोधों की संख्या की कोई सीमा नहीं होती.

ध्यान दें: फ़ॉर्म की घड़ियों की अतिरिक्त सीमाएं तय की गई हैं. ज़्यादा जानकारी के लिए पुश नोटिफ़िकेशन सेट अप करना और पाना देखें.

इस टेबल में अनुरोध की सीमाओं के बारे में बताया गया है:

कोटा
अनुरोध पढ़ें
हर दिन हर प्रोजेक्ट के लिए अनलिमिटेड
हर मिनट के लिए एक प्रोजेक्ट 975
हर मिनट, हर उपयोगकर्ता के लिए हर प्रोजेक्ट के हिसाब से 390
पढ़ने के महंगे अनुरोध

(forms.responses.list अनुरोधों के लिए इस्तेमाल किया जाता है.)

हर दिन हर प्रोजेक्ट के लिए अनलिमिटेड
हर मिनट के लिए एक प्रोजेक्ट 450
हर मिनट, हर उपयोगकर्ता के लिए हर प्रोजेक्ट के हिसाब से 180
अनुरोध लिखें
हर दिन हर प्रोजेक्ट के लिए अनलिमिटेड
हर मिनट के लिए एक प्रोजेक्ट 375
हर मिनट, हर उपयोगकर्ता के लिए हर प्रोजेक्ट के हिसाब से 150

समय के हिसाब से कोटा से जुड़ी गड़बड़ियां ठीक करना

समय के हिसाब से होने वाली सभी गड़बड़ियों (हर X मिनट में ज़्यादा से ज़्यादा N अनुरोध) के लिए, हमारा सुझाव है कि आपका कोड अपवाद की पहचान करे. साथ ही, यह पक्का करने के लिए कि आपके डिवाइसों पर बहुत ज़्यादा लोड न हो, काट-छांट किए गए एक्सपोनेन्शियल बैकऑफ़ का इस्तेमाल करें.

एक्सपोनेंशियल बैकऑफ़, नेटवर्क ऐप्लिकेशन के लिए गड़बड़ी मैनेज करने का स्टैंडर्ड तरीका है. एक एक्सपोनेन्शियल बैकऑफ़ एल्गोरिदम, ज़्यादा से ज़्यादा बैकऑफ़ समय (ज़्यादा से ज़्यादा समय) तक, अलग-अलग अनुरोधों के बीच इंतज़ार के समय को बहुत ज़्यादा बढ़ा देता है. साथ ही, दोबारा अनुरोध करता है. अगर अनुरोध अब भी स्वीकार नहीं किए जाते हैं, तो यह ज़रूरी है कि अनुरोध पूरा होने तक, अनुरोध स्वीकार होने में देरी होती है.

एल्गोरिदम का उदाहरण

एक्स्पोनेंशियल बैकऑफ़ एल्गोरिदम, बार-बार अनुरोधों को बार-बार दोहराता है. इससे, बार-बार की जाने वाली कोशिशों के बीच इंतज़ार का समय ज़्यादा से ज़्यादा बढ़ जाता है. उदाहरण के लिए:

  1. Google Forms API से अनुरोध करें.
  2. अगर अनुरोध पूरा नहीं होता है, तो 1 + random_number_milliseconds इंतज़ार करें और फिर से अनुरोध करें.
  3. अगर अनुरोध पूरा नहीं होता है, तो दो और random_number_milliseconds इंतज़ार करें और फिर से अनुरोध करें.
  4. अगर अनुरोध पूरा नहीं होता है, तो चार और random_number_milliseconds इंतज़ार करें और फिर से अनुरोध करें.
  5. इसी तरह, ज़्यादा से ज़्यादा maximum_backoff बार.
  6. इंतज़ार करते रहें और ज़्यादा से ज़्यादा संख्या में कोशिश करें. हालांकि, बार-बार की जाने वाली कोशिशों के बीच इंतज़ार का समय न बढ़ाएं.

कहां:

  • इंतज़ार का समय min(((2^n)+random_number_milliseconds), maximum_backoff) है, हर इटरेशन (अनुरोध) के लिए n को 1 से बढ़ाया गया.
  • random_number_milliseconds, 1,000 या इससे कम मिलीसेकंड की एक रैंडम संख्या है. इससे ऐसे मामलों से बचने में मदद मिलती है जिनमें कुछ मामलों में क्लाइंट सिंक किए जाते हैं. साथ ही, सभी एक साथ फिर से अनुरोध करते हैं. सिंक करने के लिए, वे सिंक किए गए वेव में अनुरोध भेजते हैं. हर बार फिर से कोशिश करने के बाद, random_number_milliseconds की वैल्यू का फिर से हिसाब लगाया जाता है.
  • आम तौर पर, maximum_backoff की अवधि 32 या 64 सेकंड होती है. सही वैल्यू, इस्तेमाल के उदाहरण के हिसाब से तय की जाती है.

maximum_backoff को पार करने के बाद, क्लाइंट फिर से कोशिश करना जारी रख सकता है. इस पॉइंट के बाद फिर से कोशिश करने पर, बैकऑफ़ समय को जारी रखने की ज़रूरत नहीं है. उदाहरण के लिए, अगर कोई क्लाइंट 64 सेकंड की maximum_backoff वैल्यू का इस्तेमाल करता है, तो इस वैल्यू पर पहुंचने के बाद, क्लाइंट हर 64 सेकंड में फिर से कोशिश कर सकता है. कुछ मामलों में, क्लाइंट को अनिश्चित समय तक फिर से कोशिश करने से रोका जाना चाहिए.

कितनी बार कोशिश की गई है और कितनी बार कोशिश की गई है, यह आपके इस्तेमाल के उदाहरण और नेटवर्क की स्थितियों पर निर्भर करता है.

कीमत

Google Forms API का इस्तेमाल करने के लिए, कोई शुल्क नहीं लिया जाता. अनुरोध की तय सीमा पार हो जाने पर, अलग से शुल्क नहीं लिया जाता. साथ ही, आपके खाते से बिल भी नहीं भेजा जाता.

कोटा बढ़ाने का अनुरोध करें

अपने प्रोजेक्ट के संसाधन के इस्तेमाल के आधार पर, आप कोटा बढ़ाने का अनुरोध कर सकते हैं. किसी सेवा खाते से किए जाने वाले एपीआई कॉल को एक ही खाते का इस्तेमाल माना जाता है. कोटा बढ़ाने के लिए आवेदन करना, इस बात की गारंटी नहीं है कि अनुमति मिल जाएगी. कोटा में बहुत ज़्यादा बढ़ोतरी होने पर, इसे मंज़ूरी मिलने में ज़्यादा समय लग सकता है.

सभी प्रोजेक्ट के लिए एक जैसा कोटा नहीं होता. समय के साथ जैसे-जैसे Google Cloud का इस्तेमाल बढ़ता जाएगा, आपके कोटा बढ़ने की ज़रूरत हो सकती है. अगर आपको आने वाले समय में काफ़ी ज़्यादा इस्तेमाल की उम्मीद है, तो Google Cloud Console में कोटा पेज पर जाकर, कोटा घटाने या बढ़ाने का अनुरोध किया जा सकता है.

ज़्यादा जानकारी के लिए, यहां दिए गए संसाधन देखें: