CDN چیست و دلایل استفاده از CDN در وب سایت

CDN چیست و دلایل استفاده از CDN در وب سایت

دلایل استفاده از سرویس CDN در وب سایت

به عنوان مدیر یک وب سایت شما همیشه به دنبال افزایش سرعت وب سایت خودتان برای بالا بردن رضایت کاربرانتان یا همان تجربه کاربری هستید. یکی از جدیدترین و مدرن‌ترین مدل‌های افزایش سرعت سایت در حال حاضر استفاده یک سرویس CDN می‌باشد. (CDN‌ به معنای شبکه تحویل محتوا یا شبکه توزیع محتوا یاد می‌شود).

این سرویس‌ها بار اضافه را از سرور اصلی سایت شما کاهش داده و باعث می‌شود سرعت تحویل محتوا به کاربران بالاتر رود، تجربه کاربری بهتری در مدیریت وب سایت به شما و کاربرانتان هدیه می‌دهند.

امروز ما می‌خواهیم شما را با نحوه کار CDN ها و همچنین دلیل استفاده از آنها و معرفی برخی مزایای اضافی CDN ها آشنا کنیم. همچنین با نمایش چندین آزمایش سرعت قبل و بعد از فعال سازی سرویس CDN شما را به چالش می‌کشیم که خود تفاوت استفاده کردن و استفاده نکردن CDN را قضاوت کنید.

۴۰ درصد کاربران اگر وب سایتی بیشتر از ۳ ثانیه لود شود آن رها می‌کنند. (این یک شاخص جهانی‌ است ولی در ایران با توجه به سرعت بسیار پایین اینترنت و حجم بالای وب سایت ها این شاخص تا ۷ ثانیه پیش‌بینی می‌شود).

شبکه تحویل محتوا (CDN) چیست؟

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

سرویس CDN چگونه کار می‌کند؟

سرویس CDN دقیقا چگونه کار می‌کند؟ خب، به عنوان مثال ، وقتی شما قصد خرید یک هاست میزبانی وب را دارید ، می‌بایست مکان یک دیتاسنتر فیزیکی  مثل آلمان، فرانسه، امریکا، ایران و غیره را انتخاب کنید. به عنوان نمونه فرانسه را برای میزبانی انتخاب کردیم. این به معنی آن است که مثلا وب سایت شما توسط سرور‌هایی واقع در پاریس میزبانی می‌شود. حال در نظر بگیرید فردی در ایران بخواهد وارد وب سایت ما شود و فردی نیز از فرانسه وارد وب سایت ما شوید، به علت مکان قرارگیری سرور و همچنین انتقال داده‌ها از مبدا به کشور مقصد، زمان لود وب سایت در ایران بیشتر از فرانسه خواهد بود. این چیزی است که به آن لِی‌تنسی یا تاخیر گفته می‌شود (latency). لی‌تنسی به زمان یا تاخیری گفته می‌شود که برای انتقال اطلاعات در شبکه‌ها لازم است. بنابراین هرچه فاصله کاربر از مکان قرارگیری سرور وب سایت دورتر باشد لی‌تنسی نیز بیشتر می‌شود.

همچنین لی‌تنسی را در تبادل داده‌ها فراموش نکنید، هنگامی که شما به عنوان کاربر داده‌ها را دریافت می‌کنید و با پر کردن فرم یا کلیک روی کلیدی درخواستی را برای سرور ارسال می‌کنید، باز هم فاصله شما با سرور باعث تاخیر در دریافت پاسخ می‌شود. حال جایی است که CDN وارد بازی می‌شود و ما در این زمان برای کاهش لی‌تنسی سرویسی به نام CDN را وب سایت خود  اضافه می‌کنیم. سرویس CDN اطلاعات را از نزدیک‌ترین سرور برای کاربر نمایش می‌دهد و این کار باعث کاهش لی‌تنسی لود وب سایت می‌شود. سرورهای CDN را گاهی نقطه حضور (POPs) می‌نامند.

CDN 1 - CDN چیست و دلایل استفاده از CDN در وب سایت

کاربران وردپرسی در ابتدا برای استفاده از CDN بی‌میلی نشان می‌دهند. در اینجا ما در ۳ مرحله خیلی ساده نحوه عملکرد CDNو همچنین نحوه فعالسازی آن در وب سایتتان را آموزش می‌دهیم.

مرحله اول :

یک ارائه دهنده سرویس CDN را انتخاب کنید و در وب سایتش ثبت نام کنید. سرویس دهی آن‌ها بیشتر به صورت ماهیانه یا حجم پهنای‌باند می‌باشد و اکثر ارائه دهندگان برای محاسبه قیمت، به صورت هوشمند عمل می‌کنند و نیازی به ارسال تیکت یا تماس با ارائه دهنده نیست.

مرحله دوم :

برای ادغام CDN خود با وردپرس از یک افزونه رایگان مانند CDN Enabler استفاده کنید. این افزونه‌ها به صورت خودکار داده‌های شما را با CDN ادغام می‌کنند. با این افزونه‌ها نیازی نیست که شما به هیچ چیزی دست بزنید و همه کار‌ها به صورت خودکار انجام می‌شود، صرفا برخی اطلاعات اولیه برای وصل شدن به CDN لازم دارند. در حال حاضر استفاده ازCDN نسبت به چند سال پیش خیلی راحت‌تر شده است.

مرحله سوم :

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

با این حال، هنوز هم انتخاب یک سرور قدرتمند در یک مکان مرکزی بسیار اهمیت دارد، چون اگر از یک CDN قدرتمند برای لود اطلاعات وب سایت خود استفاده کنید نیز مرورگر باید چند درخواست برای دریافت فایل‌های استاتیکی مثل HTML وPHP ارسال کند، مگر اینکه از تکنیک ذخیره سازی در سرور پروکسی استفاده کنیم که آن بخشی جداست که بعدا به آن می‌پردازیم. در حال حاضر وب سایت‌های میزبانی بسیاری هستند که از نظر ارائه سرور قدرتمند در ایران فعالیت می‌کنند و از مکان‌های مختلفی از جهان از جمله خود کشورمان ایران سرویس دهی می‌کنند.

مزایای استفاده از CDN

در زیر تعداد اندکی از مزایای بسیار زیاد CDN ها را بیان می‌کنیم.

1 – بهبود عملکرد

بهبود عملکرد یکی از مهم‌ترین دلایل استفاده از این سرویس می‌باشد. با این سرویس هربار که وب سایت را لود می‌کنید سرویس از نزدیک ترین سرور با حداکثر سرعت داده‌ها را دریافت کند و نرخ فرار کاربران یا bounce rate را کاهش دهد (اطلاعات بیشتر درباره bouce rate را میتوانید در مقاله bounce rate چیست بخوانید) و برای شما بازدیدکنندگانی وفادار پیدا کند. و این به معنای تغییر ساده‌ای در تجربه کاربری نیست. آخرین باری که وارد وب سایتتان شدید و وب سایت دیر لود شد چه زمانی بود؟‌ این چیزی است که دوست دارید براتون خاطره شود و همیشه سرعتی عالی برای لود شدن صفحه داشته باشید. این سرعت به همین راحتی‌ها هم به دست نمی‌آید. در زیر آماری معتبر از بزرگان این صنعت براتون آماده کردیم که بهتر است به آن توجه کنید :

  • به ازای هر یک ثانیه تاخیر در لود داده‌های وب سایت ۷ درصد باعث افزایش زمان لود می‌شوید. (منبع: Kissmetrics)
  • شبکه‌های خبری به علت سرعت پایین به ازای هر ثانیه تاخیر ۱۰٪ درصد از کاربران را از دست می‌دهند. (منبع: Creative Bloq)
  • بیشتر از ۵۳٪ کاربران موبایلی وب سایت شما اگر وب سایت شما بالای ۳ ثانیه لود شود، وب سایت شما را کنار خواهند زد. (منبع: DoubleClick)
  • وب سایت AliExpress با کاهش ۳۶ درصدی زمان لود وب سایت خود توانست ۱۰.۵ درصد سفارشات خود را افزایش دهد و همچنین ۲۷ درصد به مکالمات بین کاربران خود اضافه کند. (منبع: Akamai)

