Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

CARA MENANGANI SIGNAL `SIGINT` DI NODE.JS

Pelajari cara sederhana menangani sinyal `SIGINT` di Node.js untuk menghentikan aplikasi dengan aman ketika pengguna menekan Ctrl+C.

Jika kamu bekerja dengan Node.js, kamu mungkin perlu menangani situasi ketika pengguna menekan Ctrl+C. Ini mengirimkan sinyal SIGINT ke aplikasi, dan dengan menangani sinyal ini, kamu dapat memastikan aplikasi berhenti dengan aman.

Cara Menangani SIGINT

Untuk mengelola sinyal SIGINT, kamu harus menggunakan fungsi global process di Node.js. Ini memungkinkan kamu untuk mendeteksi sinyal yang dikirim ke aplikasi.

Langkah-langkahnya

  1. Tangkap Sinyal SIGINT:

    Kamu bisa menangkap sinyal SIGINT dengan menambahkan event listener pada process:

    process.on('SIGINT', () => {
        console.log('Sinyal SIGINT diterima. Menghentikan aplikasi...');
        process.exit();
    });

    Dengan kode ini, ketika pengguna menekan Ctrl+C, pesan akan ditampilkan, dan aplikasi akan berhenti.

  2. Bersihkan Sumber Daya Sebelum Keluar:

    Sebelum aplikasi berhenti, kamu mungkin perlu membersihkan beberapa sumber daya seperti koneksi database atau file. Tambahkan kode pembersihan di dalam event listener tersebut:

    process.on('SIGINT', () => {
        console.log('Sinyal SIGINT diterima. Membersihkan sumber daya...');
        // Contoh: Tutup koneksi database
        // database.close();
        process.exit();
    });

    Ini memastikan bahwa semua resource telah dikeluarkan dengan bersih sebelum aplikasi berhenti.

Pertimbangan Lain

  • Penggunaan process.exit():

    Gunakan process.exit() dengan hati-hati. Ini secara langsung menghentikan aplikasi. Pastikan semua proses penting telah selesai sebelum memanggil fungsi ini.

  • Pengujian Kode:

    Adalah ide bagus untuk menguji kode kamu dalam berbagai situasi untuk memastikan pembersihan sumber daya bekerja seperti yang diharapkan. Gunakan dev environment atau dummy resource jika memungkinkan.

Sekarang kamu siap untuk menangani sinyal SIGINT di aplikasi Node.js kamu dengan lebih baik, membuatnya lebih andal dan terkontrol.


Daftar newsletter skodev masukkan emailmu untuk dapat informasi menarik dari dunia koding