PM2 ile Etkin Node.js Uygulama Yönetimi
Node.js, gerçek zamanlı uygulamalar ve mikroservis mimarileri için tercih edilen bir platformdur. Ancak, uygulamalarınızın sürekli çalışır durumda olmasını sağlamak, performansını izlemek ve potansiyel hatalardan hızlıca kurtulmak için güçlü bir araç gereklidir. İşte burada PM2 devreye girer.
PM2 Nedir?
PM2, Node.js uygulamalarını yönetmek için kullanılan bir işlem yöneticisidir. Uygulamalarınızı arka planda çalıştırmak, otomatik olarak yeniden başlatmak, uygulama loglarını yönetmek ve sistem kaynaklarını izlemek için kullanılır.
PM2’nin Öne Çıkan Özellikleri
- Otomatik Yeniden Başlatma: Uygulamanız beklenmedik bir şekilde çökerse, PM2 otomatik olarak yeniden başlatır.
- Yük Dengeleme: PM2, Node.js’in Cluster modunu kullanarak uygulamanızı ölçeklendirir ve yük dengeleme sağlar.
- Durum İzleme:
pm2 monit
komutu ile uygulamanızın CPU ve hafıza kullanımını izleyebilirsiniz. - Log Yönetimi: Uygulama loglarınızı kolayca yönetebilir ve hataları daha hızlı tespit edebilirsiniz.
PM2 Kurulumu
PM2’yi NPM (Node Package Manager) kullanarak global olarak kurabilirsiniz:
npm install pm2@latest -g
Bir Uygulamayı Başlatma
Bir Node.js uygulamasını PM2 ile başlatmak için aşağıdaki komutu kullanın:
shCopy code
pm2 start app.js --name "uygulamaAdı"
app.js
, başlatmak istediğiniz dosyanın adıdır ve --name
seçeneği uygulamanıza bir isim vermenizi sağlar.
Uygulamaları Listeleme ve Yönetme
Başlatılan uygulamaları listelemek için:
pm2 list
Belirli bir uygulamayı durdurmak, yeniden başlatmak veya silmek için:
pm2 stop uygulamaAdı
pm2 restart uygulamaAdı
pm2 delete uygulamaAdı
Uygulama Detaylarını Görüntüleme
pm2 describe uygulamaAdı
pm2 show myAp
pm2 monit
Logları Görüntüleme
Uygulamanızın loglarını görüntülemek için:
pm2 logs
veya
pm2 log
1
Belirli bir uygulamanın loglarını görüntülemek için pm2 logs uygulamaAdı
veya ID komutunu kullanabilirsiniz.
Sonuç
PM2, Node.js uygulamalarınızı yönetmek için güçlü ve esnek bir araçtır. Otomatik yeniden başlatma, yük dengeleme ve izleme özellikleriyle, uygulamalarınızın yüksek performansla ve kesintisiz olarak çalışmasını sağlar. PM2, geliştiricilere ve sistem yöneticilerine, üretim ortamındaki Node.js uygulamalarını kolayca yönetme ve izleme imkanı sunar.
[…] boyutu kontrolsüz bir şekilde artabilir. Nodejs Projelerimizi sunucuda yönetmek için PM2ye ihtiyaç duyduğumuzu daha önce bu yazımızda anlatmıştım. İşte şimdide PM2’nin logrotate modülü devreye girer, log dosyalarını […]