Menjalankan NodeJS App dengan PM2
Node.js telah menjadi salah satu teknologi yang paling populer dalam pengembangan aplikasi web. Namun, semakin kompleksnya aplikasi membutuhkan manajemen proses yang lebih baik. Di sinilah PM2, atau Process Manager 2, hadir sebagai alat yang sangat berguna untuk membantu pengembang dalam manajemen proses Node.js dengan lebih efisien.
Apa itu PM2?
PM2 merupakan manajer proses produksi Node.js yang memungkinkan pengguna untuk menjalankan aplikasi Node.js dalam lingkungan produksi. Kelebihan PM2 terletak pada kemampuannya dalam mengelola proses, memantau performa, dan memperbarui aplikasi tanpa adanya downtime.
Fitur-fitur Utama PM2:
- Manajemen Proses yang Efisien: Memulai, menghentikan, dan mengelola proses aplikasi Node.js dengan mudah.
- Pemantauan Performa Aplikasi: Statistik performa seperti penggunaan CPU, memori, dan log aplikasi yang terkumpul.
- Pemulihan Otomatis saat Terjadi Kegagalan: Memulai ulang aplikasi secara otomatis saat terjadi crash.
- Skalabilitas dengan Fitur Clustering: Menjalankan beberapa instance aplikasi untuk menyeimbangkan beban.
- Manajemen Log yang Efisien: Akses log dari setiap proses yang berjalan secara terstruktur.
Sebelumnya: Menjalankan NodeJS App dengan Immortal
Sebelumnya, ada artikel yang membahas cara menjalankan aplikasi Node.js dengan menggunakan Immortal. Immortal merupakan alat manajemen proses serupa yang memiliki beberapa fitur mirip dengan PM2. Artikel ini membahas penggunaan dan kelebihan Immortal dalam mengelola aplikasi Node.js secara efektif.
Menjalankan NodeJS App dengan Immortal
Persiapan Sebelum Menggunakan PM2
Pastikan Node.js terinstal dengan benar dan pahami struktur dasar aplikasi Node.js yang akan dijalankan menggunakan PM2.
Instalasi dan Penggunaan Awal PM2
Langkah pertama adalah menginstal PM2 secara global pada sistem dengan perintah:
1
npm install pm2 -g
Verifikasi apakah PM2 sudah terpasang:
1
pm2 --version
Memulai Aplikasi Node.js dengan PM2
Untuk menjalankan aplikasi menggunakan PM2, gunakan perintah berikut untuk file aplikasi app.js
:
1
pm2 start app.js
PM2 akan memberikan nomor ID unik untuk proses aplikasi. Anda juga dapat menyesuaikan konfigurasi seperti jumlah instance dan nama proses yang dijalankan.
Konfigurasi Lanjutan dengan Ekosistem PM2
PM2 memiliki fitur ekosistem yang memungkinkan konfigurasi yang lebih kompleks seperti pengaturan environment, log, dan lainnya. Contoh file konfigurasi ekosistem PM2 (ecosystem.config.js
) dapat diberikan.
Contoh File Ecosystem PM2 (ecosystem.config.js
):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
module.exports = {
apps: [
{
name: "app",
script: "app.js",
instances: "max",
autorestart: true,
watch: true,
max_memory_restart: "1G",
env: {
NODE_ENV: "development"
},
env_production: {
NODE_ENV: "production"
}
}
]
};
Dengan file konfigurasi ekosistem ini, Anda dapat menjalankan aplikasi dengan perintah:
1
pm2 start ecosystem.config.js
Monitoring Performa dengan PM2
Untuk memantau performa aplikasi, gunakan perintah:
1
pm2 monit
Antarmuka monitor PM2 di terminal akan menampilkan statistik performa aplikasi secara real-time.
Kesimpulan
PM2 menjadi alat yang efisien dalam manajemen proses Node.js, memungkinkan pengembang fokus pada pengembangan tanpa khawatir akan manajemen proses yang rumit. Ini membantu meningkatkan stabilitas dan kinerja aplikasi Node.js dalam lingkungan produksi.
Dengan PM2, manajemen aplikasi Node.js menjadi lebih sederhana dan efisien. Fitur-fitur canggihnya memungkinkan pengelolaan yang lebih baik, yang mendukung stabilitas aplikasi dan produktivitas pengembang.
Daftar Referensi
PM2 membantu pengelolaan aplikasi Node.js dengan lancar dan efisien. Artikel ini membahas langkah-langkah penggunaan PM2 sebagai alternatif dalam manajemen aplikasi Node.js.