- API सर्वर को Hono, runtime को Bun, और hosting को Fly.io पर शिफ्ट किया
माइग्रेट करने के कारण
- हल्के server की ज़रूरत: हमें monitoring endpoint के लिए एक simple REST API वाला lightweight server चाहिए था। Vercel का Next.js server अनावश्यक अतिरिक्त features के साथ आता है और ज्यादा भारी है। इसलिए Hono और Bun का उपयोग किया। startup time 0.19ms और memory 91MB
- कीमत की समस्या: multi-region monitoring बनाए रखते हुए लागत का अनुमान लगाना मुश्किल था। Vercel सिर्फ उपयोग किए गए CPU time के लिए charge करता है, लेकिन users बढ़ने के साथ लागत भी बढ़ती है। दूसरी ओर, Fly.io अधिक सस्ता है
माइग्रेशन के दौरान चुनौतियाँ
- Docker और monorepo: शुरुआत में Docker image 2GB तक बहुत बड़ी थी, लेकिन optimization के बाद इसे 700MB तक घटाया गया
- Fly deployment timeout समस्या: Fly deployment अक्सर timeout हो जाते थे, इसलिए timeout बढ़ाना पड़ा। Vercel की तुलना में Fly deployment कम stable हैं, और पिछले version पर जल्दी rollback करने का कोई तरीका नहीं है
- Bun bug: Bun runtime इस्तेमाल करने पर request failures बढ़ गए, इसलिए
keepalive parameter को false पर सेट करना पड़ा
निष्कर्ष
- माइग्रेशन चुनौतीपूर्ण था, लेकिन आखिरकार परिणाम संतोषजनक रहा।
- बेशक, Vercel अभी भी पसंद है। लेकिन अगर Next.js के अलावा किसी और application की hosting चाहिए, तो यह सबसे अच्छा विकल्प नहीं हो सकता
अभी कोई टिप्पणी नहीं है.