סקונילב Node.js ימושייל םיכילהת ילהנמ 4


.תכרעמה לוחתא תעב תיטמוטוא הלעפהל רשפאל לוכיו (חצנל) ףיצר ןפואב לעופ Node.js לש טפירקס וא ךילהתש חיטבהל ישומיש ילכ אוה Node.js לש םיכילהת להנמ

.םיכילהת לוהינל תורחא תוישומיש תונוכת הברה ךכ לכו ,םיסמוע ןוזיאו תולוכשא ,םימושיי םושירב םג ךמות אוה .(רתוי הברה ךכ לכו םיעוציב ידדמ תגצה ,תורדגה/הביבסה ינתשמ יוניש ,התבשה ןמז אלל תורוצת

.סקוניל תכרעמב Node.js ימושיי לוהינל םיכילהת ילהנמ העברא רוקסנ הז רמאמב .רוציי תביבסב Node.js ימושיי לש הסירפל דחוימב ישומיש תוליבח להנמ

1. PM2

PM2 לש רוצייה תמרב רתויב ירלופופה םיכילהתה להנמו תומרופטלפ הצוח ,תונוכתב רישע ,םדקתמ ,חותפ דוק אוה Node.js יכילהת לכ לע לועפלו חקפל ,םושרל ךל רשפאמ הז .הנבומ םיסמוע ןוזיא םע Nodejs לוכשא ב

.(YAML -ו Javascript, JSON םיללוכ םיכמתנ םיטמרופ) ךילהת ץבוק תועצמאב םושיי לכ לש תוגהנתהה תא םיאתהלו רידגהל ךל רשפאמ אוהש ךכב םיכילהת לוהינל ךלש הדובעה ךילהתב ךמות אוה .ךלש םושייב (דבעמו ן

.ךרוצה תדימב שדחמ םתוא ןיעטהלו םתוא ףוטשל ,תמא ןמזב םינמוי גיצהל ךתורשפאב .המאתהב םינמוי תגצהלו לופיטל םינוש םיטמרופו םיכרד קפסמ אוה .ךלש םושייה ינמוי תא תולקב להנל ךל רשפאמ PM2 הז רשקהב ,

.הלש הנשמה תוירפסב וא תיחכונה הירפסב הנתשמ ץבוק רשאכ םושיי לש תיטמוטוא שדחמ הלעפהב םג ךמות אוה .היופצ יתלב וא היופצ הנוכמ לש שדחמ הלעפהב םכלש םיכילהתה לש תיטמוטוא הלעפהל רידגהל ולכות םתוא

.הברה ךכ לכ דועו ,םיסמוע ןוזיא וא ןמוי בוביס לודומ רובע לודומ רוציל לוכי התא ,המגודל .Nodejs יכילהת לוהינל תישיא םימאתומ םילודומ רוציל םישמתשמל תרשפאמה םילודומ תכרעמ םע העיגמ PM2 ,ףסונב

.יתונכת ןפואב הב שמתשהל םכל תרשפאמה API תכרעמ עיצמו ,תולוכמ בוליש רשפאמ Docker, PM2 תולוכמב םישמתשמ םתא םא ,ביבח ןורחא

StrongLoop PM ימושייל םדקתמו חותפ דוק רוציי יכילהת להנמ םג אוה Node.js ומכ שממ הנבומ םיסמוע ןוזיא םע PM2 יפרג קשממ וא הדוקפ תרוש תועצמאב וב שמתשהל ןתינו.

.ינמוי לוהינו תריבצו ,לשכ תעב ךילהתה לש תיטמוטוא שדחמ הלעפה ,התבשה ןמז תייצקילפא לש גורדשו שדחמ הלעפה ,לוכשא בצמ ,םיחראמ תבורמ הסירפ ,(ןורכיזו דבעמ תכירצ ,םיעוריא תאלול ינמז ומכ םיעוציב יד

.םיימלוג ןמוי יצבקו DataDog, Graphite, Syslog ןוגכ ישילש דצ תולוסנוקב גיצהלו ,StatsD ימאות םיתרשל םיעוציב ידדמ אצייל ךל רשפאמ ,Docker -ב הכימת םע חלשנ אוה ,ןכ לע רתי

חצנל .3

.ךלש דוקב התעמטה ידי לע וא הדוקפה תרוש ךרד :םיכרד יתשב חצנל שמתשהל לוכי התא .םיטפירקסו Node.js תויצקילפא לש רתוי תונטק תוסירפ תלעפהל םיאתמ הז .(חצנל) תופיצרב ןותנ טפירקס תלעפהל רדגומו טושפ

.JSON ץבוקב ןתוא ריבעהל וא הדוקפה תרושמ תורישי ריבעהל ולכותש שומיש תויורשפא המכב ךמות אוה ,ףסונב .הברה ךכ לכ דועו ,תותוא תאיציו ךילהת לש תישיא המאתה לש גרהב ךמות אוהו Node.js יכילהת (' וכו

4. SystemD - תכרעמו תוריש להנמ

.תורחא תובר תודיחיו הרטמ ,הבכרה ,עקש ,רישכמ ,תוריש ללוכ תודיחי לש םינוש םיגוס םנשי .הדיחי ארקנ systemd ידי לע להונמה באשמ לכ .םיצבקה תכרעמ לש םירחא םיביכרו םיכילהת ןוגכ תכרעמ יבאשמ להנמש ן

Systemd תרש תא להנל ידכ ,ןכל .הדיחי ץבוק הנוכמה הרוצת ץבוק תועצמאב תודיחי תלהנמ Node.js תוריש ץבוק היהי הז הרקמבש ,הדיחי ץבוק ורובע רוציל ךילע ,םירחא תכרעמ יתוריש לכ ומכ ךלש.

.םירחא תכרעמ יתוריש לכ ומכ הז תא קיספהל וליפאו ,ותרוצת תא שדחמ ןועטל וא (בוש ותוא ליעפהלו רוצעל) שדחמ ליעפהל ,ובצמ תא קודבל ,תכרעמה לוחתא ןמזב תיטמוטוא הלעפה ול רשפאל ,ותוא ליעפהל לכות ,ךל

Shell טפירקס תועצמאב Systemd -ב תושדח תוריש תודיחי ליעפהלו רוציל דציכ :האר ,ףסונ עדימ תלבקל

.ונילא עיגהל ידכ הטמלש בושמה ספוטב שמתשה ,לואשל תולאש וא תופסות ךל שי םא .Node.js רובע תוליבח ילהנמ העברא ונרקס הז רמאמב .וב טולשל לוכי התא ובש ןפואה תא טשפמו חצנל יח םושיי לע רמוש הז .רוצ