- Server API beralih ke Hono, runtime ke Bun, dan hosting ke Fly.io
Alasan migrasi
- Butuh server ringan: Kami menginginkan server ringan dengan REST API sederhana untuk endpoint pemantauan. Server Next.js di Vercel memiliki fitur tambahan yang tidak diperlukan dan lebih berat. Kami menggunakan Hono dan Bun. Startup dalam 0.19ms & memori 91MB
- Masalah harga: Sulit memprediksi biaya sambil mempertahankan pemantauan multi-region. Vercel hanya menagih berdasarkan waktu CPU yang digunakan, tetapi biayanya meningkat seiring pertumbuhan pengguna. Sebaliknya, Fly.io lebih murah
Tantangan selama migrasi
- Docker dan monorepo: Awalnya image Docker mencapai 2GB dan terlalu besar, tetapi setelah optimasi berhasil dikurangi menjadi 700MB
- Masalah timeout deploy di Fly: Deploy Fly sering mengalami timeout sehingga kami harus menaikkan batas waktunya. Deploy di Fly kurang stabil dibanding Vercel, dan tidak ada cara cepat untuk rollback ke versi sebelumnya
- Bug Bun: Saat menggunakan runtime Bun, kegagalan request meningkat, sehingga parameter
keepalive harus disetel ke false
Kesimpulan
- Migrasi ini menantang, tetapi pada akhirnya memuaskan.
- Tentu saja kami masih menyukai Vercel. Namun, jika Anda perlu meng-host aplikasi selain Next.js, ini mungkin bukan pilihan yang optimal
Belum ada komentar.