הרשם שאלות ותשובות רשימת חברים לוח שנה חיפוש הודעות מהיום סמן פורומים כנקראו

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 02-08-12, 19:54   # 9
IgalSt
מנהל פורום, עסק רשום
 
IgalSt's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: המרכז
גיל: 38
הודעות: 1,432
Send a message via Skype™ to IgalSt

IgalSt לא מחובר  

ציטוט:
נכתב במקור על ידי Itay צפה בהודעה
cache זה תמיד טוב, אבל צריך לזכור שכנראה יוצגו לא יותר מ-10 תוצאות ב-autocomplete
במקרים של-2 אותיות הראשונות יש נגיד 1000 התאמות, ויחזרו רק 10, הסיכויים די גדולים שהאות הבאה לא תהיה ב-cache
כמובן שאפשר לשמור את כל ה-1000 תוצאות ולהציג את ה-10 הראשונות, אבל אז כבר סתם טענת יותר מידי מידע, כשהרבה בקשות כאלו מהרבה משתמשים כבר סתם יעמיסו על השרת
הנושא שאתה מעלה אכן נכון בהחלט.
עם זאת, בהחלט שכל מקרה לגופו. לפעמים תעדיף לטעון יותר מידע ולהציג רק חלק ממנו (אחרי הכל לבצע שאילתה אחת 10 פעמים זה יותר כבד מאשר שאילתה אחת שמחזירה פי 10 רשומות).
לחילופין, תוכל להגדיר כל מיני התחכמויות כמו לדוגמה לבצע חיפוש ראשוני אחרי 2 תווים, לאחר מכן כשהיוזר מקליד תווים נוספים תבצע חיפוש ב-cache. במקביל, אחרי כל תו שמוכנס, תראה אם היוזר ממשיך להקליד או לא. אם הוא הפסיק (טיימר פשוט, של נגיד 500ms), תבצע קריאה נוספת לשרת לקבלת כל הרשומות.
בצורה כזאת אתה מגיע לחווית משתמש חיובית - היוזר מרגיש הוא מבצע חיפוש מאוד מהיר ומקבל פידבק מיידי על כל תו שהוא מכניס. מבחינת יעילות אתה חוסך בגישות ל-DB.

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

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 

כלים לאשכול
תצורת הצגה

חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 14:49.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