Google Sheets API एक शेयर की जाने वाली सेवा है, इसलिए हम इसकी सीमाएं और सीमाएं लागू करते हैं ताकि यह पक्का किया जा सके कि सभी उपयोगकर्ता सही तरीके से उसका इस्तेमाल कर रहे हैं या नहीं. साथ ही, काफ़ी हद तक मुमकिन है.
कोटा की सीमाएं
Sheets API के किसी एपीआई अनुरोध के लिए, हार्ड साइज़ की कोई सीमा तय नहीं होती है. हालांकि, उपयोगकर्ताओं को प्रोसेसिंग के उन अलग-अलग कॉम्पोनेंट की सीमाओं का सामना करना पड़ सकता है जिन्हें Sheets कंट्रोल नहीं करता. अनुरोधों की रफ़्तार बढ़ाने के लिए, Google ज़्यादा से ज़्यादा 2 एमबी पेलोड इस्तेमाल करने का सुझाव देता है.
Sheets API में हर मिनट के लिए कोटा होता है और उसे हर मिनट फिर से भरा जाता है. उदाहरण के लिए, हर प्रोजेक्ट के लिए, हर मिनट में 300 मिनट पढ़ने का अनुरोध किया जा सकता है.
अगर आपका ऐप्लिकेशन एक मिनट में 350 अनुरोध भेजता है, तो अतिरिक्त 50 अनुरोध, कोटे से ज़्यादा हो जाते हैं और
429: Too many requests
एचटीटीपी स्टेटस कोड रिस्पॉन्स. अगर ऐसा होता है, तो आपको
एक्सपोनेंशियल बैकऑफ़ एल्गोरिदम. एक मिनट बाद,
अनुरोधों पर फिर से कार्रवाई कर सकता है. उपयोगकर्ता एक साथ कई अनुरोध सबमिट कर सकते हैं, बशर्ते वे कोटा की तय सीमा के अंदर हों.
Sheets के सभी अनुरोध अपने-आप लागू हो जाते हैं. इसका मतलब है कि अगर कोई अनुरोध मान्य नहीं है, तो पूरा अपडेट नहीं हो पाएगा और कोई भी (संभावित रूप से निर्भर) बदलाव लागू नहीं किए जाएंगे.
यहां दी गई टेबल में, अनुरोध की सीमाओं की जानकारी दी गई है. बशर्ते आप प्रति मिनट के कोटे के अंदर रहें, आपके द्वारा प्रतिदिन किए जा सकने वाले अनुरोधों की संख्या सीमित कर दी जाएगी.
कोटा | |||||
---|---|---|---|---|---|
पढ़ने के अनुरोध |
|
||||
अनुरोध लिखें |
|
फ़ाइल की सीमाओं के बारे में ज़्यादा जानने के लिए, Google Drive में सेव की जा सकने वाली फ़ाइलें पर जाएं.
समय के हिसाब से कोटा की गड़बड़ियां ठीक करना
समय पर आधारित सभी गड़बड़ियों (हर X मिनट के लिए ज़्यादा से ज़्यादा N अनुरोध) के लिए, हमारा सुझाव है कि आपका कोड, अपवाद को समझ लेता है और कटौती के हिसाब से एक्सपोनेन्शियल बैकऑफ़ का इस्तेमाल करता है. इससे यह पक्का होता है कि डिवाइसों पर बहुत ज़्यादा लोड नहीं होता है.
एक्स्पोनेंशियल बैकऑफ़, नेटवर्क ऐप्लिकेशन के लिए गड़बड़ी को मैनेज करने की स्टैंडर्ड रणनीति है. अगर आप घातांकीय बैकऑफ़ एल्गोरिदम, अनुरोधों को फिर से कोशिश करने के लिए, तेज़ी से बढ़ने वाले इंतज़ार के समय का इस्तेमाल करता है बैकऑफ़ के लिए तय किया गया ज़्यादा से ज़्यादा समय. अगर अनुरोध अब भी पूरे नहीं होते हैं, तो यह ज़रूरी है कि अनुरोध के पूरा होने तक, समय के साथ अनुरोधों के बीच की देरी बढ़ती जाए.
एल्गोरिदम का उदाहरण
एक्स्पोनेंशियल बैकऑफ़ एल्गोरिदम, अनुरोधों को तेज़ी से फिर से कोशिश करता है. इससे, इंतज़ार का समय बढ़ जाता है बैकऑफ़ के लिए तय किया गया ज़्यादा से ज़्यादा समय. उदाहरण के लिए:
- Google Sheets API को अनुरोध भेजें.
- अगर अनुरोध फ़ेल हो जाता है, तो एक और
random_number_milliseconds
इंतज़ार करें और फिर से कोशिश करें अनुरोध किया है. - अगर अनुरोध पूरा नहीं होता है, तो दो और
random_number_milliseconds
इंतज़ार करें. इसके बाद, फिर से कोशिश करें अनुरोध किया है. - अगर अनुरोध पूरा नहीं होता है, तो चार +
random_number_milliseconds
इंतज़ार करें और फिर से कोशिश करें अनुरोध किया है. - इसी तरह, एक
maximum_backoff
बार तक. - थोड़ा इंतज़ार करें और फिर से कोशिश करते रहें. इससे ज़्यादा बार कोशिश नहीं की जा सकती, लेकिन इंतज़ार न करें पुनर्प्रयासों के बीच की अवधि है.
कहां:
- आपको
min(((2^n)+random_number_milliseconds), maximum_backoff)
तक इंतज़ार करना पड़ सकता है, हर बार के लिए,n
को 1 से बढ़ाया गया. random_number_milliseconds
, मिलीसेकंड की कोई भी संख्या है जो या से कम है 1,000 के बराबर होनी चाहिए. इससे उन मामलों से बचने में सहायता मिलती है, जिनमें कई क्लाइंट के साथ सिंक किया गया है कुछ स्थितियों में सभी अनुरोध एक ही बार में किए जाते हैं लहरें. हर एक के बाद,random_number_milliseconds
की वैल्यू का फिर से हिसाब लगाया जाता है फिर से अनुरोध करें.- आम तौर पर,
maximum_backoff
की अवधि 32 या 64 सेकंड होती है. सही वैल्यू इस्तेमाल के उदाहरण पर निर्भर करता है.
क्लाइंट, maximum_backoff
समय तक पहुंचने के बाद भी फिर से कोशिश कर सकता है.
इस समय के बाद दोबारा कोशिश करने के लिए, बैकऑफ़ समय बढ़ाना ज़रूरी नहीं है. इसके लिए
उदाहरण के लिए, अगर कोई क्लाइंट maximum_backoff
के 64 सेकंड के समय का इस्तेमाल करता है, तो
तो क्लाइंट हर 64 सेकंड में फिर से कोशिश कर सकता है. कभी,
क्लाइंट को अनिश्चित समय तक फिर से कोशिश करने से रोकना चाहिए.
इस बात पर निर्भर करता है कि कितनी बार कोशिश की जा सकती है और कितनी बार कोशिश की जा सकती है, यह आपके इस्तेमाल के उदाहरण पर निर्भर करता है और नेटवर्क की स्थितियों के बारे में बताया गया है.
कीमत
Google Sheets API का इस्तेमाल बिना किसी शुल्क के किया जा सकता है. कोटा पार हो गया अनुरोध सीमाओं से अतिरिक्त शुल्क नहीं लिया जाता है और आपके खाते का बिल नहीं भेजा जाता है.
कोटा बढ़ाने का अनुरोध करें
अपने प्रोजेक्ट के संसाधन के इस्तेमाल के आधार पर, हो सकता है कि आप कोटा का अनुरोध करना चाहें बढ़ोतरी. सेवा खाते से किए जाने वाले एपीआई कॉल को एक खाता. कोटा बढ़ाने के लिए आवेदन करने से मंज़ूरी मिलने की गारंटी नहीं मिलती. लार्ज कोटा बढ़ाने के बाद मंज़ूरी मिलने में ज़्यादा समय लग सकता है.
सभी प्रोजेक्ट के कोटा एक जैसे नहीं होते. जैसे-जैसे Google Cloud का इस्तेमाल लगातार बढ़ता जा रहा है समय, आपका कोटा बढ़ाना पड़ सकता है. अगर आपको अपने समाचार संगठन के लिए, बढ़ा हुआ है, तो आप सक्रिय रूप से कोटा घटाने या बढ़ाने का अनुरोध करें कोटा पेज से पर जाकर, प्रोजेक्ट डाउनलोड करने की सुविधा मिलती है.
ज़्यादा जानकारी के लिए, इन संसाधनों को देखें:
- कोटा बढ़ाने के अनुरोधों के बारे में जानकारी
- अपने मौजूदा कोटा के इस्तेमाल और उसकी सीमाएं देखना
- कोटे की सीमा बढ़ाने का अनुरोध करना