View Single Post
ישן 09-12-07, 06:45   # 17
omaniusd
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 823

omaniusd לא מחובר  

ציטוט:
נכתב במקור על ידי reXtea צפה בהודעה
כמו שאמרתי מקודם, סקריפט שרץ כל דקה, לא אמור לגרום שום עומס, זה בדיוק כמו שמשתמש יכנס לאותו סקריפט כל דקה ... הכל תלוי בסקריפט עצמו ...

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

בכ"מ לשאלה שלך איך למנוע מהמשתמשים להיכנס לקובץ, פשוט שים אותו בתייקיה private_html ותכוון את הcron job ליעד החדש:
PHP קוד:
/usr/local/bin/php -/home/myuser/domains/mydomain.co.il/private_html/mydictory/thefile.php 
בהצלחה.
כתבתי "בפוטנציאל". אבל סקריפט שרץ כל דקה מראה על איזושהי בעייה ברמת התכנון. רק מערכות שמאד חשובה העבודה בזמן אמת [עדכון פרטי בנק וסנכרון של משיכות אחרונות, למשל] צריכות סקריפט כזה באמת. בהרבה מקרים, אין ממש צורך בדבר כזה.
אני אביא לך דוגמא מהמציאות - פעם נתקלתי במישהו שבנה מערכת שמביאה לך כתובת אימייל זמנית ל-20 דקות. הוא כתב סקריפט, שרץ כל דקה, בשביל למחוק מהDB את החשבונות הלא תקפים.
זה תכנון שגוי - ופה זה באמת יכול לגרום לעומס. לרוץ על DB שלם ולעבור על כל הרשומות שלו (נניח שלא מדובר על DB קטן, אלא גדול) כדי לבדוק למי עבר הזמן - זה מטורף.
במקום זה, ההמלצה שלי עבורו הייתה שברגע שמשתמש מתחבר לחשבון שלו, ייבדק האם החשבון עדיין בתוקף, ואם לא יימחק.
כי שורה נוספת בDB זולה יותר מכל הבחינות מלרוץ על כל הטבלה כל דקה.