NET object pooling? לקראת פרוייקט

מתכNET

New member
NET object pooling? לקראת פרוייקט

במסגרת לימודי. שלום,אני צריך להקים אתר שרוב עבודתו תהיה הרצת שאילתות על SQL SERVER והצגתן ב דף ASP.NET אני מתכנן להשתמש ב NET Enterprise Services על מנת לאפשר OBJECT POOLING כי אני מעריך כמות רבה של משתמשים.....מדובר על אתר "אמיתי" כלומר הפרוייקט הוא הקמת תוכנה לגוף ציבורי שהזמין את התוכנה. שאלותיי: 1.אם המספר של המשתמשים קטן אז האם שימוש ב OBJECT POOLING יפגע בביצועים או יקשה על המימוש? 2.האם צריך להתקין משהו מחוץ ל .NET? 3.תוכלו להפנות אותי למאמר למתחילים? אני מניח שיהיה אובייקט אחד שיכיל את הפונקציות לעיבוד הנתונים והוא זה שיעשו עליו POOLING. 4.בהנחה שיש לי הרבה טבלאות בבסיס הנתונים ואני צריך לעשות שאילתות דינמיות מורכבות,אילו דרכים ישנן על מנת לשפר את הביצועים מחוץ ל הקמת אינדקסים,דה-נורמליזציה,caching,שימוש ב STORED PROCEDURES ו CURSOR מתאים. רוב השאילתות שלי הם מסוג SELECT. 5.איך מחשבים דרישות חומרה בהינתן,מהירות רשת,מספר משתמשים,מספר רשומות,תדירות הפעלה שאילתות...? 6.הפרוייקט נעשה בהתנדבות,ורציתי לשאול אם אתם חושבים שאוכל להעזר ב MICROSOFT או במעבדות שנותנות ייעוץ הנתמכות על ידיהן? תודה מראש.
 

pun dog

New member
pooling

אני לא כל כך בקיע בנבכי ה enterprise services אבל ננסה לתת כמה תשובות, בד"כ משתמשים ב pooling לטובת ביצועים כאשר אתה צריך ליצור מספר רב של אובייקטים בזמן קצר, כאשר כל יצירה של אובייקט ידועה כאחת שלוקחת הרבה זמן או זכרון. ע"י שימוש ב pooling אתה תאתחל איזשהו pool "התחלתי" כגודל מספר האובייקטים שאתה מצפה שתצטרך. בצורה הזאת, אם יהיו לך בעיות חוסר זכרון, אתה תדע על זה ברגע שאתה מפעיל את התוכנית, ולא אי שם בתוך הזמן ריצה.. ודבר שני, יצרת את כל האובייקטים בהתחלה, ולכן מעכשיו בכל פעם שתצטרך להשתמש באובייקט, הוא יהיה מוכן לשימוש ולא תצטרך לאתחל אחד חדש בכל פעם.. בסך הכל אין יותר מדי ביצירת מחלקת pooling, ותבדוק ב code project, צריכה להיות שם דוגמה יפה איך לממש אחת
 
Nil ref error

אל תעשה שימוש ב enterprise service או ב object pooling. חסרי תועלת למקרה שבו אתה מדבר. שימוש נכון ב cache יתן לך הרבה יותר תפוקה. caching הוא הדבר הכי חשוב לביצועים ברוב המקרים
 

IdleThought

New member
הערה חלקית לחתולין

אני ממליץ לך לעיין בMICROSOFT APPLICATION BLOCKS ובנהייברנייט
 
למעלה