اگر از همراهان همیشگی پرشین تولز هستید، حتماً مقاله قبلی در مورد رفع خطاهای سایت به کمک GTmetrix را خواندهاید! در این مقاله هم قصد داریم به بررسی ادامه این بحث بپردازیم تا بتوانید با افزایش سرعت سایت، وضعیت سئوی سایت خود را بهبود ببخشید و رضایت کاربران را هم جلب کنید.
-
کاهش تعداد دامنههای مجزا
قدم اول این است که ابزار درست را انتخاب کنیم و یا از ابزار جایگزین که کارکرد درستتری دارند استفاده کنیم. به عنوان مثال بیشتر سایتهای ایرانی از آمارگیرهایی مثل وبگذر استفاده می کنند که اصلا بهینه سازی نشدند. حتی اگر از کاربران قدیمی اینترنت باشید، این سایت بیش از ۵ سال است که نسخه جدیدی را تحت عنوان نسخه Beta ارائه داده و هنوز هم در همین حالت قرار دارد. به جای استفاده از سایتهایی مثل وبگذر میتوانید از گوگل آنالیتیکس استفاده کنید.
مورد پر استفاده بعدی استفاده از فونتهای گوگل است که برای فونت فارسی اصلا کاربردی ندارد و باید حذفشان کنیم. این مشکل بیشتر در سایتهایی است که با قالبهای آماده وردپرس ساخته شدند و مترجم قالب هم کاری برای بهبود فونتها انجام نداده و فونتهای فارسی رو هم که اضافه کرده باعث شده موقع لود سایت هم فونت گوگل داشته باشیم و هم فونت فارسی که در این بین از فونت گوگل استفاده نمیشود و فقط باعث میشود که تعداد درخواست HTTP به صورت اضافی افزایش پیدا کند.
اگه از نقشه گوگل هم برای نمایش موقعیت مکانی استفاده میکنید سعی کنید در یک صفحه خاص مثل صفحه تماس باشد و از نمایش نقشه که در بیشتر سایتها در فوتر سایت قرار میدهند، دوری کنید. برای این که نتیجه بهتری داشته باشید پیشنهاد میکنم فایلهای JS را با استفاده از راهنمای آموزش رفع خطای Defer parsing of JavaScript در GTmetrix بهینه سازی کنید که در بخشهای قبلی مقالات بررسی کردیم، رفع کنید.
-
استفاده از فایلهای خارجی در سرور سایت
مواردی که مربوط به سایت خارجی هستند را که در راهکار اول به آنها اشاره کردیم، سعی کنید داخل سایت خودتان استفاده کنید. شما میتوانید به جای اینکه برخی از فایلها را از خود دامنه سایت خارجی دریافت کنید داخل سایت خود آپلود کنید و با تغییراتی که در مسیر کدنویسی فایل میدهید، خطای DNS lookup را کمتر کنید. سعی کنید تا جایی که میتوانید میزان استفاده از DNS رو محدود به سایت خودتان و یک شبکه توزیع محتوای CDN کنید و از منابع دیگر استفاده نکنید. چرا که شما فقط به دامنه خود نیاز دارید و سایر دامنهها فقط برای استفاده از ابزار خاصی هستند.
-
استفاده از فایلهای خارجی روی سرور CDN
استفاده از CDN در سایت میتواند روی بهبود سرعت سایت تاثیر خیلی خوبی داشته باشد و بر اساس موقعیت مکانی کاربران فایلها را از نزدیک ترین سرور در اختیارشون قرار دهد. بنابراین سعی کنید زمانی که میخواهید از فایلهایی که مربوط به دامنههای خارجی هستند روی دامنه خود استفاده کنید در حالت CDN باشد که سرعت بیشتری رو در سایت داشته باشید.
-
کاهش تعداد درخواست HTTP
دلیلی که باعث به وجود آمدن این همه مشکل و تعداد بالا در DNS lookup میشود، بالا رفتن تعداد درخواست HTTP است. شما میتوانید با کاهش تعداد درخواست های HTTP که مربوط به دامنههای دیگر هستند این میزان درخواست را هم بهبود ببخشید. این کار با ترکیب کردن و ادغام فایلها یا استفاده به صورت درون خطی امکان پذیر خواهد بود. مثلا ممکن است به یک قطعه کد چند خطی CSS از یک دامنه دیگر که مربوط به ابزار یک سایت است، نیاز داشته باشید که از طریق فایل لود میشود، راهکار خوب در این زمان این است که کدهای CSS را بردارید و به صورت درون خطی در هر صفحه که مایل به استفاده ازش هستید، استفاده کنید.
-
به حداقل رساندن رکوردهای CNAME
استفاده از CNAME یکی از پرکاربردترین رکوردهای DNS است. این نوع رکورد از نام یک دامنه دیگر توسط alias استفاده میکند تا به دامنه دیگه وصل شود. به عنوان مثال برخی سایتها میآیند و در یک ساب دامنه از فروشگاههایی که به صورت پورسانتی هستند استفاده میکنند. یعنی اگر دامنه ما Domain.com باشد و بیاییم از قابلیت پورسانت دادن سایت X روی ساب دامنه Store.Domain.com استفاده کنیم، این کار توسط CNAME انجام میگیرد. در این حالت اتفاقی که میافتد، این است که برای نمایش محصولات ابتدا باید DNS lookup شروع به پیدا کردن آیپی ساب دامنه کند و بعد از پیدا کردن آن توسط alias حالا شروع به پیدا کردن ip سایت فروشگاهی که به صورت پورسانتی است، کند و محتوا را نمایش دهد. در این صورت اگر در حالت معمولی ۸۰ میلی ثانیه برای پیدا کردن یک DNS طول بکشد، در این حالت ممکن است تا بیش از دو برابر زمان (بسته به وضعیت سرور سایت نهایی) زمان لازم باشد.
-
استفاده از راهنمای Defer parsing of JavaScript
یکی دیگر از راهکارهایی هم که میتوانید به کمک آن ارور Reduce DNS lookups را کمتر کنید استفاده از راهکارهایی است که در مقالات قبلی با عنوان رفع خطای Defer parsing of JavaScript در GTmetrix به معرفی آنها پرداختیم.
-
فعال کردن Keep Alive
فعال کردن Keep Alive در سرور این امکان را به شما میدهد تا همه فایلهای css و js، تصاویر و… در درخواستهای جدا از هم از سرور خواسته میشود و یک باره شروع به دریافت در یک خط زمانی خواهند کرد. پس در این صورت کاهش تعداد درخواست در سایت ایجاد شده و باعث افزایش سرعت سایت و رفع کندی در سایت خواهد شد.
در مقاله بعدی به ادامه این بحث میپردازیم.