PM2 / Keymetrics

Am încercat și nodemon/forever pentru a porni aplicații nodejs, dar cel mai mult îmi place pm2. Pm2 știe să facă clustering cu load balancer (pentru a folosii mai multe cpu-uri), are și API, are și ceva interfețe web 3rd party: pm2-web, pm2-gui, și cea mai importantă și interesantă parte din pm2 este Keymetrics, care este un SaaS ce oferă o interfață web foarte interesantă (în principal pentru monitorizare).

În aplicație puteți emite evenimente, puteți seta niște funcții pe care să le declanșați din interfața web, puteți trimite erorile în interfața web, puteți analiza lantența conexiunii, puteți măsura tot felu de metrici, countere, evenimente pe interval, histogramă, și puteți face multe chestii interesante.

Instalați pm2 prin npm, faceți un cont pe keymetrics, conectați serverul la keymetrics apoi clonați aplicația asta demo: app-playground și arată cam așa:

Ce părere aveți de pm2 / Keymetrics ?
Mie mi se pare foarte interesant și folositor Keymetrics, vreau să încerc să fac o aplicație care face backup remote prin ftp intr-un interval de timp, și să pot declanșa manual un backup din keymetrics.

Un proiect asemănător cu PM2 este și Guvnor care arată super awesome, are interfața web inclusă nu trebuie să mai instalezi nimic, dar eu nu am reușit să îl testez până acum.

2 Likes

S-ar putea sa fie cam heavy in productie dar pentru dev arata foarte bine. :slight_smile:

Revin dupa ce testez.

Probabil … Numai aplicația aia demonstrativă am lăsat-o pornită 2 ore și a trecut de la 12 mb consum ram la 20 mb. Deci ori e ceva bug, ori chiar e heavy.

20 mb pentru nodejs e foarte putin :slight_smile: Heavy pentru ca logeaza mult, nu ma refeream la ram.

Dar este direct proporțional cu consumul inițial ? Vorbind în procente practic și-a dublat consumul de ram în două ore. Și din ce cauză apare asta ? Ce anume rămâne în plus în ram ?

De obicei creste pana la un momentdat dupa care se stabilizeaza, asta daca nu exista un memory leak. Poti incerca sa faci un benchmark cu AB, dupa cateva sute de requesturi ar trebui sa ajunga la limita de sus.

Incerc sa evit modulele ‘mari’ ca pm2, prefer module mai mici care-mi ofera mai mult control.

Un ultim exemplu ar fi psy ( https://github.com/substack/psy ) lansat acum cateva zile de Substack.

Ai curaj sa-l folosesti in productie? :slight_smile:

PM2 pare sa-ti ofere cel mai mult control, ai intampinat chiar asa multe probleme cu el, sau mai corect, ce ai folosit in productie?