מהי הדרך הקלה ביותר, לתזמן מראש הפעלת קוד ע"י לינק ??
-
cron
-
-
להיעלב?
אני מפעיל בשוק כבר כמה שנים מערכת מורכבת מאוד מאוד!! שהייתי האדריכל הראשי והיחידי שלה... !! (אמנם את התיכנות בפועל, כמובן ביצע מתכנת רציני...).
וברור לי שגדולי המתכנתים שלכם לא היו מתביישים בה...
(כלומר בכישוריי אני מתכנת בכיר ב"כח", - אך לא "בפועל" כיון שאני ב"ה אברך).
וכל מה שהיה נצרך לי לצורך המערכת, תפסתי כיצד מבצעים זאת בתוך זמן קצר, בלי ללמוד מאומה לימודי תיכנות...וכעת אני יודע לשלוח פקודות בSSH (כלומר, מה שהיה נצרך לי עד היום)
ולהפעיל הרבה דברים שנצרכים לי לצורך המערכת שלי, כולל טיפול בקודי PHP ו JSאך מה שלא היה נצרך לי עד היום, ולא למדתי כיצד לבצע זאת, איני יודע... (ואני לא מתבייש...)
וכעת, אם אתם חושבים שהתשובה לשאלה שפתחתי איתה כ"כ מסובכת, עד כדי שחבל על הזמן, אז אכן איני מעוניין לשרוף לכם את הזמן,
אך אם זה לא כ"כ מסובך,
הייתי שמח להוסיף לעצמי את הידע, כיצד מבצעים זאת,תודה רבה!!
-
האמת קצת מוזר שעם חוש טכני טוב כמו שלך אתה מתקשה לבצע את זה.
זה פעולה די פשוטה לביצוע, אפשר גם דרך ssh וגם דרך ממשק ניהול גרפי של השרת וגם דרך pm2. וגם להיעזר בכלי הבינה המלאכותית שעומדים לשירותך ולרשותך 24 שעות להכוונה מפורטת ומסודרת.
האם כבר ניסית ולא הצלחת? זה הסתבך איפשהו? -
איני מתכנת,
ולכן אנסה לענות לך קצת ממה שאני יודע על השרת שלי, מקווה שנצליח להתקדם איכשהו

יש לי שם תוכנת PM2
שמפעילה לי קבצי JS
ובנוסף אני משתמש שם עם קודים של PHPאוקי, אז אסביר לך בשני מילים מה ענו לך.
כשאתה ניגש למערכת שלך בדפדפן, אתה בעצם פונה לכתובת אינטרנט,
שגוררת פעולה של PHP\node.
בשרת עצמו אתה יכול להפעיל ישירות את הפרוצדורה של הphp\node,
אך גם יכול לפנות גם לכתובת האינטרנט, על ידי curl.אתה כעת הולך לקרוא מדריך איך משתמשים בcron כדי לתזמן בשרת פקודה (בכל שרת יש cron)
ובפקודה אתה יכול להפעיל או: php (עם פרמטר לקובץ הרצוי) או נוד (כנ"ל) או crul עם פרמטר לכתובת האינטרנט הרצויה.הערה: אם אתה הולך על פניה לurl, יש לדעת שלפעמים כתובת אינטרנט עובדת מכל העולם אבל לא מהרשת, בגלל בעיה של ניתוב.
במקרה כזה תחליף את הדומיין לכתובת אייפי זו 127.0.0.1 (ייתכן שתצטרך להוסיף כותרת host שזה יטופל נכון, בא נניח בינתיים שלא).
אז לפני כל הסיפור תריץ סתם בדיקה של curl your-site.com/your_page או curl 127.0.0.1/your_page כדי לדעת שאתה יכול לגשת לאתר שלך מהשרת. -
אוקי, אז אסביר לך בשני מילים מה ענו לך.
כשאתה ניגש למערכת שלך בדפדפן, אתה בעצם פונה לכתובת אינטרנט,
שגוררת פעולה של PHP\node.
בשרת עצמו אתה יכול להפעיל ישירות את הפרוצדורה של הphp\node,
אך גם יכול לפנות גם לכתובת האינטרנט, על ידי curl.אתה כעת הולך לקרוא מדריך איך משתמשים בcron כדי לתזמן בשרת פקודה (בכל שרת יש cron)
ובפקודה אתה יכול להפעיל או: php (עם פרמטר לקובץ הרצוי) או נוד (כנ"ל) או crul עם פרמטר לכתובת האינטרנט הרצויה.הערה: אם אתה הולך על פניה לurl, יש לדעת שלפעמים כתובת אינטרנט עובדת מכל העולם אבל לא מהרשת, בגלל בעיה של ניתוב.
במקרה כזה תחליף את הדומיין לכתובת אייפי זו 127.0.0.1 (ייתכן שתצטרך להוסיף כותרת host שזה יטופל נכון, בא נניח בינתיים שלא).
אז לפני כל הסיפור תריץ סתם בדיקה של curl your-site.com/your_page או curl 127.0.0.1/your_page כדי לדעת שאתה יכול לגשת לאתר שלך מהשרת.@dovid @shraga
הבינה המלאכותית חסומה אצלי במחשב,
וכיון שחשבתי לעצמי שאולי ישנם כמה דרכים כיצד לבצע את מה שרציתי,
לכן לא רציתי לשרוף הרבה זמן בכדי ללמוד דרך אחת, ולבסוף מישהו יגיד לי שישנה דרך אחרת פשוטה בהרבה יותר...כרגע למעשה הבנתי ממכם שהדרך הכי פשוטה היא, ע"י cron
- אז כבר החכמתי במשהו טוב בזכותכם

תודה רבה!!
וכעת אנסה להתקדם בכיוון הזה, ואקווה שבעז"ה אסתדר בעניין,
שוב תודה!!

- אז כבר החכמתי במשהו טוב בזכותכם
-
@זאביק כמו שכולם כאן אמרו, cron פתרון מצוין בשבילך, רק צריך לדעת איך להפעיל אותו, שזה מאוד פשוט. השאלה מה הוא צריך להפעיל. ובאיזו מערכת אתה משתמש.
המבנה הוא כזה (מזכיר קצת את האקסס (אם אינני טועה) בימות המשיח)* * * * * פקודההכוכביות משמאל לימין הן:
דקות
שעות
יום בחודש
חודש יום בשבועאתה צריך
*/15 * * * * פקודה -
@זאביק כמו שכולם כאן אמרו, cron פתרון מצוין בשבילך, רק צריך לדעת איך להפעיל אותו, שזה מאוד פשוט. השאלה מה הוא צריך להפעיל. ובאיזו מערכת אתה משתמש.
המבנה הוא כזה (מזכיר קצת את האקסס (אם אינני טועה) בימות המשיח)* * * * * פקודההכוכביות משמאל לימין הן:
דקות
שעות
יום בחודש
חודש יום בשבועאתה צריך
*/15 * * * * פקודה -
@dovid @eido @ivrtikshoret @shraga @צבי-ש @ששא
אכן האתר שהביא כאן @צבי-ש :
https://cron-job.org/en/
הינו עם ממשק קל ופשוט ביותר לתיפעול,ולאנשים כמוני... השימוש באתר הנ"ל אפילו פשוט יותר מלכתוב פוסט חדש ב"תחומים",
(כיון שהפוסטים שלי זקוקים לאישור ההנהלה לפני שהם עולים לפורום
)וכעת אם נשאר לכם חשק לעזור לי עוד קצת

אז למעשה אני צריך להריץ 2 קודים שונים, שירוצו בדווקא בסדר כזה, שקוד B ירוץ רגע אחרי קוד A,
וחשבתי להריץ את 2 הקודים בקביעות כל 15 דקות, עם הפרש של (נניח) דקה ביניהם,
אך באתר הנ"ל, נקודת המוצא של כל ריצה היא, בתחילת שעה עגולה,
כך שבינתיים לא מצאתי פיתרון לשתול מרווח כלשהו בין ריצת 2 הקודים,האם ידוע לכם על פיתרון פשוט למה שאני צריך?
(וכמובן שאין כוונתי להטריח אתכם מדי, כיון שאם אין פיתרון פשוט לזה, אז אחבר את 2 הקודים שלי לקוד 1 ארוך, (ספציפית במקרה שלי זה כנראה אפשרי).
תודה רבה לכולכם!!!
-
לגבי הפוסט הקודם:
עריכה: בינתיים ב"ה הסתדרתי, כיון שהתברר לי שבכל שעה עגולה יש שם במציאות איפוס של ריצת כל המונים שמבוססים על דקות.
ולכן הגדרתי שם, שקוד A ירוץ כל 20 דקות, וקוד B ירוץ כל 21 דקות,
והתוצאה: שאע"פ שבין - 00:40 עד 00:42 למשל, אכן המרווח יגדל, ויהיה מרווח של 2 דקות בין 2 הריצות של הקודים,
אך בשעה הבאה, המונה יתאפס מתחילה, ואז נמצא שקוד B יחזור לרוץ בשעה 01:21 (ולא בשעה 01:24 וכו' וכו' וכו' כפי שחשבתי),
וא"כ הריצה בין הקודים תמשיך להישאר די צמודה גם בעוד שנה...וכמובן שאם יש לכם עוד מה להחכים אותי בזה, יהיה לי מזה תועלת.
תודה רבה לכולכם!!!
-
לגבי הפוסט הקודם:
עריכה: בינתיים ב"ה הסתדרתי, כיון שהתברר לי שבכל שעה עגולה יש שם במציאות איפוס של ריצת כל המונים שמבוססים על דקות.
ולכן הגדרתי שם, שקוד A ירוץ כל 20 דקות, וקוד B ירוץ כל 21 דקות,
והתוצאה: שאע"פ שבין - 00:40 עד 00:42 למשל, אכן המרווח יגדל, ויהיה מרווח של 2 דקות בין 2 הריצות של הקודים,
אך בשעה הבאה, המונה יתאפס מתחילה, ואז נמצא שקוד B יחזור לרוץ בשעה 01:21 (ולא בשעה 01:24 וכו' וכו' וכו' כפי שחשבתי),
וא"כ הריצה בין הקודים תמשיך להישאר די צמודה גם בעוד שנה...וכמובן שאם יש לכם עוד מה להחכים אותי בזה, יהיה לי מזה תועלת.
תודה רבה לכולכם!!!
-
@eido
באתר https://cron-job.org/en/ שאיתו התחלתי להשתמש, הפקודה שהבאת לא הייתה תקינה, (ניסיתי אותה בכמה וכמה דרכים, - כולל השלמת הכוכבית שנשמטה אצלך),ומעניין מה הסיבה לכך?
תודה רבה!!
@זאביק אולי כי הוספת את הכוכבית שלא השמטתי?
במקום A וB הכנסת פקודה עם נתיב מלא כמו שאמרו כאן?
הרעיון בפקודה הזו הוא פשוט
.* פירושו "כל הערכים"
.- פירושו ערכים בין לבין (בין 2 ל59)
/ אילו צעדים או כל כמה זמןכמו שאתה יכול לראות הפקודות הראשונה והשניה סותרות, ולכן אין מקום לשים אותן ביחד!
לכן הפירוש הוא שהערכים בדקות הם בין 2 ל59 (מה שמבטיח שלא יתחיל בשעה עגולה, וככה יתן מרווח של 2 דקות מההcron הראשון) בצעדים של 15 דקות.
לכן XX:X2
XX:17
XX:32
XX:47
זה לא יעבור את ה59 כי הגבלנו אותו ל59.אם עשית כמו שכתבתי ושינית לפקודה אמיתית אין סיבה שלא יעבוד.