مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

موسوی

عضویت از 1393/01/15

بررسی علت کند بودن یک سایت

  • دوشنبه 20 شهریور 1396
  • 13:45
تشکر میکنم

با درود به همه

ما یه وب سایت داریم که خیلی کنده و سرعت واکشی اطلاعات برای صفحه اصلی به 20 ثانیه هم میرسه این وب سایت داره از یک سرور فیزیکی اختصاصی استفاده میکنه که توان بالایی داره طوری که در بدترین شرایط 50 در از رم سرور در حال استفاده است  حال با بررسی های انجام شده من موارد زیر رو تو برنامه پیدا کردم که احساس میکنم باعث کندی سیستم میشه 

1-همه کنترل های استفاده شده از نوع دات نتی بوده و در بهترین شرایط فقط از script mangerاونهم فقط برای نمایش پروگرس بار استفاده شده  یعنی میزان رفرش صفحه زیاده و اجکس تقریبا تعطیله 

2-در هنگام واکشی رکورد ها از پایگاه داده اونها رو داخل سشن میریزه به عنوان دیتا تیبل و از سشن ها به عنوان متغیر های سراسری مکرر استفاده شده نه اینکه مثلا فقط برای کد شناسایی کاربر و اون چیزی که واقعا از سشن انتظار داریم

3-query های مورد استفاده در sqlserverبه میزان زیادی وابسته به viewها هستند وفیلتر ها بعد از اجرای view اعمال میشوند که میتونیم این query ها رو با دستورات مقرون به صرفه تر جایگزین کنیم

4- نکته دیگه اینکه تعداد hidden fieldها خیلی زیاد هست  و صفحه اصلی 2500خط کد Aspxداره,5000خط کد csداره یعنی میشه این صفحه رو شکست به چند تا صفحه کوچکتر

حال سوال اینجاست با توجه به اینکه قطعا موارد بالا باید اصلاح بشه اولویت در اصلاحات با کدوم یک از گزینه های بالا باشه

پاسخ های این پرسش

تعداد پاسخ ها : 2 پاسخ
کاربر سایت

رضا نصیری

عضویت از 1392/10/01

  • دوشنبه 20 شهریور 1396
  • 15:02

موردی که گفتید رم سرور بیش از حد داره ازش کار کشیده میشه , جوابشو هم خودتون دادید. برای اینکه کمتر از منابع سرور استفاده بشه از سیشن برای نگهداری لیست ها استفاده نکنید. چون روی رم سرور فضا اشغال میکنند. میتونید از کلاس ها و فیبلدهای استاتیک استفاده کنید.

و اما کوئری ها رو بررسی کنید. ایندکس جداول ,  وابستگی ها و  نرمال سازی جداول , همه در سرعت واکشی نقش مهمی دارند.

حتما دقت کنید در کوئری ها و sp ها و .. هرگز از ستاره (*) استفاده نکنید.

منظورم اینه

 
 select * from tblName 

نزنید. حتی اگر یک فیلد هم داشتید نام فیلد را بجای ستاره بنویسید. 

select fName from tblName

و مورد بعدی اینکه ایجکس خود asp چندان کارایی نداره(از نظر بنده) - میتونید از jquery ajax استفاده کنید.

کاربر سایت

موسوی

عضویت از 1393/01/15

  • دوشنبه 20 شهریور 1396
  • 15:29

ممنون از پاسخ شما فقط الان اول کدوم رو اصلاح کنم کویری ها یا سشن ها؟

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)