آموزش دایرکت ادمین، سی پنل، وب سایت پنل

خانه / Cache / چگونه سرعت سایت خود را بهبود دهیم؟

چگونه سرعت سایت خود را بهبود دهیم؟

چگونه سرعت سایت خود را بهبود دهیم؟
۵ (۱۰۰%) ۱ vote

How to Improve Your Website’s Speed?

دلایل کند بودن سایت چیست؟ و چگونه میتوان سرعت سایت را افزایش داد؟

در این مقاله سعی داریم با دلایل عمده کند بود یک سایت را بررسی کنیم تا اگاهی بیشتری در این مورد در اختیار مدیران سایت قرار گیرد.

Server performance

مطمئنا سرور ، زیرساخت و سخت افزار استفاده شده برای میزبانی یک سایت یکی از مهمترین پارامترها تاثیر گذار بروی سرعت سایت می باشد.

عملکرد ضعیف سرور همیشه سایت شما را کند خواهد کرد. مطمئنا وقتی از یک سرور اشتراکی برای میزبانی سایت خود استفاده کنید، درخواست های سایت شما با سرعت کمتری نسبت به یک سرور اختصاصی باز خواهد شد، زیرا سایت شما در صف پاسخ گویی سرور، به درخواست هایی که به تمام سایت های آن سرور می آید، منتظر خواهد ماند. مطمئنا وقتی سایت شما روی یک سرور (اختصاصی یا شاید حتی مجازی) در کنار تعداد زیادی سایت دیگر میزبانی میشود، عملکرد آن نیز به همان نسبت ضعیف تر و کندتر از میزبانی بروی سرور اختصاصی یا یک سرور مخصوص کانفیگ شده خواهد بود.

  • مشکل بسیار بدتر این است که برای سرورهای اشتراکی از سرور مجازی به جای سرور اختصاصی استفاده شود، در این حالت کارایی و پاسخ گویی به مراتب بدتر و ناامید کننده تر است و با توجه به اینکه مالک سایت نیز از زیرساخت میزبانی شده بروی سرور اشتراکی اطلاع ندارد
    (وشاید به علت هزینه کمتر آن را انتخاب کرده است) ممکن است با مشکلات ، قطعی و کندی ها مکرر مواجه شود.
  • گاهی نیز در ارائه سرویس اطلاعاتی ناصحیح در پلن های ارائه شده به کاربر داده میشود و با توجه به عدم آگاهی کاربر انتخاب نادرستی انجام میشود. به عنوان مثال در برخی از سرویس های اشتراکی میزان منابع سرور مانند Ram و تعداد core های CPU نیز مشخص شده است که این موضوع به دو علت نمیتواند نمایانگر کیفیت بیشتر باید:
    ۱- دلیل اول اینکه در صورتی که سیاستی برای تخصیص منابع بروی سرور وجود نداشته باشد عملا این مقادیر و منابع غیرواقعی خواهد بود و هر سایت به میزان نیاز خود از منابع استفاده خواهد کرد( ممکن است کمتر یا حتی بیشتر از منابع عنوان شده) و مشکل بدتر زمانی است که چندین سایت منابع را بشدت درگیر کنند و سایر سایت ها امکان مصرف مشابه و یکسان را نخواهد داشت و سایت کند خواهد شد.

۲- در صورتی که با ابزار خاص مانند cloudlinux  منابع هر سایت را محدود کنند نیز دو حالت رخ خواهد داد، اول اینکه سایت کمتر از آن منابع احتیاج داشته باشد که در صورت عدم وجود محدودیت نیز منابع زیادی مصرف نخواهد کرد و عملا منابع عنوان شده کارایی چندانی ندارد، دوم اینکه سایت نیاز به منابع بیشتری از منابع تخصیص داده شده نیاز داشته باشد که با توجه به محدود بودن منابع امکان استفاده بیشتر وجود ندارد و سایت مجددا کند و با تاخیر خواهد بود.

بنابراین باید در صورت انتخاب هاست اشتراکی به این نکات که ممکن است فریبنده نیز باشد دقت کنید تا از مشکلات در آینده جلوگیری کنید. قیمت ارزان سرویس مطمئنا نمیتواند کیفیت آن را تضمین کند.

 

همچنین موارد دیگری مثل پورت سرور و uplink  دیتاسنتر نیز می تواند بروی سرعت انتقال اطلاعات تاثیر گذار باشد، بنابراین استفاده از زیرساخت های قدرتمند و پهنای باند کافی میتواند به بهبود سرعت سایت کمک کند.

Server locationl

مکان و  موقعیت فیزیکی سرور نیز یکی دیگر از عوامل مرتبط با سرعت بازشدن سایت در ارتباط است، وقتی کاربر بروی یک لینک کلیک میکند اطلاعات به سرور میزبان اطلاعات ارسال و از آن دریافت میشود. بنابراین مکان سرور به هر میزان دورتر از کاربر نهایی باشد، باز شدن سایت نیز با سرعت کمتری انجام میشود.

  • تکنولوژی های جدیدی مانند CDN و cluster  کردن اطلاعات و سرورها در چندین نقطه از جهان این مشکل را رفع کرده است، اما توجه کنید که سایت های ایرانی اغلبا از داخل کشور مشاهده میشوند و به همین دلیل میزبانی سایت در سرورهای داخل کشور این مشکل را تا حدود زیادی رفع میکند و اغب نیازی به فناوری CDN  برای سایت ها وجود ندارد.

 

Lots of traffic

اگر سایت شما ترافیک بالایی دارد مطمئنا باید به فکر یک سرور کانفیگ شده و استفاده از تکنولوژی های مفیدتری برای میزبانی سایت خود باشید.

