All Products
Search
Document Center

Platform For AI:Pembaruan Bergulir dan Shutdown yang Mulus

Last Updated:Mar 03, 2026

Restart atau pembaruan sebagian parameter pada layanan EAS memicu pembaruan bergulir. Strategi rilis ini secara bertahap menggantikan replika lama dengan yang baru, memungkinkan peningkatan versi tanpa downtime sekaligus menjaga ketersediaan tinggi.

Pembaruan Bergulir

Selama pembaruan, sistem membuat replika baru berdasarkan konfigurasi Anda dan menggantikan replika lama satu per satu. Jika replika baru gagal dijalankan, pembaruan akan dihentikan. Replika yang gagal tidak menerima traffic, sedangkan replika lama yang tersisa terus melayani permintaan sehingga aplikasi Anda tetap tersedia. Anda dapat melakukan rollback atau memulai pembaruan baru. Pembaruan baru secara otomatis membersihkan replika gagal dari pembaruan sebelumnya yang belum selesai.

Dua parameter utama mengatur perilaku pembaruan bergulir:

  • Exceeds the expected number of replicas (parameter JSON: rolling_strategy.max_surge)

    • Description: Jumlah maksimum replika tambahan yang dapat dibuat selama pembaruan. Nilai ini dapat diatur sebagai bilangan bulat positif atau persentase. Nilai yang lebih besar mempercepat proses pembaruan.

    • Example: Untuk 100 replika, mengatur nilai ini ke 20 akan langsung memulai 20 replika baru.

    • Default value: 2% dari total jumlah replika (minimum 1).

    Penting

    Nilai Exceeds the expected number of replicas yang terlalu besar menyebabkan banyak replika baru online sekaligus dan langsung menggantikan jumlah replika lama yang setara. Jika replika baru belum dipanaskan (prewarmed), lonjakan traffic mendadak dapat mengganggu stabilitas layanan.

  • Maximum Unavailable Replicas (parameter JSON: rolling_strategy.max_unavailable)

    • Description: Jumlah maksimum replika yang boleh tidak tersedia selama pembaruan. Parameter ini membebaskan sumber daya dan mencegah pembaruan macet akibat kekurangan sumber daya.

    • Example: Atur nilai ini ke N. Saat pembaruan dimulai, sistem langsung menghentikan N replika lama.

    • Default value:

      • Kelompok sumber daya Dedicated: Untuk layanan yang dibuat sebelum 1 September 2025, nilai default-nya adalah 1. Untuk layanan yang dibuat pada atau setelah 1 September 2025, nilai default-nya adalah 0 jika kolam sumber daya elastis diaktifkan, atau 1 jika tidak diaktifkan.

      • Kelompok sumber daya Public: 0.

      • Kuota Lingjun Intelligent Computing: Untuk layanan yang dibuat sebelum 1 September 2025, nilai default-nya adalah 0. Untuk layanan yang dibuat pada atau setelah 1 September 2025, nilai default-nya adalah 2% dari jumlah replika (minimum 1).

    Penting
    • Jika Anda mengatur Maximum Unavailable Replicas ke 1 untuk layanan dengan satu replika, replika lama akan dihentikan sebelum replika baru dimulai. Selama jeda ini, tidak ada replika yang tersedia sehingga layanan Anda mengalami gangguan singkat.

    • Jika Maximum Unavailable Replicas terlalu besar, terlalu banyak replika offline sekaligus sehingga replika yang tersisa mungkin tidak mampu menangani seluruh traffic. Hal ini mengurangi ketersediaan layanan.

Shutdown yang Mulus

Pengaturan shutdown yang mulus memengaruhi stabilitas replika selama pembaruan bergulir.

  • Graceful Shutdown Time (parameter JSON: eas.termination_grace_period)

    • Description: Waktu dalam detik yang ditunggu sebelum mematikan replika. Setelah replika memasuki status Terminating, traffic tidak lagi diarahkan kepadanya. Sistem menunggu selama 30 detik agar replika menyelesaikan permintaan yang sedang diproses sebelum dimatikan. Jika permintaan memerlukan waktu lebih lama, naikkan nilai ini.

    • Default value: 30.

    Penting

    Mengatur nilai ini terlalu rendah mengganggu stabilitas layanan, sedangkan mengatur terlalu tinggi memperlambat pembaruan. Jangan mengonfigurasi nilai ini kecuali benar-benar diperlukan.

  • Send SIGTERM (parameter JSON: rpc.enable_sigterm)

    • Description: SIGTERM adalah sinyal untuk menghentikan proses. Nilai JSON yang valid adalah true atau false.

      • false: Sistem tidak mengirim SIGTERM saat replika dimatikan.

      • true: Sistem langsung mengirim SIGTERM. Proses utama Anda harus menangani sinyal ini dan menerapkan logika shutdown yang mulus secara kustom. Jika tidak, proses mungkin langsung keluar dan melewatkan shutdown yang mulus.

    • Default value: false (tidak dikirim).

SIGTERM tidak dikirim secara default. Kontainer aplikasi tidak menangkap SIGTERM secara default. Jika menerima sinyal tersebut, proses akan langsung keluar sehingga mengganggu shutdown yang mulus dan merugikan aplikasi Anda.

Aktifkan SIGTERM untuk layanan dengan durasi permintaan yang sangat bervariasi. Misalnya, jika permintaan memerlukan waktu dari beberapa detik hingga 30 menit, periode tenggang tetap selama 30 menit akan memperlambat pembaruan. Dalam kasus ini, kontainer Anda harus menangani SIGTERM, menyelesaikan permintaan yang sedang berjalan, lalu keluar. Pendekatan ini memberikan kontrol shutdown yang lebih fleksibel.

Layanan inferensi asinkron tidak perlu mengaktifkan SIGTERM. Lapisan kontrol EAS secara otomatis merespons SIGTERM saat replika dimatikan. Lapisan tersebut berhenti menerima permintaan baru dan menunggu permintaan yang sedang berjalan selesai sebelum mengakhiri replika.