آموزش بهینه سازی سایت با کمک GTmetrix – رفع خطاهای YSlow
در این مقاله آموزشی قصد داریم با اررور دیگری از سایت GTmetrix یعنی Reduce DNS lookups (Minimize DNS lookups) بپردازیم.
در این مقاله به روش رفع خطای Reduce DNS lookup و بهبود سرعت و سئوی سایت خواهیم پرداخت.
توضیحی مختصر دربارهی Reduce DNS lookups
اولویت: پایین
میزان سختی: متوسط
میانگین امتیاز: 70%

مفهموم DNS lookups چیست؟
به آدرس یک سایت Hostname گفته میشود. مثلا Dobest.ir هاستنیم سایت ما میباشد.
تمامی Hostname ها استعاره از IP خاصی میباشند که نام این استعاره alias میباشد.
اگر دقت کنید در تنظیمات DNS ها رکوردی به نام A وجود دارد.
در این رکورد نام سایت Hostname را میدهیم تا به یک IP خاص متصل شود.
هنگامی که در مرورگرتان یک Hostname را وارد میکنید، سیستم شما IP آن را جستجو میکند.
اگر این IP در سیستم شما نبود، توسط مودم اینترنت به دنیای بیرون متصل خواهد شد و action ی با نام DNS lookups (جستجو DNS) ایجاد خواهد کرد.
در این مرحله نخست به DNS Server های ISP محلی ارائه دهنده اینترنت شما مراجعه خواهد کرد.
اگر آدرس ای.پی Hostname مورد نظر را نیافت به یک DNS Server بالاتری مانند ISP های جهانی مراجعه میکند.
درنهایت در صورتی که باز هم پاسخی پیدا نکرد به بالاترین مرجع که InterNIC است، مراجعه خواهد کرد.
بهتر است بدانید InterNIC پایگاه داده ثبت نام دامنه (Domain Registration Database) میباشد.
همینطور InterNIC بزرگترین و بهترین DNS Server است.
شما برای جستجو درباره سایت مورد نظر خود و همچنین webserver آن، میتوانید وارد سایت internic.net شده و از بخش WhoIS کمک بگیرید.
درنتیجه به عمل جستجوی IP سایت در بین DNS Serverها، DNS lookups میگویند.
تا زمانی که پروسه DNS lookups تمام نشود، مرورگر شما قادر نخواهد بود تا فایلهای بازم جهت نمایش سایت را دانلود کند.
معمولا پروسه DNS lookups بین 20 تا 120 میلی ثانیه زمان میبرد.
مثال جهت درک بهتر DNS lookups
در زیر با شما مثالی را بررسی خواهیم کرد که نشان میدهد، چگونه DNS lookups در بهینه سازی سایت تاثیرگذار است.
بنابراین از ابزار آنلاین webpagetest.org جهت تست سرعت سایت Dobest استفاده میکنیم.
در آدرس webpagetest.org در سربرگ Details به این مورد میپردازیم.
مطابق عکس بالا، سایت دوبست از 21 درخواست ایجاد شده است که تنها 3 تای آنها DNS lookups میباشند.
با توجه به بررسی بالا متوجه خواهیم شد که دوبست زیر 100 میلی ثانیه زمان لازم است، که عالی است.
این زمان نشان از بهینه سازی مناسب و صحیح سایت دارد.
ولی به عنوان مثال فکر کنیم این زمان 3120 میلی ثانیه (3.12 ثانیه) میباشد.
این یعنی 3.12 ثانیه به زمان بارگذاری کل سایت اضافه خواهد شد که باید سعی کرد تا آن را بهبود بخشید.
پس DNS lookups به افزایش سرعت و بهبود سئو سایت کمک شایانی خواهد کرد.
حال بهتر درک میکنیم که هدف از اررور Reduce DNS Lookups (کاهش زمان جستجوی DNS) افزایش سرعت سایت میباشد.
رفع خطای Reduce DNS lookups
کاهش میزان DNS lookups به نظر ساده میآید و با راهکار های مناسب میتوان به آن رسید.
- شما با کاهش تعداد دامنههای مجزا که آنها را در سای خود فراخوانی میکنید، میتوانید زمان DNS lookups را کاهش دهید. در عکس بالا 3 درخواست DNS lookups وجود داشته است؛ زیرا سه دامنه مختلف بارگذاری شده اند. در سایتهای ایرانی معمولا از CMSهای آماده مانند جوملا و وردپرس و استفاده از پلاگینهای مختلف استفاده میشود، این خطاها بیشتر دیده خواهد شد. نمونه سایت های معروفی که در HTML سایتها بارگذاری میشود در زیر آورده شده است:
- fonts.googleapis.com : فونتهای گوگل میباشد.
- maps.googleapis.com : گوگل مپ است.
- google-analytics.com : گوگل آنالیتیکس یا همان ابزار آمارگیر گوگل است.
- cdnjs.cloudflare.com : همان CDN Cloudflare میباشد.
- logo.samandehi.ir : لوگوی مجوز دریافت شده از سازماندهی محتوای فضای مجازی است.
- trustseal.enamad.ir : لوگوی مجوز اخذ شده از اینماد میباشد.
- cdn.onesignal.com : برای ایجاد نوتیفیکیشن در مرورگر کاربران استفاده میشود.
- webgozar.com : سایت ایرانی برای گرفتن آمار است.
جمعبندی روشهای Reduce DNS lookups
- بنابراین روش اول حذف سایتهای این چنینی برای Reduce DNS lookups میباشد. روش دوم دانلود کردن فایلهایی که از یک سایت خارجی در سایت ما بارگذاری میشود و انتقال آن به هاست سایت خود یا CDN سایتمان. همانطور که معلوم است زمانی که سایت Dobest.ir بارگذاری میشود در کمترین حالت یک DNS lookups که همان Dobest.ir میباشد، لود خواهد شد. اگرچه دانلود این فایلهای خارجی از دامنه دیگر در CDN روش بهتری میباشد، زیرا باعث کاهش بار مصرفی سرور اصلی سایت خواهد شد.
- رکورد CNAME یا همان Canonical Name جزء یکی از رکوردهای پر کاربرد DNS میباشد. این رکورد DNS برای اتصال به دامنهای دیگر از یک نامه دامنه مستعار یا alias بهره میبرد. دقت کنید در فراخوانی آدرس ها از رکورد CNAME استفاده نشود. زیرا در ابتدا این رکورد به رکورد A اشاره میکند و سپس رکورد A به دنبال DNS برای پیدا کردن ایپی سایت میگردد. پس کاهش رکورد CNAME در بهبود سرعت سایت و سئو کاربردی میباشد.