تمامی این مشکلات و نکات توسط CDN امکان پذیر است.

کاهش TTFB

ما قبلا در بالا ذکر کردیم که اتصال یک CDN به وب سایت وردپرسی شما باعث می‌شود که لی‌تنسی وب سایت شما با کم شدن مسافت فیزیکی کاربران نسبت به سرور کاهش یابد. همچنین می‌تواند باعث کاهش زمان دست‌یابی شما به اولین بایت وب سایت شود.(TTFB یا time to first byte)

در تعریف ساده TTFB باید بگویم که برای دریافت اولین بایت داده‌های وب سایت، مرورگر موظف است زمانی منتظر بماند. هرچقدر که این زمان بیشتر باشد، لود وب سایت نیز دیرتر انجام می‌شود. ولی پیشنهاد مهمی برای شما داریم و آن این است که حتما مقاله TTFB چیست را مطالعه نمایید تا باعث بهینه سازی زمان بارگذاری سایت خود شوید.

CDN 2 - CDN چیست و دلایل استفاده از CDN در وب سایت

یک تصور غلط در رابطه با محاسبه TTFB این است که بیشتری‌ها تصویر می‌کنند که زمان دستیابی مرورگر به اولین بایت وب سایت بعد از بررسی DNS می‌باشد که این تصوری کاملا اشتباه است. زمان تاخیر TTFB به لی‌تنسی وب سایت شما بستگی دارد و هرچه پایین‌تر باشد TTFB شما نیز پایین‌تر است.

به طور کلی لود شدن اولین بایت در وب سایت باید ۳ مرحله پردازش، تاخیر و لی‌تنسی را بگذراند. TTFB بالا در وب‌سایت شما ممکن است به علت کدنویسی اشتباه ویا استفاده اشتباه از سیستم کش باشد.ولی مکان کاربران نیز یکی از دلایل موجود می‌باشد. ما با انجام آزمایشی تفاوت فعال بودن و نبودن CDN را در TTFB وب سایتمان بررسی کردیم که نتیجه آن به صورت زیر می‌باشد.

TTFB وب سایت بدون CDN

ما در ابتدا یک تست را بدون فعال‌سازی CDN انجام دادیم که در نتیجه تست زمان لود وب سایت ۱.۴۵ ثانیه نمایش داده شد که از این زمان ۱۳۶ میلی ثانیه اش به TTFB وب سایت مربوط بود.

CDN 3 - CDN چیست و دلایل استفاده از CDN در وب سایت

TTFB وب سایت پس از فعال‌سازی CDN

پس از فعال‌سازی CDN و تست دوباره وب سایت، همانطور که مشاهده می‌کنید زمان لود وب سایت ۷۸۸ ثانیه و TTFB وب سایت نیز 37 میلی‌ثانیه شده است. حال وقت آن است که بگویید، واو CDN چه تغییری ایجاد کرد


8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

راه‌های مختلفی برای بهینه سازی وب سایت وردپرسی شما موجود است که ممکن است برخی از آن‌ها مهم‌تر از دیگر راه‌ها باشند. یکی از فاکتور‌های مهمی که اغلب نادیده گرفته می‌شود، کاهش زمان لود DNS Lookups (جستجوهای DNS) می‌باشد. همانند TTFB و لی‌تنسی (latency) که قبلا درباره آن‌ها صحبت بسیار کرده بودیم، زمان لود DNS Lookups نیز در دستیابی به اولین اطلاعات وب سایت بسیار موثر است. بنابراین امروز تصمیم گرفتیم که به نحوه کاهش زمان لود DNSLookups و افزایش سرعت آن‌ها بپردازیم و با هم به دلیل اهمیت بالای این فاکتور در سرعت وب سایت پی‌ببریم. توضیحات بیشتر درباره TTFB در مقاله بهبود زمان TTFB بخوانید.

سرفصل‌های پست

  • 1 منظور از DNS Lookups یا جستجو‌های DNS چیست
    • 1.1 جستجو DNS ها در Pingdom
    • 1.2 بررسی DNS ها در GTMetrix
    • 1.3 بررسی DNS ها در WebPagetest
  • 2 چگونه زمان لود DNS Lookups را کاهش دهیم
    • 2.1 ترفند ۱ :‌ از یک ارائه دهنده DNS سریع استفاده کنید.
    • 2.2 ترفند ۲ : تغییر ورودی‌های TTL برای استفاده از کش DNS
    • 2.3 ترفند ۳ :‌تعداد دامنه‌ها را کم کنید (hostnames)
    • 2.4 ترفند ۴ : از سرویس‌های جایگزین با DNS پر سرعت استفاده کنید.
    • 2.5 ترفند ۵ :‌ انتقال و میزبانی منابع در CDN
    • 2.6 ترفند ۶ :‌ از Prefetching DNS استفاده کنید.
    • 2.7 ترفند ۷ : به تاخیر انداختن لود جاوا‌اسکریپت
    • 2.8 ترفند ۸ :‌ از رکورد‌های ANAME و CNAME های مسطح استفاده کنید.
  • 3 خلاصه:

منظور از DNS Lookups یا جستجو‌های DNS چیست

برای فهمیدن اینکه منظور ما از DNS Lookups یا جستجو‌های DNS چیست، ابتدا باید با روش کار اصلی DNS آشنا شوید. به طور کلی DNS مخفف کلمه Domain Name Systi و به معنای سامانه نام دامنه می‌باشد که اساسا به ستون فقرات  اینترنت معروف است.دفترچه یادداشتی برای تمام جهان. تمامی طراحی سایت  (طراحی سایت شرکتی، طراحی سایت فروشگاهی، سئو سایت) ها و دامنه‌هایی که شما در اینترنت مشاهده می‌کنید به طور مشخصی به یک IP Address مرتبط می‌شوند.

برای مثال هنگامی که آدرس Google.com را در اینترنت وارد می‌کنید، کوئری‌های DNS توسط ISP شما برای دریافت اطلاعات مشخص مرتبط به نیم سرور‌ها درخواست می‌شوند. سپس جمع‌آوری اطلاعات دامنه توسط IP در پشت صحنه سرور انجام می‌شود که شما با توجه به اختصاصی بودن IP آدرس وب سایت گوگل شما می‌توانید با آی پی 216.58.217.206 نیز وارد این وب سایت شوید. ورود با ای پی آنقدری که به نظر می‌رسد هم سرگرم کننده نیست.

dns 1 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

هنگامی که شما درخواست ورود به یک وب سایت را وارد می‌کنید اولین چیزی که ISP شما از سرور مقصد درخواست می‌کند درخواست ارائه اطلاعات DNS وب سایت می‌باشد. اما در نظر داشته باشید که نیازی نیست برای هر منبعی دوباره DNSجستجو شود. برای مثال به درخواست‌های HTTP زیر توجه کنید:

با توجه به اینکه ۸ درخواست HTTP در بالا وجود دارد، با این حال، با توجه به اینکه ۳ دامنه در درخواست‌ها وجود دارد، ۳ جستجو برای اطلاعات DNS لازم است.

