הפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?
-
יש לי תהליך נוד שאחראי על מערכת טלפונית עם הרבה קבצי js עם פונקציות רבות וכן על קבצי api שונים
יש לי מעקב אחרי עריכות בקבצי js כדי שהשינויים יתעדכנו
הציק לי מאוד שכל שינוי בקובץ מפעיל מחדש את כל התהליך שעיקר הבעיה היא במערכת הטלפונית שעובדת עם הספרייה הנפלאה של @צדיק-תמים וכל הפעלה מחדש של התהליך מתחיל מחדש את כל השיחה
היום התקשקשתי עם GPT והוא הביא לי את זה (אחרי זה היו עוד כמה שידרוגים, אבל זה הרעיון), הוא טען לי שפה בעצם כל עריכה מפעילה מחדש את אותו קובץ
אני פחות בקי באחורי הקלעים של נוד כך שאני לא יודע האם זה הגיוני ובריא
אשמח לקבל מידע מהמומחים פה -
יש לי תהליך נוד שאחראי על מערכת טלפונית עם הרבה קבצי js עם פונקציות רבות וכן על קבצי api שונים
יש לי מעקב אחרי עריכות בקבצי js כדי שהשינויים יתעדכנו
הציק לי מאוד שכל שינוי בקובץ מפעיל מחדש את כל התהליך שעיקר הבעיה היא במערכת הטלפונית שעובדת עם הספרייה הנפלאה של @צדיק-תמים וכל הפעלה מחדש של התהליך מתחיל מחדש את כל השיחה
היום התקשקשתי עם GPT והוא הביא לי את זה (אחרי זה היו עוד כמה שידרוגים, אבל זה הרעיון), הוא טען לי שפה בעצם כל עריכה מפעילה מחדש את אותו קובץ
אני פחות בקי באחורי הקלעים של נוד כך שאני לא יודע האם זה הגיוני ובריא
אשמח לקבל מידע מהמומחים פה@ששא כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
יש לי מעקב אחרי עריכות בקבצי js כדי שהשינויים יתעדכנו
אני מכיר את נוד ולא את הספריה של @צדיק-תמים / ימות המשיח.
רק אומר ששינויים צפויים צריכים להיות במידע הצהרתי ממסד נתונים או קובץ, ולא משינוי קוד.
ייתכן שצריך לערוך את הספריה לשם כך, זה צריך להיות כיוון נכון. -
@ששא כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
יש לי מעקב אחרי עריכות בקבצי js כדי שהשינויים יתעדכנו
אני מכיר את נוד ולא את הספריה של @צדיק-תמים / ימות המשיח.
רק אומר ששינויים צפויים צריכים להיות במידע הצהרתי ממסד נתונים או קובץ, ולא משינוי קוד.
ייתכן שצריך לערוך את הספריה לשם כך, זה צריך להיות כיוון נכון.@dovid כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
רק אומר ששינויים צפויים צריכים להיות במידע הצהרתי ממסד נתונים או קובץ, ולא משינוי קוד.
לא כ"כ הבנתי
הספרייה עובדת שהוא שומר מידע על כל שיחה לפי מזהה השיחה שנשלח מימות, ולכן אם מפעילים מחדש אז כל המידע הזה נמחק ולכן השיחה מתחילה מחדש
@צדיק-תמים אני צודק?
אבל למעשה מה התשובה להנ"ל, האם זה שיטה נכונה? -
@dovid כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
רק אומר ששינויים צפויים צריכים להיות במידע הצהרתי ממסד נתונים או קובץ, ולא משינוי קוד.
לא כ"כ הבנתי
הספרייה עובדת שהוא שומר מידע על כל שיחה לפי מזהה השיחה שנשלח מימות, ולכן אם מפעילים מחדש אז כל המידע הזה נמחק ולכן השיחה מתחילה מחדש
@צדיק-תמים אני צודק?
אבל למעשה מה התשובה להנ"ל, האם זה שיטה נכונה?כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
אבל למעשה מה התשובה להנ"ל, האם זה שיטה נכונה?
-
@dovid כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
רק אומר ששינויים צפויים צריכים להיות במידע הצהרתי ממסד נתונים או קובץ, ולא משינוי קוד.
לא כ"כ הבנתי
הספרייה עובדת שהוא שומר מידע על כל שיחה לפי מזהה השיחה שנשלח מימות, ולכן אם מפעילים מחדש אז כל המידע הזה נמחק ולכן השיחה מתחילה מחדש
@צדיק-תמים אני צודק?
אבל למעשה מה התשובה להנ"ל, האם זה שיטה נכונה?@ששא כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
הספרייה עובדת שהוא שומר מידע על כל שיחה לפי מזהה השיחה שנשלח מימות, ולכן אם מפעילים מחדש אז כל המידע הזה נמחק ולכן השיחה מתחילה מחדש
נכון, כי זה נשמר לקואלית, לא מורכב לשייך את כל הנתונים שיישמרו בredis או מסד חיצוני מהיר אחר, ולא יורגש כמעט ההבדל במהירות במהלך השיחה, וזה כן יישמור נתונים אחרי ריסטארט
את מה שהוא הביא לך אני לא מכיר, אבל אם את עיקר הבעיה אתה יכול לפתור עם שמירה של הנתונים חיצונית, אז מה נשאר עוד?
-
@ששא כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
הספרייה עובדת שהוא שומר מידע על כל שיחה לפי מזהה השיחה שנשלח מימות, ולכן אם מפעילים מחדש אז כל המידע הזה נמחק ולכן השיחה מתחילה מחדש
נכון, כי זה נשמר לקואלית, לא מורכב לשייך את כל הנתונים שיישמרו בredis או מסד חיצוני מהיר אחר, ולא יורגש כמעט ההבדל במהירות במהלך השיחה, וזה כן יישמור נתונים אחרי ריסטארט
את מה שהוא הביא לך אני לא מכיר, אבל אם את עיקר הבעיה אתה יכול לפתור עם שמירה של הנתונים חיצונית, אז מה נשאר עוד?
@צבי-ש כתב בהפעלת תהליך נוד מחדש לקובץ ספציפי - הגיוני?:
נכון, כי זה נשמר לקואלית, לא מורכב לשייך את כל הנתונים שיישמרו בredis או מסד חיצוני מהיר אחר, ולא יורגש כמעט ההבדל במהירות במהלך השיחה, וזה כן יישמור נתונים אחרי ריסטארט
בכללי הטריק של הספריה הוא שאתה כותב קוד שרץ רק פעם אחת ואז התשובה של הread שמורה בזיכרון ולא שכל פעם הקוד רץ מחדש ואתה צריך לבדוק אם הפרמטר כבר קיים
ממילא ברגע שאתה מפעיל מחדש את התהליך הפונקציה כבר לא קיימת ואין דרך לא לאפס את הריצה, וגם אם היה לך דרך לשמר את הפונקציה רצה אז זה היה גרסה ישנה שלה ולא היה עוזר לך לפיתוח
היתרון של זה הוא שהכתיבה והדיבוג מאוד פשוטים, הקוד רץ מלמעלה ללמטה ברצף
אם אתה עושה שהקוד כן ירוץ מחדש רק יקח את הנתונים מהזיכרון, אז פעולות שהן לא idempotent כמו נניח שליחת מייל יהיה צריך לעטוף ככה בערךconst name = await call.read([{ type: ‘text’, data: ‘מה שמך?’ }]) await call.once(async () => { await db.insert({ name }) await sendEmail(name) console.log(‘נשמר!’) }) const age = await call.read([{ type: ‘text’, data: ‘מה גילך?’ }])@ששא בכל מקרה מה שהצעת לא יעזור לך לעניין של איפוס הסטייט בפיתוח
ולפרודקשן עדיף לדעתי שיטות יותר פשוטות של החלפת התהליך כולו