نکاتی مختصر در رابطه با بهبود سئو سایت
داخل سایت tosinso به موارد مهمی اشاره شده که در زیر به 6 جمله خلاصه کرده ایم:
- یک رکورد CName به یک Domain یا A Record دیگری اشاره میکند.
- یک A Record به یک آدرس IP اشاره میکند
- یافتن یک A Record یعنی شروع یک جستجو (شروع DNS lookups)
- یافتن یک A Record یعنی اتمام یک جستجو (اتمام DNS lookups)
- اختلال بین CName های مختلف ممکن است باعث پیدایش Loop شود (افزایش DNS lookups)
- ایجاد A Record های مختلف هرگز باعث ایجاد Loop در نتیجههای DNS نخواهد شد.
- Defer parsing of JavaScript کمک میکند لود نخست سایت افزایش پیدا کند و موجب تاخیر بعضی از DNS lookups ها میشود.
- فعال کردن keep-alive سبب کم شدن DNS lookups خواهد شد ولی در صورت غیر فعال بودن برای دریافت هر فایل درخواست جدا از هم ارسال خواهد شد. یعنی اگر keep-alive فعال باشد، درخواست DNS lookups هر دامنه یک بار ارسال میشود. به عبارت دیگر همهی درخواست های یک دامنه در قالب یک درخواست DNS lookups ارسال خواهد شد.
- همگی موارد در ارتباط با Make fewer HTTP requests را میشود برای رفع اررور Reduce DNS lookups استفاده کرد.
DNS caching
DNS caching در سیستمها بسیار مفید جهت بهبود سرعت سایتها میباشد.
زیرا لازم نیست هربار مرورگر کاربر برای یافت ایپی سایت به DNS Server درخواست ارسال کند.
برای اینگار تنها به کش لوکال سیستم کاربر درخواست ارسال میکند.
البته چون برای اینکار از کش لوگال استفاده میشود، درصورت تغییر آی.پی سایت، شما نمیتوانید به سایت مورد نظر متصل شوید.
در مرورگر کروم با دستور chrome://net-internals/#dns
تمامی DNSهای ذخیره شده در حاظه پنهان نمایش داده میشود.
جهت پارک کردن حافظه کش سیستم، CMD را در حال Run as administrator باز کرده و دستور ipconfig /flushdns
را تایپ و اجرا کنید.
مقاله آموزشی رفع خطای Reduce DNS lookups در YSlow سایت GTmetrix به پایان رسید.
امیدواریم با کمک این آموزش توانسته باشید سئو سایت خود را بهبود بخشید.