تعداد ویدئو | 32 |
---|---|
زمان دوره | 01:44:20 |
مترجم | پرووید |
ناظر ترجمه | پرووید |
دوبلر | پرووید |
ناظر دوبلاژ | پرووید |
سایت منتشر کننده | پلورال سایت |
آموزش بهبود پرفورمنس و کارایی برنامه های سی شارپ 10 یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته آموزشی، آموزش بهبود کارایی برنامه های سی شارپ 10 است که با نام اصلی C# 10 Performance Playbook از شرکت Pluralsight منتشر شده است.
در اکثر برنامه ها، مشکلات مربوط به عملکرد مشکلی ایجاد نمی کند. به عبارت دیگر، سناریوهای خاصی وجود دارند که در آنها شما باید نگران عملکرد باشید. این سناریوها شامل موارد زیر هستند:
در یک سرور با بار بالا: بسیاری از request ها را با فرکانس بالا پردازش کردن: برای مثال چیزی شبیه به موتور جستجوی گوگل، که در آنها عملکرد بیشترین اهمیت را دارد. چند بهینه سازی می تواند به طور قابل توجهی زمان پاسخ و یا response time را کاهش دهد یا ده ها هزار دلار در منابع ابری و cloud resource صرفه جویی کند. در چنین سرورهایی، باید به طور فعالانه و پیش قدمانه عملکرد را به طور مرتب آزمایش کنید.
در الگوریتم ها: بهینهسازی عملکرد یک الگوریتم با زمان اجرای طولانی میتواند باعث صرفهجویی در زمان کاربر شود، یا امکان تحمل بار بسیار بالاتر را فراهم کند.
در یک کتابخانه یا یک افزونه: هنگامی که یک کتابخانه یا یک افزونه توسعه را می دهید، آن کتابخانه یا افزونه به طور بالقوه در یک سرور با بار بالا یا برنامه های حساس به عملکرد و یا performance-sensitive استفاده خواهد شد. علاوه بر این، کتابخانه یا افزونه شما با سایر کتابخانه ها و یک برنامه های دیگر در یک فرآیند و یا process یکسان قرار خواهد گرفت. کد شما ممکن است در مسیرهای داغ و یا hot path ها فراخوانی شود یا ممکن است از منابع زیادی استفاده کند که به عملکرد کلی فرآیند و یا process لطمه می زند. به همین دلیل، بهتر است برای بدترین سناریو در توسعه کتابخانه و افزونه برنامه ریزی کنید.
همه چیز را اندازه گیری کنید: وقتی با عملکرد سروکار دارید، همه چیز را اندازه گیری کنید. فاکتورهای زیادی در برنامه های دات نت وجود دارند که بایستی اندازه گیری شوند. سوالاتی از قبیل اینکه چه زمانی اندازهگیری کنیم، چه چیزی را اندازهگیری کنیم، و چگونه اندازهگیری کنیم نیز مطرح هستند.
از performance profiler استفاده کنید: هنگامی که صحبت از عملکرد به میان می آید، یک performance profiler بسیار مفید خواهد بود. می توانید از یک performance profiler برای شناسایی مشکلات عملکرد و مشخص کردن علت های خاص آن استفاده کنید. یک performance profiler به شما امکان می دهد بخشی از زمان اجرای برنامه خود را ضبط کنید، آن را به عنوان یک snapshot ذخیره کنید و آن را بررسی کنید.
به فشار GC توجه کنید: فرآیند garbage collection و یا GC بسیار با عملکرد مرتبط است. به جرات می توان گفت که مهم ترین چیزی که در یک فرآیند دات نت از نظر عملکرد باید فهمید GC است. در حالی که تخصیص ها و یا allocation بسیار ارزان هستند، فرآیند GC گران است و ما باید دائماً مراقب آن باشیم. به طور خاص، ما باید به دو معیار نگاه کنیم: درصد زمان صرف شده در فرآیند garbage collection و فرکانس جمع آوری GC در نسل دوم آن و یا همان Gen 2.
به JITter توجه کنید: کدهای دات نت به جای کامپایل شدن به کد بومی و یا native code به کد MSIL کامپایل می شوند. این همان ترفندی است که توسط Java JVM نیز مورد استفاده قرار می گیرد که به برنامه های جاوا اجازه می دهد در همه جا اجرا شود. این روال با با کامپایل به موقع و یا just-in-time compilation که به بیان کوتاه به آن JIT می گویند اتفاق می افتد. اولین باری که یک متد فراخوانی می شود، کامپایلر JIT و کد MSIL را به کد بومی تبدیل می کند. این روال بسیار سریع است، اما همچنان می تواند باعث مشکلات عملکرد، به خصوص در هنگام راه اندازی و یا startup شود. معمولاً عملکرد JIT مشکلی ایجاد نمی کند و نیازی به بهینه سازی چیزی وجود ندارد. اما، در برخی موارد، ممکن است بخواهید JITter را با تغییرات کوچکی تنظیم کنید.
فصل اول: مقدمه دوره آموزشی
فصل دوم: بررسی کردن عملکرد کارایی و یا Performance
فصل سوم: بهینه سازی کردن کدهای سی شارپ به صورت خط ب خط – قسمت اول
فصل چهارم: بهینه سازی کردن کدهای سی شارپ به صورت خط ب خط – قسمت دوم
فصل پنجم: بررسی عملکرد برنامه برای بهبود Performance
فصل ششم: ایجاد معماری صحیح برای افزایش سرعت
تمامی حقوقی مادی و معنوی متعلق به گروه آموزشی پرووید است.
نقد و بررسیها
هیچ دیدگاهی برای این محصول نوشته نشده است.