اگر نیاز به توضیحات بیشتر و ساده‌تر درباره نحوه کار DNS Lookups دارید مقاله رفع خطای Reduce DNS lookups را مطالعه فرمایید.

جستجو DNS ها در Pingdom

در زیر به نحوه نمایش درخواست‌های بالا در ابزار تست سرعت در ساخت سایت  Pingdom می‌پردازیم. DNS در تحلیل آبشاری به رنگ صورتی می‌باشد و تحلیل سرعت آن به صورت میلی ثانیه است. وقتی برای اولین بار وب سایتتان را در Pingdom مورد ارزیابی قرار می‌دهید، این وب سایت به صورت کامل اطلاعات IP آدرس و دیگر کوئری‌های DNS شما را دریافت و بررسی می‌کند. توجه کنید که لازم نیست برای هر ارزیابی برای مثال دامنه cdn.wpdev.ink شروع به ارزیابی DNSها کنید. این دقیقا کاری است که DNS می‌کند، برای هر دامنه کافیست که تنها یک بار آن را لود کنید. در بالا ۸ درخواستHTTP موجود است که از بین این‌ها تنها ۳ درخواست DNS لازم است.

برای هر بار بررسی DNS ها توسط مرورگر و سرور زمان اضافه ای به لود وب سایت اضافه می‌شود و هیچ اطلاعاتی قبل از بررسی کامل DNS لود نمی‌شوند.

برای مثال در بررسی ۳ DNS بالا ، یکی از ۳ DNS برای بررسی ۳۰۰ میلی ثانیه زمان گرفته است که این زمان بدون در نظر گیری زمان لازم برای بررسی DNS دیگر دامین هاست. بنابر این تاثیر بررسی DNS را بر روی سرعت می‌‌توانید کاملا واضح مشاهده کنید.

dns 2 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

هنگامی دوباره وب سایت خود را با Pingdom مورد ارزیابی قرار می‌دهید، متوجه می‌شوید که اطلاعات DNS در Pingdom کش شده‌اند و دیگر نیازی به لود دوباره آن‌ها نیست. این یکی از دلایلی است که پیشنهاد می‌شود وب سایت خود را چندین بار در Pingdom مورد ارزیابی دقیق قرار دهید. همانطور که در زیر مشاهده می‌کنید زمان لود DNS در تصویر زیر 0 ثانیه شده است. این بخش، بخشی است که بیشتر مردم آن را اشتباه در نظر می‌گیرند اما نگران نباشید، ما در رابطه با کش شدن DNSبیشتر صحبت خواهیم کرد.

dns 3 1 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

بررسی DNS ها در GTMetrix

به طور کلی هر وب سایت بررسی سرعت نوع بررسی خاص خود را دارد ولی بیشتر آن‌ها سرعت بررسی DNS ها را به شما می‌گویند. در زیر نحوه نمایش زمان بارگیری اطلاعات DNS را در GTMetrix مشاهده می‌کنید. DNS ها به رنگ سبز و بر اساس میلی ثانیه مشخص شده اند.

dns 3 1 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

بررسی DNS ها در WebPagetest

ابزار بررسی سرعت وب سایت WebPageTest نیز یک ابزار بسیار دقیق و کارآمد در حوزه بررسی DNSها و تجزیه و تحلیل نمودار آبشاری برای سایت می‌باشد که در صورت علاقه می‌توانید از این وب سایت نیز استفاده کنید و به علت تعداد سرور‌ها در سراسر جهان و همچنین آنالیز کلی تمامی اطلاعات وب سایت کاربر بسیار معروف شده است. اطلاعات مربوط به زمان لود DNS در این ابزار در ستون DNS Lookup و با واحد اندازه گیری میلی‌ثانیه قرار می‌گیرد. برای مثال ما یک وب سایت خبری را به صورت تصادفی انتخاب کردیم و پس از انجام عملیات بررسی توسط این ابزار زمان لود DNS به ۶.۵ ثانیه رسید!

متاسفانه در بیشتر وب سایت‌های خبری، بهینه سازی صورت نمی‌گیرد و درخواست‌های خارجی وب سایت‌ها بسیار زیاد است. با این حال، همانطور که مشاهده می‌کنید وب سایت خبری مورد مطالعه ما خیلی بیشتر از مقدار قابل قبول لود DNS از نظر کاربران برای لود این فاکتور زمان نیاز دارد. برای همین است که می‌گوییم DNS ها خیلی اهمیت دارند، زیرا ممکن است باعث کندی بیش از حد و حتی قطعی وب سایت شما شوند.

dns 4 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

چگونه زمان لود DNS Lookups را کاهش دهیم

در رابطه با نحوه کار DNS ها اطلاعات کاملی به دست آوردید. حال وقت آن است که به نحوه کاهش زمان لود و افزایش سرعت DNS Lookups بپردازیم، افزایش سرعت لود DNS Lookups اسم های مختلفی دارد همانند:

  • Minimize DNS Lookups (به حداقل رساندن جستجوی DNS)
  • Reduce DNS Lookups (کاهش جستجوی DNS)

dns 5 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

ترفند ۱ :‌ از یک ارائه دهنده DNS سریع استفاده کنید.

یکی از نکات مهم در DNS ها این است که DNS ها نیز مانند هاست‌های میزبانی ارائه دهندگانی سریع و کند دارند. این اولین چیزی است که باید در وب سایتتان رعایت کنید.

به طور معمول DNS های ثبت شده توسط GoDaddy و NameCheap بسیار ضعیف عمل می‌کنند. ارائه دهندگان DNS نیز مانند CDN دارای POPs های مختلفی در جای جای جهان هستند. از بهترین و پر سرعت‌ترین ارائه دهندگان DNS می‌توانیم به amazon ، Cloudflare ، Dyn و DNS Made Easy اشاره کنیم. همه این‌ ارائه دهندگان دارای زیرساخت‌هایی وسیع برای سریع‌ترین بازده می‌باشند.

ما با توجه به این موضوع شروع به بررسی تک تک ارائه دهندگان DNS کردیم که پس از بررسی‌هایمان متوجه شدیم که در ارائه دهندگان تجاری DNS سرعت تفاوت خاصی نمی‌کند ولی در ارائه دهندگان DNS رایگان به جز CloudFlare بقیه سرعت ضعیفی دارند. بنابراین اگر کسب و کار خیلی پر اهمیتی دارید پیشنهاد می‌شود که از یک ارائه دهنده DNS تجاری استفاده کنید.

dns 6 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

بعضی از ارائه دهندگان بالا در مناطقی سریع تر از دیگری هستند و این خیلی مهم است که شما چگونه به بارگیری DNS نگاه می‌کنید، جهانی یا محلی؟

وب سایت DNSPerf ابزاری خوب برای مقایسه انواع ارائه دهندگان DNS می‌باشد و به شما کمک می‌کند که بهترین ارائه دهنده را انتخاب کنید. آیا می‌دانستید که شما می‌توانید بدون استفاده از امکانات دیگر Cloudflare از بخش DNS آن استفاده کنید؟

ترفند ۲ : تغییر ورودی‌های TTL برای استفاده از کش DNS

خوشبختانه، با توجه به توضیحاتی که در بالا دادیم، پس از کش شدن DNS در مرورگر شما، دیگر نگرانی برای لود دوباره بررسی‌های DNS در دیگر صفحات شما نیست و تنها کافیست که وب سایت شما برای اولین بار لود شود. کش شدن DNSدقیقا مانند کش شدن کامل وب سایت می‌باشد و تا زمانی که به تاریخ انقضای خود برسد در مرورگر باقی می‌ماند. طول کش DNS از طریق چیزی با نام Time to live (زمان برای زندگی) که مخفف TTL هست، مشخص می‌شود. اگر TTL وب سایتی بالا باشد، مرورگر شروع به بررسی دوباره DNS می‌کند.

