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

IgalSt לא מחובר  

היי

אני בדיוק מתקין את המחשב החדש שלי, אז אין לי גישה לקוד שלי עדיין. ברגע שיהיה אני אראה לך דוגמה לאיך לממש timeout לביטול הפניה (זה לא לפייסבוק כי מימשתי את זה מזמן עבור SHOWME כי עשינו הרבה התממשקויות כאלה, אבל זה אותו הדבר בערך).
TIMEOUT ב-JS ממש לא הגיוני פה. כי אתה סתם תעמיס את השרת שלך בפניות חדשות כשהוא עדיין לא הספיק להחזיר את הישנות.

כשאמרתי on error resume next התכוונתי שתעשה משהו כזה:
קוד:
function getFromFB(ByVal i)
  on error resume next
  if i>3 then exit function
  i = i+1
  err.clear()
  'your call to facebook
  if err.number>0 then call getFromFB(i)
end function
recycle אומנם נשמע כדרך לא אלגנטית לעקוף את הבעיה, אבל זו גם אפשרות. בשואומי היינו עושים את זה הרבה ודניאל מ-SPD יעיד על כך

שאלת איפה עובר הגבול?
קשה לומר. כל אפליקציה וצווארי הבקבוק שלה.
אני יכול לספר על שואומי, שתחילה היית לנו בעיה חמורה עם ה-I/O כי מדובר בסופו של דבר באתר תמונות וצריך להגיש אותן לגולשים כל הזמן. אחרי שסידרנו את הבעיה באמצעות סידור נכון של החומרה הקיימת ובשלב מאוחר יותר רכישת fileserver, הופיע בעיה אחרת.
הבעיה החדשה היית ששרת ה-MYSQL (שהיה על מכונה ייעודית על WINDOWS) לא עמד בעומס ולקח לו יותר מדיי זמן להחזיר תשובות. בזמן שהגולש המתין לעמוד שיעלה הוא היה לוחץ כמה פעמים על הקישור. כל פעם שהוא לחץ על הקישור מה שקרה שהגיע פניה חדשה ל-IIS והוא שוב פנה ל-MYSQL עבור תשובה. במקביל חזרה התשובה מה-MYSQL עבור הפניה הראשונה, אבל הגולש כבר "לא מעוניין בה" כי הוא עשה כבר בקשה חדשה.
עשיתי המון עבודה בייעול השאילתות, קאשינג וכו' על מנת לצמצם את העומסים כמה שאפשר. בסופו של דבר בעצה מעולה מ-SPD הם המליצו לעשות רוטציה מסויימת בין המכונות הקיימות ועל המכונה החזקה ביותר להתקין לינוקס ועליו את ה-MYSQL. זה שיפר משמעותית ביצועים.
בסופו של דבר היינו על שלושה שרתי WEB עם load balancer עבורם ושרת MYSQL לינוקסי אחד. כמו כן היה שרת קבצים ייעודי שהגיש את כל התמונות.

קצת סטיתי מהשאלה שלך, אבל רציתי להדגים לך איך כל פעם כשאתה מסדר בעיה אחת אחרת מופיע. חשוב להתייעץ עם החברה שמנהלת את השרתים. הם יוכלו להגיע לך איפה נטחן השרת שלך: הזיכרון, הדיסקים, ה-CPU וכו' ולשמוע להמלצות שלהם. כמובן שאתה חייב לסמוך עליהם.
לצערי, לפני שהעברתי את ניהול השרתים של שואומי ל-SPD, היינו בחברה מאוד מוכרת שמנהלת המון שרתים של חברות גדולות, אבל הם פשוט לא טובים. אני מדבר על GNS, ומי שמכיר אותם מצטער על כך.

אם אתה מעוניין אתה מוזמן לצור איתי קשר בסקייפ (IgalSt).
  Reply With Quote