DCSIMG
עמוד הבית| חבילות השירות שלנו| חומר חופשי| צור קשר
Performance - בלוג היועצים של מיקרוסופט ישראל

בלוג היועצים של מיקרוסופט ישראל

Browse by Tags

All Tags » Performance (RSS)
שיפור ביצועים עבור שאילתות תיחקור כבדות
אחת התכונות המענינות של הגרסא הבאה הנה סוג חדש של אידקסים העובד על השורות במקום על העמודות. מידע כמעט מלא נמצא במאמר המצוין הבא . מבדיקות שערכנו בארץ נראה כי אכן יש שיפור ביצועים משמעותי גם בשאלתות מסובכות. מגבלה שחשוב לקחת בחשבון הנה שהשיפור מינורי בשאלתות שיש בהן left join . בהצלחה
מתי לא להשתמש - User Defined Functions - UDF
לכל מי שבא מעולם התכנות (כמוני למשל), שימוש בפונקציות נשמע כצורת הכתיבה הטובה ביותר. יש לכך כמובן הרבה סיבות כגון שימוש חוזר, Encapsulation, פשטות קוד ועוד. אבל, בכתיבה של SQL זה לא תמיד כדאי. אז הנה דוגמא מהחיים (הדוגמאות רצות על AdventureWorks): אנו רוצים לכל ספק את סכום ההזמנות, כמות הפריטים, סכום ממוצע לפריט ומשקל ממוצע לפריט השיטה בעזרת פונקציות: לעבור על טבלת הספקים, ההזמנות ושורות ההזמנה קוד בעזרת פונקציות (הגדרות הפונקציות בנספח): SELECT PV.VendorID, Purchasing.fn_SumQty(PV.VendorID) SumQty...
צעדים ראשונים לשיפור ביצועיים של יישום מבוסס Dynamics CRM
לפי נסיוני, לפני שנכנסים לתהליך שיפור בצועיים של יישום מבוסס Dynamics CRM יש לבצע מספר צעדים בסיסיים: צד ראשון - להתקין hot fixes ו - update roll-ups קינפוג Client-Side Caching קינפוג Content Expiration ביצוע אופטימיזציה לשרת windows : - Windows Server 2003 - Performance and Scalability http://www.microsoft.com/windowsserver2003/evaluation/performance/default.mspx - Windows Server 2003 Solution Center http://support.microsoft.com/?scid=ph;en-us;3198 - Windows Server 2008 - Performance Tuning Guidelines...
למה הכוונה במונח "ביצועים" ?
למרות הפעילות הענפה בנושא עדיין השאלה הראשונה שנשאלת כאשר המילה "ביצועים" נזרקת לחלל האוויר, היא: "למה הכוונה במונח 'ביצועים' ?". ולעתים קרובות מדי, התגובות לשאלה מהווים ניסיון להגדיר במונחים מאולתרים (במידה זו או אחרת) את כוונת הדובר, ולהפוך את המונח "ביצועים" לדרישה מדידה, אך ללא היכרות עם מגוון ההגדרות והמונחים הקיימים והנפוצים שכלולים תחת הקטגוריה הכללית של "ביצועים". בפוסט הזה אני מתאר את מגוון האפשרויות והמונחים אליהם מתכוונים כאשר מדברים וחושבים על ביצועים (Performance). כמובן שאיני מתכוון להמציא את הגלגל מחדש, אלא להסתמך על הגדרות ותובנות מקובלות ונפוצות. ...
על Caching, על ETag ומה שבינהם
יש לכם אתר אינטרנט שמתארח ב – IIS6 ונמצא מאחורי NLB והדפים שלכם לפעמים עולים לאט ולפעמים יותר מהר ?! יכולות להיות מספר סיבות להתנהגות (מעצבנת) שכזו. אני רוצה לדבר כאן על גורם אחד חמקמק… (ממליץ לקרוא פוסט קודם שעוסק בנושא של caching ל- static contents). ETag אז מה זה Etag? בקצרה – חלק מפרוטוקול HTTP. השרת מייצר ETag Header שאמור לייצג “גרסה” של ה- resource שאותו הוא מספק (בד”כ רלוונטי יותר ל- static contents – תמונות, JS וכיו”ב) והדפדפן משתמש ב- Header הזה לבדיקת caching. ה”גרסה” של resource, בד”כ...
איך נשפר את ה- caching לדפים סטטים
אתם מפתחים אתר אינטרנט ואתם רוצים לשפר בו ביצועים? נראה לכם שכבר עשיתם הכל? הנה עוד דבר קטן שאפשר לנסות... caching לדפים סטטים (JS, CSS, Images וכו'). [אני אדבר על קבצי JS, אך הכל נכון גם לסוגי הדפים האחרים] כברירת מחדל, הדפדפן שלכם מבצע caching באופן הבא: בכל פעם שהוא נדרש "להוריד" דף מהשרת, הוא בודק האם הדף קיים ב- cache המקומי שלו. הבדיקה מתבצעת עבור כל ה- url , כולל הפרמטרים. אם הדף לא נמצא ב- cache, הדפדפן ניגש לשרת ו"מבקש" את הדף. אם הדף כן נמצאב-cache, הדפדפן ניגש לשרת...
ביצועים - drill to the Stored Procedures
יש אצלנו בחור נודניק (נאמר רק שראשי התיבות של שמו הנם א"ל) שכל פעם מתלהב כשאני מראה כמה קל לעשות ניטור בסיסי של ביצועי SQL. בלוג זה בא כמובן בהמשך לבלוג SQL Server - ביצועים שנתן את הבסיס. אז הנה הא"ב ל unit test של משפטי SQL או Stored Procedures. חובה לכל מפתח לפני שמספר למישהוא שהוא סיים פיתוח, ובוודאי לפני בדיקות. שלב ראשון : הפעילו profiler, אשרו את SQL:BatchCompleted, RPC:Completed , בטלו את שאר האפשרויות שלב שני : הקליטו את המערכת וזהו שאילתות הצורכות IO מסיבי (יחסית כמובן), נניח...
ארכיטקט-ידיים-מלוכלכות, מס’ 4 – קומפילציה דינאמית הורגת את המפתחים
לקוח התלונן על תחנות פיתוח איטיות, כל כך איטיות שביצוע קומפילציה לוקחת עד כמה דקות. תאר לעצמך שמפתח מבצע מספר קומפילציות ביום כפול מספר דקות של איטיות… יוצא לא מעט זמן אבוד, כפול מספר לא מבוטל של מפתחים… יוצא טונה זמן אבוד. לא נעים, הא? בהתחלה חשבנו על איטיות ב-Backend ומהר מאד ראינו שזה לא המקרה. השתמשנו ב-Netmon לצורך כך. אחרי כמה הרהורים חשבנו כי הזמן מתבזבז על Serialization או Dynamic Compilation. במקרה הזה מופעל CSharp Compiler – פעולה לא הכי קלה בעולם. כדי לנטר פעילות של ה-Compiler השתמשנו...
ארכיטקט-ידיים-מלוכלכות מס’ 3 – ניטור תעבורה ברשת
אחד היכולות החשובות באפליקציה היא Manageability – יכולת ניטור כל מה מתרחש באפליקציה וברכיבים שלה, כולל בסיס נתונים. אז עם מה מנטרים? צד לקוח - Fiddler . מנטר תעבורת HTTP, מתאים ל-ASP.NET וגם ל-WCF עבור bindings מבוססי HTTP. צד IIS – לוגים של IIS . יודעים כמה יש פניות, כמה זמן לקחו הפניות, כמה חומר נכנס ויצא לאםליקציה, מתאים ל-ASP.NET וגם WCF כאשר מתארח ב-IIS. אפליקציה – מימוש עצמי של Instrumentation . האפשרויות הן שימוש ASP.NET Healthmonitoring , Custom Perfcounters , System.Diagnostic.Trace. וכמובן...
סדנת פיתוח מונחה ביצועים של MCS
בשבוע שעבר העברנו סדנת פיתוח מערכות מונחה ביצועים הראשונה של MCS באוירה אינטימית ל-13 משתתפים במשרדי מיקרוסופט ישראל ברעננה. מטרת הסדנה היתה להקנות כלים למקבלי החלטות טכנולוגיים. הסדנה כיסתה את הנושאים הבאים: Module 1: Performance Engineering Overview Module 2: Performance Architecture and Design Module 3: IE and IIS 7.0 Performance Module 4: Performance Modelling Module 5: NET FX Performance Fundamentals Module 6: Troubleshooting common performance bottlenecks משתתפי הסדנה הסכימו להצטלם במיוחד לבלוג...
ארכוויז מס’ 4 – מה הקונפיגורציה האופטימאלית ל-WCF?
שירות ניתוח פערי ארכיטקטורה (PDF) שירות ניתוח פערים ושיפור ביצועים (PDF) שירות תכנון וניתוח בדיקות ביצועים (PDF) סדנת פיתוח מערכות מונחה ביצועים (PDF) WCF היא טכנולוגיה המאפשרת הפעלת רכיבים מרחוק ויש לה מספר מקומות הניתנים לאופטימיזציה: Proxy . יצירת Proxy היא פעולה לא קלה ולכן ניתן להפתות לבצע Caching ל-Proxy כדי לחסוך זמן הקמת Proxy מחדש. מצד שני Cached Proxy יכול ליצור מצב שבו הערוץ תקוע או תפוס ולא ניתן לבצע עוד פניות – משהו שחוסם יכולת Scalability. אבטחת מידע . חלק מ-Bindings מפעילים Windows...
Using ASP.NET to Generate Dynamic JavaScript
     NOTE: I am excited to have Rick Kiessig as our guest blogger. Rick worked with Myspace, MSN, eBay, and Silicon Valley’s MTC to mention a few. His recent work is a book Ultra-Fast ASP.NET which anyone who’s serious about performance should buy once it is out this month. Rick shares with us a little trick about how to generate dynamic JS so it can be then cached to boost performance. שירות ניתוח פערי ארכיטקטורה (PDF) שירות ניתוח פערים ושיפור ביצועים (PDF) שירות תכנון וניתוח...
ארכיטיפ מס' 1 – שאל על נהלים מרכזיים
אחד הפעילויות המרכזיות בבניית הארכיטקטורה (או סקר ארכיטקטורה) היא זיהוי תסריטים/תרחישים מרכזיים. הכללים לזיהוי התרחישים הם פשוטים: תרחיש הכי שכיח, למשל, באתר www.bing.com הוא חיפוש. תרחישים שמערבים הרבה טכנולוגיות או תרחישים מסובכים , לכן הם מהווים סיכון גבוהה. תרחישים שנמצאים בפוקוס של קודקודים – למשל, דוח רווח והפסד שמופק פעם בשנה עבור מנכ”ל. הנה טיפ קטן שיכול לזהות תרחישים קריטיים מרכזיים – שאל על הנהלים המרכזיים. לדוגמה: בבית חולים יש נוהל “מסדר אחיות” בשעה 10:00. בשעה הזו האחיות עוברות בין החולים...
בעיות ביצועים? - תתחיל בבדיקה בסיסית של הרשת
הרבה בעיות ביצועים ניתן לזהות ע"י בדיקות מאוד בסיסיות. Clint Huffman, האיש שמאחורי ה-PAL TOOL שניתן להורדה בחינם כאן - http://www.codeplex.com/PAL , משתף טכניקות פשוטות ע"י כלי מדהים - ping ו-pathping שנמצאים בכל התקנה של Windows. סיכום שלבים לביצוע להלן סדרה של פעולות ש-Clint מבצע כדי לזהות בעיות ברשת: Ping. בצע פקודה ping משרת מקור לשרת היעד. ב-LAN זה אמור לקחת מספר מילי שניות, אחרת ישנה בעיה ברשת. Pathping . שלח פקודת Pathping ממחשב מקור למחשב יעד. הדוח שיוצא בסוף אמור להראות כמה Packetים...
מיחשוב מקבילי - ניצול מעבדים מרובים לשיפור הביצועים
אז יש לך מחשב עם 8 מעבדים. האם אתה מנצל את הכוח הזה? כדי לעזור לך במשימה הזו מיקרוסופט מציע Parallel Extensions to the .NET מה זה Parallel Extensions For .Net? הסרטון הזה מסביר די יפה את הראיון והמימוש של Parallel Extensions for .Net: Parallel Extensions for the .NET Framework - ParallelFX איך אני מתחיל היום? דף הבית של מיחשוב מקבילי נמצא כאן - Parallel Computing . קרא את מה שיש לסומה להגיד בעניין מחשוב מקבילי - Welcome to Parallel Computing צפה בסרטון פשוט המגדים שוני בין מיחשוב רגיל למיחשוב מקבילי...
More Posts Next page »