شما می‌توانید ورودی‌های TTL وب سایت خود را برای بهبود کش DNS تغییر دهید. قابل توجه است که ISP ها به صورت خودکار DNS شما را کش می‌کنند ولی با تغییر ورودی‌های TTL می‌توانید به این کش کمک کنید.

  • ۳۰۰ ثانیه = ۵ دقیقه
  • ۱۸۰۰ ثانیه : ۳۰ دقیقه
  • ۳۶۰۰ ثانیه :‌ ۱ ساعت
  • ۴۳۲۰۰ ثانیه : ۱۲ ساعت
  • ۸۶۴۰۰ ثانیه : ۲۴ ساعت

dns 7 1 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

۳۰ دقیقه در هر ساعت برای TTL بیشتر از همه استفاده می‌شود. با این حال، بعضی از کاربران به علت بروزرسانی پی در پی وب سایتشان TTL کمتری استفاده می‌کنند. برای مثال Cloudflare به صورت پیش‌فرض TTL را بر روی ۵ دقیقه ذخیره کرده است. این خیلی خوب است که شما به رکورد‌های دیگر خود نیز توجه کنید و نسبت به استفاده وب سایت آن‌ها را تنظیم کنید. برای مثال :

  • رکورد‌های A و AAAA : این رکورد‌ها اغلب درحال تغییر هستند و ۵ دقیقه برای کش آن‌ها کافی است.
  • رکوردهای CNAME :‌در بیشتر اوقات این رکورد‌ها تغییر نمی‌کنند و به نظر من ۲۴ ساعت برای کش آن عالی است.
  • رکورد‌های MX : کمتر پیش می‌آید که این رکورد‌ها را تغییر دهید و معمولا ۱۲ ساعت برای کش پیشنهاد می‌شود.
  • رکورد‌های TXT :‌ کمتر پیش می‌آید که این رکورد‌ها را تغییر دهید و معمولا ۱۲ ساعت برای کش پیشنهاد می‌شود.

به طور کلی وقتی در رابطه با TTL صحبت می‌کنیم جواب درست یا غلطی وجود ندارد. اما شما با کمی تغییر در ورودی‌های TTL و آزمایش آن می‌توانید به کش DNS کمک کنید.

ترفند ۳ :‌تعداد دامنه‌ها را کم کنید (hostnames)

یکی از بهترین راه‌ها برای کم کردن زمان بررسی DNS ها کاهش تعداد درخواست‌ها به دامنه‌های مختلف است یعنی به طور کلی کاهش تعداد دامنه‌های متصل به وب سایت است. زمان بررسی DNS ها به تعداد درخواست‌ها آنقدری هم مهم نیست، مهم تعداد دامنه‌ها است که هرچقدر کمتر باشد زمان بررسی DNS ها نیز کاهش می‌یابد. وب سایت خود را با یک ابزار مانند Pingdom بررسی کنید و درخواست‌های مهم را مشخص کنید. با توجه به اینکه DNS ها بر اساس IP ها طراحی می‌شوند، شاید برای شما سوال شود که چرا مردم از دامنه‌ها در DNS خود استفاده می‌کنند؟! حتما توجه داشته باشید که DNS های شما بر روی یک دامنه ست شده باشند زیرا آی پی‌ها قابل تغییر هستند (مثلا با تغییر هاست) ولی دامنه‌ها تغییر نمی‌کنند و همیشه خواهند ماند و برای کش کردن فایل‌ها مناسب‌تر هستند.

ترفند ۴ : از سرویس‌های جایگزین با DNS پر سرعت استفاده کنید.

درحالی که کم کردن تعداد دامنه‌ها (hostnames) نسبت به این ترفند راحت‌تر است، با این حال، ما پیشنهاد می‌کنیم که ابتداDNS هایی که سرعت بررسی آن‌ها بیشتر از بقیه طول می‌کشد را بیابید. برای مثال در وب سایت زیر یکی از فایل‌های جاوا‌اسکریپت لود شده از Crazy Egg برای لود DNS ۲۵۵ میلی ثانیه زمان لازم دارد که از بقیه DNS ها بیشتر است. این به علت این است که این وب سایت از یک ارائه دهنده DNS خوب استفاده نمی‌کند.

dns 8 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

در این وضعیت شما می‌‌توانید از سرویس‌های جایگزین این سرویس مانند Hotjar که دقیقا همان کار را انجام می‌دهند استفاده کنید که هم از نظر سرعت لود DNS و هم از نظر کارایی بهتر از این سرویس عمل می‌کنند. این خیلی مهم است که وقتی شما افزونه‌ای را به وردپرستان اضافه می‌کنید توجه داشته باشید که به عملکرد وب سایت شما آسیبی نمی‌زند.

ترفند ۵ :‌ انتقال و میزبانی منابع در CDN

یکی از راحت‌ترین راه‌های موجود برای افزایش سرعت وب سایت خود این است که تا‌ جای ممکن منابع خود را به ارائه دهندهCDN خود انتقال دهید. هنگامی که شما در Pingdom وب سایت خود را آزمایش می‌کنید میزان درخواست‌های وب سایت خود را بر اساس هر دامنه را مشاهده می‌کنید. همانطور که مشاهده می‌کنید در زیر ۹۳.۸ درصد درخواست‌های ما از CDN لود می‌شوند. یک درخواست از هاست خودمان و یک درخواست نیز از گوگل آنالیز می‌باشد. با انتقال منابع به CDN زمان بررسیDNS ها را به تنها یک DNS ارائه دهنده CDN محدود می‌کنید و سرعت آن را افزایش می‌دهید. در مقاله دلایل استفاده از CDN ما به شکل کامل توضیحات لازم را ارائه داده‌ایم.

dns 9 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

به هر حال، وب سایت بالا یک وب سایت خاص بوده است ولی به طور کلی همیشه امکان انتقال اطلاعات به طور کامل به CDN‌ وجود ندارد.

شما در بیشتر مواقع منابعی که نیاز است در سرور‌های خارجی لود شوند را در CDN لود خواهید کرد. با این حال، ما پیشنهاد می‌کنیم که تاجایی که به وب سایتتان آسیب نرساند منابع را از CDN لود کنید. در بیشتر اوقات ما مشاهده می‌کنیم که کاربران وردپرسی بیشتر منابع خود را در هاست خود لود می‌کنند و CDN را نادیده گرفته‌اند. با انجام این کار شما می‌توانید از امکاناتHTTP/2 و parallelization نیز استفاده کنید.

در زیر به نکته‌هایی اشاره کرده‌ایم که می‌تواند به شما در این مورد کمک کند.

فونت Awesome :

ما در بیشتر وب سایت‌های امروزی مشاهده می‌کنیم که از فونت Awesome به عنوان فونت آیکون در وب سایت خود استفاده می‌کنند. ولی مشکلی در استفاده از این فونت‌ها وجود دارد این است که در بیشتر وب سایت‌های وردپرسی به صورت کاملا مستقیم از هاست کاربر لود می‌شوند و کاربران بلد نیستند که آن‌ها را از طریق CDN لود کنند ، در این مواقع پیشنهاد می‌کنیم که از افزونه‌ای مانند CDN Enabler استفاده کنید.

یک راه دیگر استفاده از cdnjs ویا bootstrapcdn می باشد تا فایل‌های فونت را از طریق CDN عمومی لود کنید

