בקשה | ניהול תור בשרת
-
@צדיק-תמים כתב בבקשה | ניהול תור בשרת:
@עידו300 אם זה שרת רגיל למה אתה לא מתקין עליו C#?
כי אני לא מבין בזה כלום...
גם נראה לי שהשרת חלש מאוד ואין לו הרבה זכרון.אני מצליח להסתדר עם כתיבת קוד וספריות תראה לדוגמא את עמוד הבית (שכבר לא בתוקף אבל עוד פעיל...) בניתי לבד בהכוונת GPT היה קשוח אבל הסתדרתי, בניתי גם כמה API שהייתי צריך (אתה יכול לראות ב023130310 שלוחה 2), אבל תכלס לעומק לא יודע מה עושים.
-
@צדיק-תמים כתב בבקשה | ניהול תור בשרת:
@עידו300 אם זה שרת רגיל למה אתה לא מתקין עליו C#?
כי אני לא מבין בזה כלום...
גם נראה לי שהשרת חלש מאוד ואין לו הרבה זכרון.אני מצליח להסתדר עם כתיבת קוד וספריות תראה לדוגמא את עמוד הבית (שכבר לא בתוקף אבל עוד פעיל...) בניתי לבד בהכוונת GPT היה קשוח אבל הסתדרתי, בניתי גם כמה API שהייתי צריך (אתה יכול לראות ב023130310 שלוחה 2), אבל תכלס לעומק לא יודע מה עושים.
-
@צדיק-תמים אני באמת מעדיף c# אני פשוט לא חושב שהשרת שלי יסתדר איתו הן בהתקנה והן בהרצה, הוא מאוד חלש, כזה:
2 vCPU
4 GB RAM
40 GB Disk local -
@צדיק-תמים אני באמת מעדיף c# אני פשוט לא חושב שהשרת שלי יסתדר איתו הן בהתקנה והן בהרצה, הוא מאוד חלש, כזה:
2 vCPU
4 GB RAM
40 GB Disk local -
@עידו300 זה ממש לא מפרט חלש, אולי אתה רגיל לשרתי זבל כמו קונטאבו שאין קשר בין המפרט המוצהר למציאות
@צדיק-תמים טוב שאתה אומר.
אז תכלס מה אני צריך עשות? -
@עידו300 זה ממש לא מפרט חלש, אולי אתה רגיל לשרתי זבל כמו קונטאבו שאין קשר בין המפרט המוצהר למציאות
@צדיק-תמים זו ההצעה של GPT
<?php define('QUEUE_FILE', 'queue.json'); // קובץ שישמור את התור // פונקציה לקרוא את התור מהקובץ function loadQueue() { if (!file_exists(QUEUE_FILE)) { file_put_contents(QUEUE_FILE, json_encode([])); } return json_decode(file_get_contents(QUEUE_FILE), true); } // פונקציה לשמור את התור לקובץ function saveQueue($queue) { file_put_contents(QUEUE_FILE, json_encode($queue, JSON_PRETTY_PRINT)); } // פונקציה לעדכן את התור function updateQueue($newData, $validLocation) { $queue = loadQueue(); // קריאת התור הקיים // סינון האנשים שרק מהמיקום הרצוי $filteredData = array_filter($newData, function ($person) use ($validLocation) { return $person['location'] === $validLocation; }); // יצירת רשימה של שמות בלבד $newNames = array_column($filteredData, 'name'); // שמירה על סדר: מי שכבר בתור - נשאר $updatedQueue = array_values(array_intersect($queue, $newNames)); // הוספת חדשים לסוף foreach ($newNames as $name) { if (!in_array($name, $updatedQueue)) { $updatedQueue[] = $name; } } saveQueue($updatedQueue); // שמירת התור המעודכן return $updatedQueue; } // קבלת הנתונים מהשרת (הדמיה של POST) $dataFromServer = json_decode(file_get_contents('php://input'), true); // רק מי שנמצא במקום 6 ייכנס לתור $validLocation = "6 "; // עם רווח אחרי ה-6 כפי שביקשת // עדכון התור והחזרת התוצאה $resultQueue = updateQueue($dataFromServer, $validLocation); echo json_encode($resultQueue); ?>
-
@צדיק-תמים טוב שאתה אומר.
אז תכלס מה אני צריך עשות? -
@עידו300 מה השאלה?
אם אתה רוצה שאני אכתוב את הקוד במקומך אתה יכול לפנות בפרטי לקבל הצעת מחיר
אם אתה מחפש הכוונה נראה לי שכבר פירטתי לעיל@צדיק-תמים איך עושים שהוא ירוץ כל הזמן?
בגדול, אני מתלבט בין 2 אופציות:- שיהיה טריגר שיתחיל את הקוד (בשביל למנוע בזבוז תעבורת רשת ע"י שליחת סתם בקשות מיותרות), ואז הוא ישלח כל כמה שניות לבדוק את המצב שעד שהתור יתרוקן ואז הקוד יעצור. הבעיה כאן היא שאם הטריגר יפעל שוב, הקוד ירוץ שוב במקביל וזה יעשה בלאגן אחד שלם.
- שירוץ כל הזמן בלי טריגר, ואז אין חשש לכפילויות, אבל אז יש בזבוז תעבורת רשת, שעולה כסף כמובן. ועוד בעיה, שאני לא יודע איך עושים שירוץ כל הזמן, מה שאני יודע זה שקוראים לו הוא מתחיל לרוץ, לא יודע איך גורמים לרוץ בלי הפסקה.
אגב, תודה על כל העזרה.
-
@צדיק-תמים איך עושים שהוא ירוץ כל הזמן?
בגדול, אני מתלבט בין 2 אופציות:- שיהיה טריגר שיתחיל את הקוד (בשביל למנוע בזבוז תעבורת רשת ע"י שליחת סתם בקשות מיותרות), ואז הוא ישלח כל כמה שניות לבדוק את המצב שעד שהתור יתרוקן ואז הקוד יעצור. הבעיה כאן היא שאם הטריגר יפעל שוב, הקוד ירוץ שוב במקביל וזה יעשה בלאגן אחד שלם.
- שירוץ כל הזמן בלי טריגר, ואז אין חשש לכפילויות, אבל אז יש בזבוז תעבורת רשת, שעולה כסף כמובן. ועוד בעיה, שאני לא יודע איך עושים שירוץ כל הזמן, מה שאני יודע זה שקוראים לו הוא מתחיל לרוץ, לא יודע איך גורמים לרוץ בלי הפסקה.
אגב, תודה על כל העזרה.
@עידו300 אפשר להריץ PHP דרך שרת האינטרנט, לדוגמה nginx, ואז התהליך מת בסוף כל בקשה, ואפשר פשוט להריץ אותו בשורת הפקודה כמו כל תוכנה (בתוספת
nohup
בהתחלה או&
בסוף כדי שהתהליך ימשיך לרוץ אחרי התנתקות מהשרת), כלומרphp script.php &
אתה יכול להשתמש ב pm2 בשביל ניהול יותר נוח, הפעלה אוטומטית בהפעלת המחשב וכולי
הקוד יכול לרוץ רצוף, זה לא אומר שהוא צריך לעשות פעולות רצוףנ.ב. אל תחשוב על תעבורת רשת בכלל כשמדובר על העברת קצת טקסט
-
@עידו300 אפשר להריץ PHP דרך שרת האינטרנט, לדוגמה nginx, ואז התהליך מת בסוף כל בקשה, ואפשר פשוט להריץ אותו בשורת הפקודה כמו כל תוכנה (בתוספת
nohup
בהתחלה או&
בסוף כדי שהתהליך ימשיך לרוץ אחרי התנתקות מהשרת), כלומרphp script.php &
אתה יכול להשתמש ב pm2 בשביל ניהול יותר נוח, הפעלה אוטומטית בהפעלת המחשב וכולי
הקוד יכול לרוץ רצוף, זה לא אומר שהוא צריך לעשות פעולות רצוףנ.ב. אל תחשוב על תעבורת רשת בכלל כשמדובר על העברת קצת טקסט
@צדיק-תמים תודה רבה
-
-