View Single Post
ישן 12-09-12, 16:33   # 10
IgalSt
מנהל פורום, עסק רשום
 
IgalSt's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: המרכז
גיל: 38
הודעות: 1,432
Send a message via Skype™ to IgalSt

IgalSt לא מחובר  

ציטוט:
נכתב במקור על ידי Ori The Man צפה בהודעה
אני צריך להריץ לולאת while ארוכה (בסביבות ה 500 פעם) עכשיו בשרת יש מגבלה של 30 שניות והוא על safe_mode מה שאומר שאי אפשר גם להגדיר ע"י ini_set תוספת זמן..
עשיתי מעין כמו שימוש בדפים עם LIMIT וכל פעם שהוא מסיים הוא עובד עובר חזרה לאותו דף עם GET שונה שאומר לו באיזה "דף" הוא נמצא.. אז הוא כאילו טוען את הדף מחדש ולא רץ הרבה זמן
יש שיטה יותר טובה להרצת קובץ למשך זמן ארוך?
כמו שאמרו פה, "לאנוס" את השרת בצורה כזאת זה לא טוב ולא נכון.

בעבר הייתי צריך להריץ סקריפטים ארוכים על שרתים (היו באתר הזה מספר שרתי ווב) ועדיין על מנת לא להעמיס יותר מדיי עליהם השתמשתי בשיטה שגם אתה הגעת אליה. בצורה כזאת אתה כל פעם עושה chunk של פעולות ונותן לשרת כמה רגעים "להתאושש". אומנם כתבתי להתאושש עם גרשיים, אבל תחשוב על זה שכאשר השרת עמוס הוא מתחיל לצבור תורים של פעולות שהוא צריך לבצע: שאילות להריץ ב-SQL, פעולות ב-CPU, כתיבות ודיסק וכו'. כשאתה נותן לו כל כמה שניות מספר שניות התאוששות כאלה (אם השרת לא עמוס תמידית) הוא יסיים את התור שלו ותוכל להתחיל מתור קצר שוב.
  Reply With Quote