मुख्य सामग्री पर जाएं

प्रति सेकंड सीमाएँ

हर कॉल तीन श्रेणियों में से किसी एक की होती है। वह आपका कोटा और अपनी श्रेणी की प्रति सेकंड सीमा खर्च करती है: संख्याएँ प्लान पर निर्भर करती हैं — देखें प्लान और बिलिंग। सीमाएँ प्लान की होती हैं और उसके सभी एंडपॉइंट में साझा होती हैं। हर सीमा में एक सेकंड जितनी गुंजाइश होती है। उदाहरण के लिए, 30 WU/s के साथ एक बार में 30 WU तक गुज़र सकते हैं, और फिर सीमा 30 WU प्रति सेकंड की दर से भरती है। रीड तब तक अंदर जाने दी जाती है जब तक रीड सीमा में ज़रा भी जगह बची हो, और उसकी कीमत जवाब के बाद काटी जाती है: एक भारी रीड सीमा को शून्य से नीचे ले जा सकती है, और अगली रीड तब तक इंतज़ार करती हैं जब तक सीमा फिर से भर न जाए। ब्लॉक रेंज प्रति कॉल अधिकतम 10 ब्लॉक लौटाती है।

त्रुटि प्रारूप

अस्वीकृति एक JSON है, जिसमें Error में संदेश और मशीन द्वारा पढ़ा जा सकने वाला code होता है:
code का इस्तेमाल करें; संदेश बदल सकता है। अस्वीकृति में हमेशा code होता है। नोड की अपनी त्रुटियों में नहीं होता: java-tron code के बिना {"Error": "…"} लौटाता है, आमतौर पर स्टेटस 200 के साथ, और ऐसे जवाब का शुल्क किसी भी दूसरे जवाब की तरह लगता है — देखें कोटा इकाइयाँ। अस्वीकृतियों का शुल्क नहीं लगता और उनमें X-Node-API-WU नहीं होता, सिवाय method_not_found के, जिसमें X-Node-API-WU: 0 होता है। 429 और 503 अस्वीकृतियों में आमतौर पर Retry-After होता है।

अस्वीकृति कोड

gRPC पर यही कोड x-node-api-reason ट्रेलिंग मेटाडेटा में आते हैं, HTTP स्टेटस की जगह gRPC स्टेटस के साथ — देखें gRPC।

डिग्रेडेड मोड

जब Node API के लिए हमारा मुख्य नोड उपलब्ध नहीं होता या नेटवर्क से पीछे रह जाता है, तो सेवा रिज़र्व नोड पर चलती रहती है। उस दौरान:
  • जवाब दी गई कॉल में हेडर X-Node-API-Mode: degraded होता है (gRPC पर ट्रेलिंग मेटाडेटा x-node-api-mode: degraded);
  • प्रति सेकंड WU वाली आपकी रीड सीमा आधी हो जाती है; ब्लॉक कॉल और ब्रॉडकास्ट की सीमाएँ पहले जैसी रहती हैं;
  • ताज़ा ब्लॉक — हेड से 20 के भीतर — और उनकी रसीदें हमेशा की तरह मिलती हैं, जबकि पुराने ब्लॉक, उनकी रसीदें और ब्लॉक रेंज 503 degraded के साथ अस्वीकार होते हैं;
  • साझा क्षमता कम होती है, इसलिए 503 capacity की संभावना ज़्यादा होती है।
ब्रॉडकास्ट में कभी कटौती नहीं होती। सामान्य मोड अपने आप लौट आता है; आपको कुछ करने की ज़रूरत नहीं। अगर आपका ऐप पुराने ब्लॉक पढ़ता है, तो हेडर मौजूद रहने तक वह काम रोक दें और हेडर हटने पर फिर शुरू करें।

दोबारा कोशिश करना

  • 429 rate_read, rate_block, rate_write, trials और हर 503: Retry-After में दिए गए सेकंड तक इंतज़ार करें, फिर दोबारा कोशिश करें।
  • 429 quota और 429 overage_budget: इंतज़ार से मदद नहीं मिलती। बैलेंस टॉप अप करें या प्लान बदलें।
  • 502 node_error: दोबारा कोशिश करें। वही साइन किया हुआ ट्रांज़ैक्शन दोबारा भेजना सुरक्षित है — नेटवर्क किसी ट्रांज़ैक्शन ID को केवल एक बार निष्पादित करता है।
  • अन्य 4xx: रिक्वेस्ट ठीक करें; उसे दोहराने पर वही जवाब मिलेगा।