با توجه به اینکه با اضافه کردن لینک از طریق CDN های بالا یک رکورد به DNS های شما اضافه می‌شود پیشنهاد می‌شود کهCDN مخصوص خود را استفاده کنید. (cdnjs از سرور‌های Cloudflare و Bootstrap CDN از سرور‌های MAXCDN استفاده می‌کند)

Gravatars :

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

فونت‌های گوگل :

با فونت‌های گوگل شما یک درخواست اضافه برای لود استایل‌های مخصوص فونت‌های گوگل به وب سایت خود اضافه می‌کنید. سپس شما باید از طریق gstatic اقدام به دانلود فونت‌ها کنید. سعی کنید که این نوع فونت‌ها را در وب هاست یاCDN خود به صورت محلی لود کنید و از لود از طریق وب سایت‌های واسطه‌ای دیگر جلوگیری کنید. این کار مزایا و معایبی به همراه دارد ولی در کل به سرعت وب سایت شما بسیار کمک می‌کند.

dns 10 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

فونت Awesome ، فونت‌های گوگل و gravatars تنها نمونه‌هایی از روش‌های کاهش زمان لود DNS ها بودند. آیا شما سعی کردید که بیشتر منابع خود را از طریق CDN ها لود کنید؟

ترفند ۶ :‌ از Prefetching DNS استفاده کنید.

یکی دیگر از راه‌های کاهش زمان لود DNS،‌ استفاده از DNS Prefetching می‌باشد. این امکان به شما کمک می‌کند تا DNS‌ ها را در پس‌زمینه وب سایت خود لود کنید. این کار با اضافه کردن چند خط کد به وب سایتتان امکان پذیر است.به کد‌های زیر توجه کنید :

فقط توجه کنید که DNS prefetch در بعضی از مرورگر‌ها مانند Opera Mini پشتیبانی نمی‌شود ولی نگران نباشید، این پشتیبانی نشدن در عملکرد وب سایت شما تاثیری نمی‌گذارد ولی برای کاربرانی که از آن مرورگر استفاده می‌کنند DNS ها دیرتر لود می‌شوند.

dns 11 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

یا اگر از نسخه وردپرس بالای ۴.۶ استفاده می‌کنید، می‌توانید از ترفند‌های منابع منتشر شده کمک بگیرید. توسعه دهندگان با استفاده از متد wp_resource_hints می‌توانند با اضافه کردن دامنه‌ها و لینک‌های جدید، dns-prefetch، preconnect، prefetch و یا prerender را در پس‌زمینه وردپرس لود کنند.

ترفند ۷ : به تاخیر انداختن لود جاوا‌اسکریپت

اگر شما خواندن فایل‌های جاوااسکریپت را به تاخیر بیاندازید آن‌ها تا پایان لود کامل دیگر منابع سایت لود نخواهند شد. این‌کار سرعت لود DNS Lookup را افزایش نمی‌دهد ولی باعث می‌شود که از بروزرسانی پی در پی آن جلوگیری شود. افزونه Varvy یکی از بهترین پیشنهاد‌ها برای بررسی تاثیر تاخیر انداختن لود جاوااسکریپت می‌باشد. نمونه فایل جاوااسکریپتی که بیشتر وب سایت‌ها از آن استفاده می‌کنند فایل جاوااسکریپت گوگل آنالیز می‌باشد که نیازی نیست در هنگام لود شدن وب سایت، لود شود و کافیست که پس از لود وب سایت در پس زمینه لود شود.

در وردپرس افزونه‌هایی مانند Async JavaScript وجود دارند که باعث به تاخیر انداختن لود جاوا‌اسکریپت می‌شوند. با این‌حال بعضی از اسکریپت‌ها در لود وب سایت اهمیت دارند و باید شما قبل از فعال‌سازی تاخیر در لود آن‌ها را پیدا کرده و در لیست پرش یا استثنا قرار دهید.

افزونه Async Javascript با افزونه Autoptimize نیز به صورت کامل هم‌خوانی دارد و قابل ادغام است و یکی از بهترین پیشنهاد‌ها برای به تاخیر انداختن لود جاوا‌اسکریپت می‌باشد.

البته این بحث به تاخیر انداختن لود جاوا اسکریپت به خطای asynchronous resources در GTmetrix هم برمیگردد که می‌تواند در آنجا به شکل کامل مطالعه نمایید.

dns 12 - 8 راه افزایش سرعت و کاهش زمان لود DNS Lookups

ترفند ۸ :‌ از رکورد‌های ANAME و CNAME های مسطح استفاده کنید.

در بعضی از ارائه دهندگان DNS رکورد‌های اضافه‌ای وجود دارد که می‌تواند سرعت لود DNS را افزایش دهد.

استفاده از رکورد‌های ANAME در ارائه دهنده DNS Made Easy :

رکورد‌های ANAME به شما عملکرد کلی رکورد‌های CNAME را در سطح ROOT نمایش می‌دهند. برای مثال در نظر بگیرید که شما CNAME دامنه خود را به صورت www.domain.com پیکربندی کرده‌اید. ابتدا www. باید نام هاست نیم را پیدا کند و سپس به IP متصل شود. پس این‌کار ۲ مرحله ایست. در ANAME مرحله اولیه CNAME حذف شده است و مستقیم به IPمتصل می‌شود که این باعث افزایش سرعت می‌شود. دقیقا مانند نمونه زیر :

CNAME :

ANAME :

مسطح سازی CNAME با Cloudflare :

به طور مشابه Cloudflare هم نوعی سرویس به نام CNAME مسطح دارد که دقیقا همان کار ANAME را انجام می‌دهد و داده‌ها را در سطح zone apex  نمایش می‌دهد.

خلاصه:

به طور کلی، DNS Lookups یکی از فاکتور‌هایی است که در بیشتر وب سایت‌ها نادیده گرفته می‌شود ولی با اندکی توجه مدیر وب سایت می‌تواند به لود وب سایت خود کمک کند. فقط کافیست که بدانید DNS چطور کار می‌کند، ارائه دهندگان کند و سریعی برای DNS وجود دارد و یاد بگیرید که چگونه مشکلات بررسی DNS را حل کنید.

آموزش افزایش سرعت سایت با GTmetrix – رفع خطاهای YSlow

آموزش افزایش سرعت سایت با GTmetrix – رفع خطاهای YSlow

در این پست قصد داریم درباره ارور Use a Content Delivery Network صبحت کنیم و بررسی کنیم منظور این خطا چیست و اینکه رفع آن چگونه باعث بالا بردن سرعت سایت ما می‌شود. توجه داشته باشید که ما در ادامه هم از عبارت CDN (شبکه توزیع محتوا) استفاده خواهیم کرد و هم از عبارت CDN Public (شبکه توزیع محتوا عمومی) که این دو عبارت برای اهدافی متفاوت ایجاد شده اند، بنابراین این دو عبارات را یکی ندانید.

