4 Manajer Proses untuk Node.Aplikasi JS di Linux

4 Manajer Proses untuk Node.Aplikasi JS di Linux

A Node.JS Process Manager adalah alat yang berguna untuk memastikan bahwa a Node.JS Proses atau skrip berjalan terus menerus (selamanya) dan dapat memungkinkannya untuk memulai secara otomatis di boot sistem.

Ini memungkinkan Anda untuk memantau layanan yang sedang berjalan dan memfasilitasi tugas administrasi sistem umum (seperti memulai kembali kegagalan, berhenti, memuat kembali konfigurasi tanpa downtime, memodifikasi variabel/pengaturan lingkungan, menunjukkan metrik kinerja dan banyak lagi). Ini juga mendukung pencatatan aplikasi, pengelompokan, dan penyeimbangan beban, dan begitu banyak fitur manajemen proses yang berguna lainnya.

Baca juga: 14 Kerangka Nodej Terbaik untuk Pengembang di 2019

Seorang manajer paket berguna terutama untuk penempatan Node.JS aplikasi di lingkungan produksi. Di artikel ini, kami akan meninjau empat manajer proses untuk Node.JS Manajemen Aplikasi dalam Sistem Linux.

1. PM2

PM2 adalah open-source, canggih, kaya fitur, lintas platform, dan manajer proses tingkat produksi yang paling populer untuk Node.JS dengan penyeimbang beban bawaan. Ini memungkinkan Anda untuk mendaftar, memantau, dan bertindak pada semua yang diluncurkan NodeJS proses, dan mendukung mode cluster.

Instal PM2 untuk menjalankan aplikasi NodeJS di Linux

Ini mendukung pemantauan aplikasi: menawarkan cara sederhana untuk memantau penggunaan sumber daya (memori dan CPU) dari aplikasi Anda. Ini mendukung alur kerja manajemen proses Anda dengan memungkinkan Anda untuk mengonfigurasi dan menyetel perilaku setiap aplikasi melalui file proses (format yang didukung termasuk Javascript, Json, Dan Yaml).

Log aplikasi selalu menjadi kunci dalam lingkungan produksi, dalam hal ini PM2 memungkinkan Anda untuk dengan mudah mengelola log aplikasi Anda. Ini memberikan berbagai cara dan format untuk masing -masing menangani dan menampilkan log. Anda dapat menampilkan log secara real-time, menyiramnya, dan memuat ulang saat dibutuhkan.

Penting, PM2 Mendukung skrip startup yang dapat Anda konfigurasikan untuk memulai proses Anda di seluruh mesin yang diharapkan atau tidak terduga restart. Ini juga mendukung auto-restart suatu aplikasi ketika file dimodifikasi dalam direktori saat ini atau sub-direktorinya.

Selain itu, PM2 Dilengkapi dengan sistem modul yang memungkinkan pengguna untuk membuat modul khusus untuk manajemen proses nodeJS. Misalnya, Anda dapat membuat modul untuk modul rotasi log atau penyeimbangan beban, dan banyak lagi.

Terakhir, jika Anda menggunakan wadah Docker, PM2 memungkinkan untuk integrasi kontainer, dan menawarkan sistem API yang memungkinkan Anda menggunakannya secara terprogram.

2. PM Strongloop

PM Strongloop juga merupakan manajer proses produksi open-source dan canggih untuk Node.JS Aplikasi dengan balancing beban bawaan sama seperti PM2 dan dapat digunakan melalui baris perintah atau antarmuka grafis.

Strongloop PM Process Manager untuk NodeJS

Ini mendukung pemantauan aplikasi (lihat metrik kinerja seperti waktu loop peristiwa, konsumsi CPU dan memori), penyebaran multi-host, mode cluster, aplikasi nol-downtime restart dan peningkatan, proses otomatis restart pada kegagalan, dan agregasi log dan manajemen.

Selanjutnya, ia dikirimkan dengan Buruh pelabuhan Dukungan, memungkinkan Anda untuk mengekspor metrik kinerja ke server yang kompatibel dengan StatSD, dan tampilan dalam konsol pihak ke-3 seperti Datadog, Grafit, Splunk serta Syslog dan file log mentah.

3. Selamanya

Forever adalah alat antarmuka barisan open-source, sederhana dan dapat dikonfigurasi untuk menjalankan skrip yang diberikan secara terus menerus (selamanya). Itu cocok untuk menjalankan penyebaran yang lebih kecil Node.JS aplikasi dan skrip. Anda dapat gunakan selamanya dalam dua cara: melalui baris perintah atau dengan menanamkannya dalam kode Anda.

Selamanya jalankan skrip terus menerus

Ini memungkinkan Anda untuk mengelola (Mulai, Daftar, Berhenti, Berhenti Semua, Restart, Restart semua, dll ...) Node.JS proses dan mendukung menonton perubahan file, mode debug, log aplikasi, membunuh suatu proses dan keluar kustomisasi sinyal, dan banyak lagi. Selain itu, ini mendukung beberapa opsi penggunaan yang dapat Anda lewati langsung dari baris perintah atau lukiskannya dalam file JSON.

4. Systemd - Manajer Layanan dan Sistem

Di Linux, SystemD adalah daemon yang mengelola sumber daya sistem seperti proses dan komponen lain dari sistem file. Sumber daya apa pun yang dikelola oleh Systemd dikenal sebagai a satuan. Ada berbagai jenis unit termasuk layanan, perangkat, soket, pemasangan, target dan banyak unit lainnya.

Systemd mengelola unit melalui file konfigurasi yang dikenal sebagai a satuan mengajukan. Oleh karena itu, untuk mengelola Anda Node.JS Server seperti layanan sistem lainnya, Anda perlu membuat untuk file unit, yang dalam hal ini akan menjadi file layanan.

Setelah Anda membuat file layanan untuk Anda Node.JS Server, Anda dapat memulainya, mengaktifkannya untuk memulai secara otomatis pada waktu boot sistem, memeriksa statusnya, memulai kembali (berhenti dan mulai lagi) atau memuat ulang konfigurasinya, dan bahkan menghentikannya seperti layanan SystemD lainnya.

Untuk informasi lebih lanjut, lihat: Cara membuat dan menjalankan unit layanan baru di SystemD menggunakan skrip shell

Ringkasan

A Node.JS Paket Manajer adalah alat yang berguna untuk menggunakan proyek Anda di lingkungan produksi. Itu membuat aplikasi tetap hidup selamanya dan menyederhanakan bagaimana Anda bisa mengendalikannya. Di artikel ini, kami meninjau empat manajer paket untuk Node.JS. Jika Anda memiliki tambahan atau pertanyaan untuk diajukan, gunakan formulir umpan balik di bawah ini untuk menghubungi kami.