Pada hari kedua, pengembangan berfokus pada arsitektur backend yang tangguh dengan membangun Build Queue System. Sistem antrean ini menjadi komponen krusial untuk mengelola banyaknya permintaan build Docker image secara bersamaan, memastikan stabilitas server dan alokasi sumber daya yang efisien.
Beberapa hal yang dilakukan pada tahap ini antara lain:
- Mengimplementasikan message broker berbasis Redis untuk menerima dan menyimpan semua permintaan build ke dalam sebuah antrean (queue) yang persisten.
- Membangun worker service terpisah yang bertugas mengambil pekerjaan dari antrean (dequeue) dan mengeksekusinya satu per satu, mencegah lonjakan beban CPU.
- Mendesain mekanisme retry otomatis dengan exponential backoff untuk build yang gagal karena masalah sementara (transient failures).
- Membuat API endpoint untuk mengecek status antrean, termasuk posisi sebuah build dalam antrean dan estimasi waktu tunggu.
- Memastikan setiap worker melaporkan kemajuan dan hasil build (sukses atau gagal) kembali ke database utama untuk dicatat dalam history.
Dengan adanya Build Queue System yang solid, platform tidak akan lagi mengalami timeout atau kegagalan masif saat banyak pengguna melakukan build secara simultan, menjamin pengalaman yang andal dan responsif.

0 Komentar