خلاصه‌ای از خطا( Use a Content Delivery Network (CDN

نام: (Use a Content Delivery Network (CDN
نوع: محتوا
اولویت: پایین
میزان سختی: متوسط
میانگین امتیاز: 92%

CDN چیست؟

CDN یا به اختصار Content Delivery Network به معنای شبکه توزیع محتوا است البته به شبکه تحویل محتوا هم می‌توان ترجمه کرد، قصد داریم به کمک شکل زیر به سادگی معنا و هدف CDN را بیان کنیم.

3 1 300x261 - رفع خطای Use a Content Delivery Network در YSlow جی تی متریکس
CDN چیست

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

سناریو دو: به نیمه پایین تصویر دقت کنید و و تصور کنید که شما از شبکه توزیع محتوا یعنی CDN استفاده می‌کنید و سرور اصلی سایت شما در شهر ویرجینیا امریکا قرار دارد در این حالت تمام سرورهای CDN در مناطق مختلف یک نسخه کپی از طراحی سایت (طراحی سایت شرکتی، طراحی سایت فروشگاهی) شما در سرور اصلی برداشته و در خود ذخیره می‌کنند و اگر برفرض کاربری در کشور چین قصد داشته باشد وارد سایت شما شود، نزدیک‌ترین سرور CDN به چین پاسخ کاربر را خواهد داد و این عمل در بهبود سرعت سایت نقش بسیاری را ایفا می‌کند.

مزایای استفاده از CDN

افزایش سرعت سایت : طبق توضیحات بالا استفاده از شبکه توزیع محتوا باعث بهبود سرعت سایت و سریع‌تر لود شدن صفحات برای کاربران می‌شود.
کاهش مصرف پهنای باند سرور اصلی : زمانی که شما از CDN استفاده می‌کنید سرورهای CDN یک نسخه کپی از محتویاتی که تقریبا ثابت هستند (فایل‌های CSS ، جاوااسکریپت، عکس‌ها، فونت‌ها و …) در سرور خود ذخیره می‌کنند و زمانی که کاربر درخواستی را برای باز شدن صفحات سایت شما ارسال می‌کند به جای ارسال درخواست به سرور اصلی به سرورهای CDN ارسال می‌شود که باعث کاهش مصرف پنهای باند سرور اصلی می‌شود.
کاهش مصرف منابع سرور اصلی: استفاده از شبکه توزیع محتوا باعث کاهش تعداد درخواست‌های HTTP از سمت کاربران می‌شود و این عمل بار بسیاری را از دوش سرور اصلی کم می‌کند که نتیجه آن کاهش مصرف منابه سرور اصلی می‌باشد.
افزایش رتبه سایت در گوگل : یکی از موارد بهبود سئو سایت بالا بردن سرعت سایت است و گوگل اعلام کرده است که سرعت سایت یکی از فاکتورهای مهم در رتبه‌بندی نتایج خواهد بود.
بهبود تجربه کاربری : سرعت سایت و بارگذاری سریع صفحات سایت ارتباط مستقیمی با تجربه کاربری (UX) خواهد داشت، چرا که کاربران زمان کمتری را برای لود شدن فایل‌های لازمه یک صفحه صرف خواهند کرد و تاخیر در بارگذاری تا حد بسیار زیادی کاهش پیدا می‌کند، همین موضوع می‌تواند باعث کاهش نرخ دفع کاربری هم شود.
۱۰۰ درصد بالا بودن سرور : زمان که شما از شبکه توزیع محتوا یا CDN استفاده می‌کنید حتی زمانی که سرور اصلی قطع شود نسخه کپی موجود در سرورهای CDN به کاربران نمایش داده می‌شود تا با قطعی سرور کاربران شما برخورد نکنند.
افزایش امنیت سایت : استفاده از CDN باعث افزایش امنیت سایت و جلوی حملاتی نظیر DDoS را میگیرد چرا که شبکه توزیع محتوا به راحتی می‌تواند با استفاده از پهنای باند نامحدود خود بار حملات DDoS خنثی کند.

معایب استفاده از CDN

هزینه CDN : یکی از معایب استفاده از شبکه توزیع محتوا هزینه نسبتا بالای برخی از ارائه دهنده‌گان CDN است، هر چند برخی از ارائه دهنده‌گان دارای پنل رایگان هستند همانند سایت cloudflare ولی استفاده از پنل رایگان با توجه به محدودیت های فراوانی که دارند، برای سرورهای داخل ایران توصیه نمی‌شود که در ادامه علت آن را خواهیم گفت، از بین سایت های ارائه دهنده شبکه توزیع محتوا خارجی می‌توان سایت MaxCDN را اشاره کرد که دارای پنل‌هایی با قیمت مناسب است. در ادامه انواع سایت‌های ارائه دهنده CDN را نام خواهیم برد.
مسدود شدن برخی کاربران : گاهی پیش آمده دسترسی برخی کاربران به سایت مسدود شده چرا که برخی سازمان‌ها و یا حتی کشورها دسترسی‌ها را به برخی کاربران محدود می‌کنند و درنتیجه بسیاری از دامنه ها در این سازمان ها و کشورها غیر قابل دسترسی می گردد. یا برخی CDNها حساسیت بالایی به تعداد درخواست‌های HTTP دارند و اگر حتی یک کاربری صفحات زیادی از یک سایت را باز کند ممکن است CDN واکنش نشان دهند و تصور کند که سایت مورد حمله است و ای پی آن شخص را مسدود کند (این موضوع برای خوده بنده بسیار پیش آمده)

معرفی برخی از CDNهای معروف

برخی از CDNهای معروف عبارت اند از:

  • Amazon Cloudfront
  • MaxCDN
  • Cloudflare
  • Arvancloud

چند نکته:

  • سرور Cloudflare پنل رایگانی دارد که اکثر طراحی سایت (طراحی سایت شرکتی، طراحی سایت فروشگاهی) های ایرانی برای استفاده از CDN از این سایت استفاده می‌کنند ولی اگر سرور اصلی سایت شما در ایران است توصیه نمی‌شود از این پنل رایگان استفاده کنید چرا که در بیشتر موارد مشاهده شده به جای بهبود سرعت سایت باعث کاهش سرعت سایت برای کاربران ایرانی می‌شود.
  • سایت Arvancloud توسط یک شرکت ایرانی تاسیس شده است و خدمات مناسبی را ارائه می‌دهد، پیشنهاد ما استفاده از این CDN است هر چند استفاده از این شبکه توزیع محتوا باعث رفع خطای Use a Content Delivery Network در جی تی متریکس نمی‌شود که نشانه ضعف این ابزار آنلاین است.
  • سایت MaxCDN نسبت به CDNهای خارجی دیگر پنلی ارزان‌تر دارد و اگر قصد خرید سی دی ان خارجی با هزینه مناسب هستید می‌تواند گزینه مناسبی باشد.
  • اگر از سیستم مدیریت محتوا وردپرس استفاده می‌کنید می‌توانید از افزونه رایگان Jetpack استفاده کنید که امکان استفاده از شبکه توزیع محتوا یا CDN اختصاصی را به شما می‌دهد.

شبکه توزیع محتوا عمومی چیست؟

استفاده از سرویس رایگان شبکه توزیع محتوای عمومی (Free Public CDN Services) باعث افزایش سرعت سایت، ذخیره پهنای باند سرور اصلی، بهبود تجربه کاربری می‌شود، در سرویس‌های رایگان توزیع محتوای عمومی کتابخانه‌های معروف جاوااسکریپت و CSS قرار دارند تا برنامه‌نویس ها به جای اپلود کردن این کتابخانه های مهم و معروف در سرور اصلی سایت، از سرورهای رایگان توزیع محتوای عمومی استفاده کنند، این عمل باعث کاهش تعداد درخواست‌های HTTP به سمت سرور شما هم می‌شود، مثلا به جای اینکه فایل jquery.min.js را مثل آدرس زیر در طراحی سایت خود لود کنیم.

<script src=”https://mizfa/com/file/js/jquery.min.js”></script>

از jquery.min.js موجود در Google CDN که یکی از شبکه‌های توزیع مجتوای عمومی است استفاده کنیم:

       <script src=”https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js”></script>

Google CDN

لینک: https://developers.google.com/speed/libraries

پایداری یکی از مهم‌ترین خصوصیات این CDN است، شبکه توزیع محتوا عمومی گوگل از محبوبترین کتابخانه های منبع باز JavaScript پشتیبانی می‌کند و همیشه این شبکه توزیع محتوای عمومی اخرین نسخه‌های انتشار شده را در کتابخانه CDN خود قرار می‌دهد.

Microsoft CDN

لینک: http://www.asp.net/ajax/cdn

یکی از محبوب‌ترین کتابخانه‌های CDN به شکل رایگان را برای کاربران فراهم کرده است. شبکه توزیع محتوا عمومی مایکروسافت از محبوبترین کتابخانه Ajax در انواع نسخه‌ها را پشتیبانی می‌کند.

jsDelivr CDN

لینک: http://www.jsdelivr.com

jsDelivr خود از ۵ سی دی ان قدرتمند دیگر برای ارائه خدمات هر چه بهتر به کاربران استفاده می‌کند که معروف‌ترین آنها Cloudflare و MaxCDN هستند. شاید این لینک برای شما جالب باشد که نحوه توزیع محتوا عمومی در jsDelivr به چه شکل است، انواع کتابخانه‌های معروف این CDN عمومی درون خود دارد و کافیست برای استفاده از یک فایل نام آن را در صفحه اول تایپ کنید.

cdnjs CDN

لینک: https://cdnjs.com

cdnjs توسط CloudFlare حمایت می‌شود و فایل‌های مربوط به jQuery ، Modernizr و Bootstrap در خودش دارد، استفاده بسیاری از این سی دی ان عمومی و محبوب می‌شود.

jQuery CDN

لینک: https://code.jquery.com

jQuery قدرت گرفته از MaxCDN است. و اخرین نسخه‌های کتابخانه JavaScript را همیشه در دسترس قرار می‌دهد.

نحوه رفع خطای Use a Content Delivery Network

برای رفع این خطا در Yslow پیشنهاد میکنیم از CDNهایی که معرفی کردیم استفاده نمایید، اگر بنا به شرایط خود نمی‌توانید استفاده کنید بهتر است حداقل برای لود کردن برخی از فایل‌های معروف در سایت خود همانند کتابخانه‌های JavaScript از CDN Public استفاده کنید.

نصب Cloudflare و آموزش تنظیمات کلود فلر

نصب Cloudflare و آموزش تنظیمات کلود فلر

در این مقاله قصد داریم آموزش استفاده از cdn یعنی یکی از بهترین سی دی ان های دنیا به نام کلود فلر را به شما بدهیم در این آموزش بخش‌های مختلف کلودفلیر مورد بررسی قرار گرفته و تنظیمات لازم حتی برای وردپرس هم اشاره شده. و درباره مهم‌ترین دغدغه کاربران یعنی ssl رایگان موجود در Cloudflare.com برای دامنه های ir و سایر دامنه‌ها به شکل کلی آموزش داده شده است. با سئوراز همراه باشید.

سرفصل‌های پست

Cloudflare چیست و نحوه فعال سازی و آموزش تنظیمات آن

کلودفلر یا به انگلیسی Cloudflare یک شرکت ارائه دهنده خدمات شبکه تحویل محتوا (CDN) ، دارای تنظیمات DNSپیشرفته، محافظت کننده از حملات DDOS  و  خدمات امنیتی می باشد. آنها به علت ارائه SSL رایگان و افزایش سرعت و تنظیمات بهینه DNS ، و ارائه دادن یک شبکه قوی و قدرتمند شامل بیشتر از 100 سرور مختلف در سراسر جهان شهرت بسیار زیادی در جامعه و صنعت شبکه و وب به دست آورده‌اند.

آنها توسط شرکت های نام آشنا و مشهوری مانند گوگل ، مایکروسافت و کوالکام پشتیبانی می‌شوند و از مشتریان معروف آنها می‌توانیم به سیسکو ، zendesk ، Digital Ocean و nasdaq اشاره کنیم.

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

برای استفاده از سرویس‌های Cloudflare در وب سایت وردپرسی خود مراحل زیر را با دقت در سئوراز دنبال کنید. ما در وب سایت سئوراز برای افزایش سرعت سایت بیشتر به اکثر کاربرانمان که هاست خارجی دارند استفاده از Cloudflare را پیشنهاد می‌کنیم و اگر قصد تهیه پنل‌های پولی این شرکت را دارید مکان هاست اهمیت چندانی ندارد. اگر از هاست ایران استفاده می کند و میخواهید کلود فلر را بر روی سایت خود فعال کنید ممکن است ساخت سایت شما با اختلالات لحظه‌ای مواجه شود، اگر سایت شما بر روی هاست ایران است بهتر است از cdn های ایرانی مانند ابر آروان استفاده کنید که با هاست های ایرانی سازگاری کامل دارد.

2 1 - نصب Cloudflare و آموزش تنظیمات کلود فلر

اگر شما به دنبال یک راه آسان برای بهبود سرعت سایت و افزایش امنیت وب سایت وردپرسی خود هستید، سایت Cloudflare.com با امکاناتی که به شما ارائه می‌دهند یکی از بهترین انتخاب‌های شماست.

بیشتر مشتریان سایت Cloudflare از سرویس رایگان این شرکت استفاده می‌کنند، در سرویس رایگان این شرکت به شما یک پنل با امکان استفاده از CDN با پهنای باندی نامحدود، SSL رایگان ولی با یک سری امکاناتی محدود داده می‌شود.

در این پست آموزش استفاده از سی دی ان cloudflare سعی خواهد شد به جنبه‌های مختلف این ابزار پرداخته شود.

نکته: برای استفاده از سرویس های رایگان Cloudflare شما می بایست DNS مخصوصی که این سایت برای دامنه شما می‌سازد را روی دامنه خود تنظیم کنید و این بدان معناست که شما با استفاده از Cloudflare امکان داشتن DNS اختصاصی با نام دامنه خود را ندارید.

آموزش نصب کلود فلر (Install Cloudflare)

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

مرحله اول – اضافه کردن سایت در کلودفلر

وارد اکانت کاربری خود در وب سایت Cloudflare شوید و روی “+ Add Site” کلیک کنید. آدرس وب سایت وردپرسی و یا غیر وردپرسی خود را وارد کنید و روی “Being Scan” کلیک کنید. (توجه داشته باشید که نیازی به وارد کردن http/https و www. نیست)

3 - نصب Cloudflare و آموزش تنظیمات کلود فلر

این عملیات 1 تا 2 دقیقه طول می‌کشد ، سپس باید روی “Continue Setup” کلیک کنید.

مرحله دوم – تنظیم DNS در کلودفلر

در مرحله دوم آموزش تنظیمات cloudflare به قسمت مهم DNS ها می‌رویم. کلودفلر برای DNS ها به شما دو خدمت ارائه می‌کند (On Cloudflare و Off Cloudflare) که اولین خدمت استفاده از CDN و امکانات امنیتی است و دیگری نیز تنها متصل کردن یکی از رکورد ها از طریق کلودفلر به سروری دیگر است و در این خدمت هیچ امکان CDN و امنیتی به شما تعلق نمی‌گیرد و شما مستقیم به سرور مقصد متصل می‌شوید .

بیشتر کاربران بسته به نیازشان سعی می‌کنند که هرچیزی که کلود فلر پیشنهاد می‌کند را در DNS خود رعایت کنند .

برای اینکه مطمئن شوید که رکورد DNS شما به کلودفلر متصل است و از خدمات CDN و امنیتی آن استفاده می‌کند به ابر جلوی رکورد DNS نگاه کنید و مطمئن شوید که نارنجی رنگ است و اگر نارنجی رنگ نیست با یک کلیک رو ابر، آن را به ابر نارنجی تغییر دهید (این کار باعث فعال شدن امکانات کلود فلر در رکورد DNS شما می‌شود).

همچنین اگر شما رکوردهای اضافه‌ای مانند رکوردهای MX در دامنه خود دارید سعی کنید که آن رکوردها را از Cloudflare جدا کنید و برای جداسازی باید امکان استفاده از خدمات CDN را در آن رکورد غیرفعال کنید (ابر رنگ طوسی به معنای غیرفعال می‌باشد).

هنگامی که تمامی رکورد ها را وارد کردید روی Continue کلیک کنید . این رکوردها را بعدا نیز می‌توانید در هرزمان که خواستید تغییر دهید.

4 1024x863 - نصب Cloudflare و آموزش تنظیمات کلود فلر

مرحله سوم – انتخاب پنل

در مرحله بعدی آموزش استفاده از CDN وبسایت Cloudflare شما می بایست بسته یا Plan کلودفلر خود را انتخاب کنید که ما در این آموزش بسته رایگان را انتخاب می‌کنیم، برای هاست‌های داخلی (هاست ایران) پنل رایگان توصیه نمی‌شود.

بعد از انتخاب بسته مورد نظر روی Continue کلیک می کنیم . برای اطلاع بیشتر از امکانات بسته ها به قسمت Plan وب سایت Cloudflare مراجعه کنید.

5 1024x862 - نصب Cloudflare و آموزش تنظیمات کلود فلر

مرحله چهارم – تنظیمات NameServers

در این مرحله از آموزش cloudflare شما باید نیم سرورهای دامنه (NS) خود را به آنچه Cloudflare تعریف کرده است ، تغییر دهید .

از آنجایی که Cloudflare مانند یک Proxy عمل می‌کند ، با اتصال نیم سرور های دامنه خود به این شرکت ، کاربر برای دسترسی به سایت شما بعد از وارد کردن URL وب سایت شما مستقیما به نزدیک ترین سروری Cloudflare به منطقه محل زندگی وی دارد متصل می‌شود و این باعث افزایش سرعت بارگذاری وبسایت شما می‌شود.

قابل توجه عزیزانی که ترس از قطع شدن وب سایتشان هنگام تغییر نیم سرورها را دارند: با توجه به تغییر نکردن سرور مبدا شما پس از تغییر نیم سرورهای وبسایت هیچگونه قطعی و یا به اصطلاح DownTime نخواهید داشت.

بعد از تغییر نیم سرورها به آنچه که Cloudflare تعریف کرده است ، روی Continue کلیک کنید.

6 1024x603 - نصب Cloudflare و آموزش تنظیمات کلود فلر

تغییر نیم سرور ها ممکن است از 1 تا 72 ساعت به طول انجامد مخصوصا در دامنه‌های ir که زمان زیادی لازم دارد.

مرحله پنجم – تنظیم IP و DNS

اگر شما از آن دسته افرادی هستید که برای وب سایتتان دی ان اس (DNS) و ای پی اختصاصی (IP) گرفته‌اید و فراموش کردید که در قسمت DNS کلود فلر وارد کنید ، می‌توانید از طریق منو وارد بخش DNS ها شوید و DNS و IP اختصاصی خود را در کلود فلر وارد کنید و یا تغییراتی در DNS هایتان ایجاد کنید.

7 1024x882 - نصب Cloudflare و آموزش تنظیمات کلود فلر

بخش تنظیمات DNS در کلودفلر یک استفاده دیگر هم دارد و آن اینکه اگر زمانی انتقال هاست صورت گرفت کافی است IPهاست قدیم را در این بخش به IP هاست قدیم تغییر دهید.

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

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

یک مرحله اضافه‌تر از آموزش تنظیمات cloudflare برای کاربران استفاده کننده از وردپرس وجود دارد که اجباری نیست ولی استفاده از پلاگین رسمی Cloudflare در وردپرس جلوی اشکالات را می‌گیرد.

8 - نصب Cloudflare و آموزش تنظیمات کلود فلر

شما میتوانید پلاگین رسمی Cloudflare را از مخزن وردپرس و یا با یک جستجو در قسمت افزودن افزونه بهلیست پلاگین های خود اضافه کنید.

از امکانات این پلاگین می توان به امکانات زیر اشاره کرد :

  • رفع بعضی از مشکلات بخش نظرات وردپرس
  • پاک کردن حافظه کش خودکار
  • نوشتن یک سرصفحه برای جلوگیری از انتقال های غیر قانونی هنگامی که SSL فعال است.
  • امکان تغییر تنظیمات اکانت Cloudflare از پلاگین
  • امکان تماشای تعداد کلی بازدید کنندگان ، میزان پهنای باند ذخیره شده و تهدید های مسدود شده
  • پشتیبانی از HTTP2/Server Push

پس از نصب پلاگین رسمی کلودفلر روی وردپرس ، شما باید ایمیل و API اکانت خود را وارد کنید. (برای دریافت API خود وارد اکانت کلودفلر شوید و روی my profile کلیک کنید .

سپس در بخش API روی View API Key رو به روی Global API Key کلیک کنید و API خود را کپی و در پلاگین وردپرس بارگزاری کنید )

بعد از وارد کردن ایمیل و API رو Save API Credentials کلیک کنید.

9 1024x861 - نصب Cloudflare و آموزش تنظیمات کلود فلر

بررسی اجمالی بر روی تنظیمات کلودفلر

در زیر تب Home ، بهتر است که روی Apply کلیک کنید تا تنظیمات پیشفرض اعمال شود .

10 1024x475 - نصب Cloudflare و آموزش تنظیمات کلود فلر

در زیر تب Settings ، اگر از کاربران Pro کلود فلر باشید میتوانید بهینه سازی تصاویر و حالت توسعه را فعال کنید .

همچنین می‌توانید سطح امنیتی وب سایت خود را تعیین کنید و از طرفی باعث شوید تمام منابع سایت شما بر روی HTTPSتنظیم شود.

11 1005x1024 - نصب Cloudflare و آموزش تنظیمات کلود فلر

در زیر تب Analytics ، شما میتوانید لیست پهنای باند ذخیره شده ، تهدید های مسدود شده و تعداد کل بازدید کنندگان خود را مشاهده کنید.

12 1024x893 - نصب Cloudflare و آموزش تنظیمات کلود فلر

مشکل رایج Cloudflare در سایت‌ها

سایت Cloudflare به عنوان هدیه به تمامی دامنه های بین المللی (به جز دامنه ir) یک گواهینامه دو ساله SSL می‌دهد (کلودفلر امکان استفاده https را به طور کلی برای دامنه های ir بسته است و به قولی SSL را برای این دامنه‌ها تحریم کرده است).

مشکل رایج آنجا شروع می‌شود که وبسایت شما قبل از ثبت نام در Cloudflare گواهینامه SSL دیگری داشته باشد که در این صورت به علت ناهمخوانی دو SSL و همچنین تلاش برای جایگزین کردن خود به جای آن یکی وب سایت شما دچار مشکل می‌کند.

13 - نصب Cloudflare و آموزش تنظیمات کلود فلر

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

تنظیمات اضافه برای کلودفلر

آنچه ما در این آموزش cloudflare گفتیم تنها آشنایی مختصر شما با کلودفلر بود و امیدواریم آموزش استفاده از تنظیمات اینCDN معروف مورد استفاده شما قرار گرفته باشد.