PDA

View Full Version : حرفه ای: چگونه سرعت اجرای کدهای نوشته شده توسط ASP.NET را بالا ببریم



xalerebvar
یک شنبه 18 دی 1390, 11:36 صبح
در این تاپیک سعی بر آن است که راهکارهایی به منظور بالا بردن سرعت وب سایت های نوشته شده با ASP.NET و به تبع آن کوئری های SQL ارائه شود، از تمامی برنامه نویسان عزیز دعوت می شود تجارب خود را در این رابطه در این تاپیک مطرح نمایند.

xalerebvar
یک شنبه 18 دی 1390, 12:34 عصر
با معرفی پایگاه داده های رابطه ای تحولی در برنامه نویسی شی گرا به وجود آمد و ارتباط زبان مادر با پایگاه داده فوق العاده ساده و راحتر شد ، هدف از ارتباط با پایگاه داده اجرای 4 کوئری SELECT - INSERT - UPDATE - DELETE می باشد که به ازای هر بار اجرای این کوئری ها بایستی ارتباط با بانک برقرار گردیده و کوئری ها را روی جداول مربوطه اجرا کرد ، حال اجرای این کوئری ها مدت زمانی طول خواهد کشید که می توان با راهکارهای زیر این مدت زمان را کاهش داد و امنیت این کوئری ها را جهت جلوگیری از تزریق کدهای SQL بالاتر برد.
در دات نت فریم ورک برای ارسال داده ها به داخل جدول ها شی ای به نام پارامتر وجود دارد که این شی همانند یک متغیر عمل کرده و جایگزین مستقیم داده ها ی اشیائی مانند تکست باکس می شود، بهتر است جهت ارسال مقادیر پارامترهائی را تعریف کرده و ارسال مقادیر را از این پارامترها انجام داد
حدالامکان از پروسیجر های ذخیره شده برای اجرای کدهای SQL استفاده شود

aminghaderi
دوشنبه 19 دی 1390, 14:26 عصر
کار خوبی کردید که این تاپیک رو زدید ، البته از جایی که اکثرا ما ایرانی ها عادت کردیم فقط علم از مردم یاد بگیریم و حتی زورمون می یاد یه تشکر الکی بایت این در خدمت رایگان بکنیم و برای همون مردم خودمون رو بگیریم و اگر چیزی یاد داربم به کسی نگیم ، مبادی چیزی که یاد داریم 4 نفر دیگه یاد بگیرند و فکر می کنیم فقط ما از اون خبر داریم ، معمولا زیاد این جور تاپیک ها پر بار نمی شه یا هم پر از جواب های نا مرتبت می شه ...(بی خیال!)
جا داره از تمامی اساتیدم که قبلا در این تالار حضور داشتند و الان دیگر نیستند ، تشکر و قدر دانی کنم.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
چیز هایی که فعلا به ذهن من حقیر می رسه و از تجربه ناچیز در طراحی وب بدست اوردم و یا جایی خوندم و شنیدم :
1- به صورت شی گرایی کد نوشتن. (کد ها به صورت کلاس و توابع و فضای نام نوشته و استفاده شود) به این وسیله هم کنترل خطا بالا می رود و هم برای توسعه به مشکل نمی خورید.
2- بهترین الگریتم رو از بین چند الگریتم انتخاب کنید.(یعنی حتمی حد اقل 2 الگریتم داشته باشید.)
3- یادمان باشه مادام به فکر استفاده بهینه از منابع سخت افزاری باشیم.
4- به گزینه های سریالیزه و کپسوله کردن در Asp.Net توجه زیاد داشته باشید.
5 - در طراحی استایل سایت ، به صورت TableLass کار کنید.
6 - SEO رو حتمی رعایت کنید ، اعتبار یه سایت چه از نظر فنی و چه از نظر محتوا به نعداد بازدید های اون بستگی داره و سایتی که SEO نداشته باشه بازدید نداره ، مگر سایت شما یه نرم افزاری مثل فیس بوک باشه که نیاز به جستجو نداشته باشه ، که همون هم بعضی ها مثل من که املا مشکل دارند باید در گوگل جستجو کنند تا اون رو پیدا کنند و این یعنی فیس بوک هم نیاز به سئو داره.
7- سعی شود زیاد صفحه وردی سایت رو از نظر محتوا شلوغ نکنید ، برای مثال نهایتا 5 مطلب بیشتر در صفحه اول قرار ندید تا کاربر در هنگام لود صفحه دچار مشکل نشود.
8- صفحه ها رو فشرده سازی کنید.
9- کامپوننت هایی استفاده کنید که فشرده سازی شده اند و مهندسی طراحی شدند.
10- سایتتون رو حتمی به صورت DLL در هاست قرار دهید تا موتور Asp.Net مجبور به ترجمه مجدد نشه.
11- یه هاست خوب با 99% uptime پیدا کنید و استفاده کنید. (هزینه زیاد به معنی هاستینگ خوب نیست ، ولی هزینه پایین به معنی هاستینگ ضعیف هست ، برای این مورد از همکاران قبل خرید مشورت بگیرید.)
12- برای این که وبسایت شما قابلیت توسعه داشته باشه از UserControl استفاده کنید.(این کار باعث استفاده مجدد از کد هم می شود)
13- یادمان باشه زکات علم آموزش هست و هر چه آموزش بدیم خداوند بیشتر دریچه های علم رو به روی ما باز می کند.

با آرزوی پیشرفت روز افزون برای همه دوستان.

dorparasti
دوشنبه 19 دی 1390, 15:27 عصر
در کنار تمام این مطالب مهم ، یه نکات ریزی هم هستن که بازهم باعث بهبود بیشتر سرعت میشن . شاید خیلی ها اصلن بهشون توجه نکرده باشن ( شامل خودم ) مثل اینجا (http://tostring.blogfa.com/post-11.aspx)و اینجا (http://tostring.blogfa.com/post-10.aspx) .

aynehband
سه شنبه 20 دی 1390, 07:12 صبح
caching صفحه و db هم بسیار موثرند.