حتی استفاده از یک سرور اختصاصی نیز ممکن است نیاز شما را رفع نکند.  بنابراین باید از سرویس مناسب برای میزباینی سایت خود استفاده کنید. استفاده از سیستم پخش کردن ترافیک بروی چند سرور یا استفاده از لودبالانسر به همراه کش سرور به شما کمک میکند تا ترافیک بالای ورودی به سرور را کنترل و پاسخ دهید.(سرویس نیترو را تماشا کنید)

باید ترافیک سایت را همیشه آنالیز کنید تا مدیریت بهتری بروی آن انجام شود، این موضوع که بیشتر ترافیک از کجا و چه موضوعاتی ناشی میشود میتواند در جداسازی یا تفکیک سرورها و ترافیک به شما کمک کنید.(تکنولوژی لود بالانس و کش)

همچنین ممکن است شما تحت حملات DDOS  یا brute Force  قرار گرفته باشید و ترافیک ورودی سایت واقعی نباشد بنایراین باید سرور و ترافیک ها همیشه مانیتور شود ( مانیتورینگ هوشمند سرورستاپ را مشاهده کنید)  و از یک فایروال مناسب جهت جلوگیری از اتک های رایج استفاده کنید (سیستم فایروال سرورستاپ)

Extra large images (and complex file format)

ایا روزهای استفاده از اینترنت dial up  را بیاد دارید که برای لود شدن یک عکس باید چندین دقیقه منتظر میشدید، با افزایش پهنای باند زیرساخت ها و خطوط اینترنت این موضوع به خاطره تبدیل شده است اما قانون کلی همچنان به همین شکل است.
زمانی که شما درخواستی را به سرور ارسال میکنید تمام فایل های مرتبط با سایت باید ارسال شود به این معنی که هر چقدر اطلاعات و فایل های سایت شما بیشتر و حجیم تر باشد، کاربر باید زمان بیشتری منتظر باشد تا سایت لود شود. پس دفت داشته باشید حجم صفحه های سایت شما از میزان مشخصی بیشتر نشود و سعی کنید تصاویر سایت را optimize  کنید و از فرمت های مناسب مانند JPG، PNG و GIF برای وب استفاده کنید. در حال حاضر ابزارهای زیادی برای بهینه سازی حجم تصاویر سایت ها وجود دارد. همین موضوع میتواند در مورد فایل های css و js سایت شما نیز صادق باشد. پس بهتر است از یک متخصص برنامه نویسی کمک بگیرید.
اما راهکار دیگری نیز که به این مشکل کمک میکند استفاده از سیستم کش هوشمند میباشد، با استفاده سیستم کش میتوانید صفحات و فایل های پربازدید را با الگوریتم خاص و برای مدت زمان مشخصی کش کنید تا سرعت لود شدن سایت افزایش چشمگیری داشته باشد.

از Gzip استفاده کنید که به طور قابل توجهی حجم صفحه ارسال شده به مرورگر را فشرده می کند، که پس از آن می تواند اطلاعات را استخراج و آن را برای کاربر نمایش میدهد.

Too many file requests

هر عنصر کوچک در سایت شما نیاز به درخواست یک فایل برای بارگذاری دارد. هر فایل CSS، هر تصویر، هر دکمه به اشتراک گذاری اجتماعی و هر قطعه ای از جاوا اسکریپت یک درخواست فایل جدید است.
سرور شما تنها می تواند یک مقدار مشخصی از درخواست ها را در هر ثانیه پاسخ دهد. به عنوان مثال اگر هر مراجعه به سایت شما ۵۰ درخواست را شامل شود، اگر ۱۰۰ نفر تمام وقت و بی وقفه سایت را مرورکنند، نیاز است ۵۰۰۰ درخواست پاسخ داده شود. خب کاملا مشخص است که نوع سرور، قدرت سخت افزاری، وب سرور، کانفیگ دیتابیس و …. در عملکرد سرور به درخواست ها موثر خواهد بود.
شاید بهترین راهکار پخش ترافیک بین جندین سرور یا استفاده سیستم لود بالانسر باشد تا یک سیستم بصورت توزیع شده برای پاسخ گویی به درخواست ها عمل کند.

 Too many plugins

افرادی که از وردپرس استفاده میکنند بیشتر این موضوع را درک میکنند، نصب هر پلاگین تعدای فایل css  و برخی javascript  را ایجاد میکنند،  بنابراین هر پلاگین اضافه تعدا فایل های بیشتری برای فراخوانی ایجاد میکند.  بهتر است قبل از نصب هر پلاگین بپرسید که آیا واقعا نصب این پلاگین لازم است!!

 

Template

گاهی یک قالب نیز میتواند باعث مشکل شود، مخصوصا در CMS  های مدیریت محتوا مانند وردپرس، جوملا و …
در بسیاری از موارد قالب های از پیش طراحی شده که دارای مشکلاتی در طراحی و بهینه بودن است، استفاده شده که مشکلات کندی را منجر میشود.
البته مشکلات قالب ها نیز مشابه موارد مرتبط با نوع کدنویسی و تعداد فایل ها و بهینه نبودن آن ها می باشد که باید توسط یک تیم متخصص بررسی، بهینه سازی و رفع مشکل شود.

عدم بروز رسانی

بروز نبودن CMS  ها و پلاگین های سایت نیز میتواند از دلایل کندی سایت باشد، بنابراین بروز رسانی سایت و موارد مرتبط با آن را بهتر است همیشه بصورت مداوم انجام دهید.