“प्रति सेकंड बिलिंग” उन वाक्यों में से है जो पूरे लगते हैं, पर होते नहीं। इसके पीछे कई फ़ैसले होते हैं जो तय करते हैं कि आप कितना भुगतान करेंगे: क्या मापा जा रहा है, घड़ी कब शुरू और बंद होती है, कोई न्यूनतम शुल्क है या नहीं, सेंट के टुकड़ों का क्या होता है, और पैसा असल में कब आपके बैलेंस से कटता है।
इस लेख में हम कोड सैंडबॉक्स के लिए अपने जवाब, हिसाब के साथ, लिख रहे हैं। मक़सद यह है कि कुछ भी चलाने से पहले आप बिल का अनुमान सेंट तक लगा सकें, और पहचान सकें कि कब प्रति-सेकंड बिलिंग आपके वर्कलोड के लिए ग़लत मॉडल है।
इकाई: रिज़र्व किए गए vCPU और RAM
सैंडबॉक्स की कीमत उन संसाधनों की कीमत है जो उसका टैरिफ़ रिज़र्व करता है:
- $0.040 प्रति vCPU-घंटा
- $0.013 प्रति GiB RAM प्रति घंटा
इसलिए small टैरिफ़ (0.5 vCPU, 1 GB) की कीमत 0.5 × 0.040 + 1 × 0.013 = $0.033 प्रति घंटा है, यानी लगभग $0.0000092 प्रति सेकंड। सबसे बड़ा, max (8 vCPU, 16 GB), $0.528 प्रति घंटा का है।
हम खपत नहीं, रिज़र्वेशन मापते हैं। अगले कमांड का इंतज़ार कर रहा सैंडबॉक्स प्रति सेकंड उतना ही खर्च करता है जितना कोई प्रोजेक्ट कंपाइल कर रहा सैंडबॉक्स। असली CPU मापना काग़ज़ पर ज़्यादा न्यायसंगत लगता, लेकिन तब कीमत पहले से जानना नामुमकिन हो जाता, और क्षमता तो वैसे भी आपके लिए रखी रहती है। आउटबाउंड ट्रैफ़िक का बिल नहीं बनता।
घड़ी: बनने से हटने तक
अस्थायी सैंडबॉक्स का बिल उसके बनने के पल से हटाए जाने तक बनता है। इसमें वह समय भी शामिल है जब वह खाली बैठा रहता है, जब तक idle timeout उसे हटा न दे — डिफ़ॉल्ट रूप से 300 सेकंड।
ज़्यादातर हैरानियाँ यहीं से आती हैं। दो मिनट की स्क्रिप्ट, ऐसे सैंडबॉक्स में जिसे कोई नहीं हटाता, सात मिनट का बिल बनाती है: दो मिनट काम और पाँच मिनट timeout का इंतज़ार। उपाय उबाऊ है: काम ख़त्म होते ही सैंडबॉक्स हटा दें (SDK का with ब्लॉक यह आपके लिए कर देता है) या idle timeout घटा दें।
न्यूनतम: हर सैंडबॉक्स के लिए 60 सेकंड
हर अस्थायी सैंडबॉक्स का बिल उसकी उम्र के कम से कम 60 सेकंड का बनता है। microVM शुरू करना, उसकी डिस्क और नेटवर्क जोड़ना और फिर सब कुछ हटाना, इसकी लागत एक जैसी रहती है, चाहे अंदर का कोड एक सेकंड चले या पचास।
| उम्र | टैरिफ़ | बिल किया गया | लागत |
|---|---|---|---|
| 20 से. | small | 60 से. | $0.00055 |
| 61 से. | small | 61 से. | $0.00056 |
| 10 मि. | small | 600 से. | $0.0055 |
| 3 घं. | standard | 10,800 से. | $0.198 |
न्यूनतम शुल्क एक ही बार लगता है, जब सैंडबॉक्स ख़त्म होता है, और सिर्फ़ तभी जब उसकी कुल उम्र 60 सेकंड से कम रही हो। इसके ऊपर प्रति घंटा या प्रति कमांड कोई अतिरिक्त न्यूनतम शुल्क नहीं है।
जमा और कटौती: माइक्रो-डॉलर और पूरे सेंट
यह वह हिस्सा है जो “प्रति सेकंड” आम तौर पर नहीं बताता। सैंडबॉक्स होस्ट उपयोग को घंटे-घंटे के बकेट में दर्ज करता है, हर सैंडबॉक्स का एक। हर मिनट बिलिंग जॉब बंद हो चुके बकेट इकट्ठा करता है, उनकी कीमत लगाता है और बैलेंस से कटौती करता है।
कीमत डॉलर के दस लाखवें हिस्से में लगती है। कटौती पूरे सेंट में होती है। एक सेंट से कम जो बचता है वह आपके खाते में रहता है और अगली कटौती में जुड़ जाता है; न प्रति सैंडबॉक्स, न प्रति घंटा, कुछ भी ऊपर राउंड नहीं होता।
छोटे पैमाने पर इससे फ़र्क़ पड़ता है। सौ सैंडबॉक्स, हर एक 20 सेकंड का, कुल 100 × $0.00055 = $0.055 जोड़ते हैं। आपसे पाँच सेंट कटते हैं, और आधा सेंट अगले बैच का इंतज़ार करता है। अगर हर सैंडबॉक्स एक सेंट तक राउंड होता, तो यही काम एक डॉलर का पड़ता।
दो और बातें जानने लायक हैं:
- हर बकेट का शुल्क ठीक एक बार लगता है। उपयोग का रिकॉर्ड और कटौती एक ही डेटाबेस ट्रांज़ैक्शन में लिखे जाते हैं, सैंडबॉक्स और घंटे की कुंजी के साथ। दोबारा चलना या खोई पुष्टि दो बार शुल्क नहीं लगा सकती।
- रुकावटें शुल्क को टालती हैं, खोती या दोहराती नहीं। अगर बिलिंग पक्ष सैंडबॉक्स होस्ट तक नहीं पहुँच पाता, तो कुछ भी पुष्ट नहीं होता, बकेट इंतज़ार करते हैं, और कनेक्शन लौटने पर उनका शुल्क लगता है।
इसका नतीजा यह है कि डैशबोर्ड लाइव आँकड़े से एक घंटे तक पीछे रह सकता है। लाइव आँकड़े के लिए GET /sandboxes/{id}/usage उस सैंडबॉक्स का अब तक का billed_usd और estimated_total_usd लौटाता है।
Persistent सैंडबॉक्स: हर शुरू हुए घंटे के हिसाब से, एक सीमा के साथ
Persistent सैंडबॉक्स सत्रों के बीच अपनी डिस्क रखते हैं, 30 दिन तक। इनका बिल हर शुरू हुए घंटे के हिसाब से बनता है: 61 मिनट यानी दो घंटे। बदले में, एक कैलेंडर महीना (UTC) कभी भी 730 घंटे घटा 25% से ज़्यादा का नहीं पड़ता।
standard टैरिफ़ के लिए यह सीमा $48.18 के बजाय $36.14 प्रति माह है। जब persistent सैंडबॉक्स रुका (pause) होता है, तब उसका बिल बिल्कुल नहीं बनता।
जब बैलेंस ख़त्म हो जाए
बैलेंस कभी शून्य से नीचे नहीं जाता। नए सैंडबॉक्स 402 insufficient_balance के साथ अस्वीकार हो जाते हैं। पहले से चल रहे अस्थायी सैंडबॉक्स अपने idle timeout या TTL पर ख़त्म हो जाते हैं। Persistent सैंडबॉक्स 24 घंटे तक टॉप-अप न होने पर रुक जाते हैं और पैसे जोड़ने पर अपने आप फिर शुरू हो जाते हैं। रुके हुए स्नैपशॉट 14 दिन रखे जाते हैं। उसके बाद सैंडबॉक्स मिट जाता है और उसकी id 410 sandbox_deleted लौटाती है।
अगर कोई AI एजेंट आपके लिए सैंडबॉक्स बनाता है, तो दैनिक और मासिक सीमा तय करें। सीमा पर पहुँचने पर रीसेट के समय के साथ 429 budget_exceeded लौटता है, जिस पर कोई प्रोग्राम कार्रवाई कर सकता है।
प्रति-सेकंड बिलिंग कहाँ हारती है
प्रति-सेकंड बिलिंग सेकंडों और मिनटों में मापे जाने वाले काम के लिए बेहतरीन है। काम जितना लंबा चलता है, यह उतनी ही कमज़ोर पड़ती है।
| वर्कलोड | प्रति-सेकंड सैंडबॉक्स | विकल्प |
|---|---|---|
| 2 मिनट का टेस्ट | $0.0011 (small) | घंटे के हिसाब से बिल होने वाली मशीन पूरे घंटे का शुल्क लेती है |
| 3 घंटे का बैच जॉब | $0.198 (standard) | लगभग उतना ही |
| 24/7 चलने वाली सेवा | $36.14/माह (standard, persistent सीमा) | AI agent VPS: 4 vCPU, 4 GB, $10/माह |
संतुलन बिंदु मोटे तौर पर वहाँ है जहाँ कोई वर्कलोड दिन में कुछ घंटों से ज़्यादा चलता है। उसके बाद आप ऐसे लचीलेपन के लिए भुगतान कर रहे होते हैं जिसका इस्तेमाल नहीं करते, और महीने भर के लिए किराए पर लिया सर्वर प्रति घंटे काफ़ी सस्ता पड़ता है। प्रति-सेकंड बिलिंग को छूट नहीं, बल्कि क्षमता की योजना न बनाने की कीमत मानना ही सही नज़रिया है।
जल्दी अनुमान लगाने का तरीक़ा
टैरिफ़ की प्रति घंटा कीमत × सैंडबॉक्स जितने सेकंड मौजूद रहेगा ÷ 3600, न्यूनतम 60 सेकंड। अगर आप ख़ुद नहीं हटाएँगे, तो idle timeout जोड़ दें। Persistent सैंडबॉक्स के लिए हर सत्र को पूरे घंटों तक ऊपर राउंड करें और मासिक सीमा पर रुक जाएँ।
सभी नियम, कोटा और बजट API सैंडबॉक्स की सीमाएँ और बिलिंग में हैं; ऊपर इस्तेमाल हुई कॉल SDK संदर्भ में। अगर आप सोच रहे हैं कि आप प्रति सेकंड असल में क्या किराए पर ले रहे हैं, तो Firecracker microVM आसान भाषा में यह समझाता है, और AI एजेंटों को इन्फ्रास्ट्रक्चर से असल में क्या चाहिए बताता है कि जब मशीनें लोग नहीं बल्कि सॉफ़्टवेयर बनाता है, तब बिलिंग मॉडल इतना मायने क्यों रखता है।
टिप्पणियाँ
अभी तक कोई टिप्पणी नहीं। पहले बनें।