اگر از همراهان همیشگی پرشین تولز هستید، حتماً مقاله قبلی در مورد رفع خطاهای سایت به کمک GTmetrix را خواندهاید! در این مقاله هم قصد داریم به بررسی ادامه این بحث بپردازیم تا بتوانید با افزایش سرعت سایت، وضعیت سئوی سایت خود را بهبود ببخشید و رضایت کاربران را هم جلب کنید.
بعد از آن که کاربری وارد سایت شما میشود و نیاز به این اطلاعات دارد، همین دادههای ذخیره شده روی سرور که به صورت اشتراکی به بسیاری از سایتها سرویس میدهند از نزدیکترین سرور یا node بر اساس موقعیت جغرافیایی بازدیدکننده دانلود و بهش تحویل داده میشوند. پس هنگامی که کاربری با مرورگر خودش وارد سایت میشود، اطلاعات از نزدیکترین سرور موجود به آن کاربر ارسال میشوند و هر گاه هم سرور CDN به هر دلیلی در دسترس نباشند مشکلی وجود نداره و دادهها از سرور اصلی بارگذاری خواهند شد و تنها تفاوتی که وجود دارد، بحث سرعت خواهد بود که مثل قبل بستگی به ترافیک سرور کمتر خواهد شد. چون این اطلاعات قبلاً در سرورهای CDN ثبت (Cache) شدهاند و نیاز به پروسه خاصی نیست تا در اون ثبت شوند، با سرعت بیشتری برای بازدیدکننده در دسترس قرار گرفته و دانلود میشوند.
استفاده از CDN میتواند به هاست و سرور شما قدرت بیشتری ببخشد و مزایای بسیار زیادی را برای سایت و کسب و کاری که در اون از CDN استفاده میکنید برای شما ایجاد کند که از جمله این موارد میتوان به موارد زیر اشاره کرد:
- افزایش سرعت بارگذاری و نمایش صفحات وب در سیستم بازدیدکنندگان به دلیل بارگذاری دادهها از نزدیک ترین cdn
- افزایش امنیت سایتها (زیرا بیشتر ارتباطها به صورت غیر مستقیم و محافظت شده هستند!)
- افزایش میزان پهنای باند و کاهش مصرف ترافیک اصلی سرور، به عنوان مثال اگر سرور شما ۱۰ گیگابایت پهنای باند به شما ارائه میکند وقتی شما از یک CDN که دارای ۱۰ node است استفاده میکنید در حقیقت شما ۱۰ * ۱۰ گیگابایت به پهنای باند خود افزودهاید!
- هزینه بسیار پایین برای استفاده به دلیل استفاده چندین نفر از سرورها
- نصب و راه اندازی ساده و آسان
- افزایش میزان بهینه سازی سایت در موتورهای جستجو نظیر گوگل
- راهکاری عالی برای جلوگیری از حملات DDOS به سرور سایت
- افزایش رضایت بازدیدکننده از سایت و کسب و کار شما به دلیل لود بسیار سریع سایت
اگر بخواهیم تا به صورت تصویری به شرح cdn بپردازیم تصویر زیر گویای کارکرد و نحوه رفتار cdn برای ذخیره داده ها و در نهایت تحویل محتوا به کاربران خواهد بود.
با اتصال یک سایت به سرور شبکه CDN دادههای قابل ذخیرهسازی آن مثل فایل های چند رسانه ای در سرتاسر شبکه cdn که در نقاط مختلف جهان قرار دارد ذخیره میشوند، به عبارت دیگر وقتی شما اقدام به انتشار یک فیلم در سایت خود میکنید یک نسخه کش شده از این فیلم به تمامی سرورهایی که در این شبکه CDN وجود داره ارسال شده و در آنها ذخیره میشوند و سپس بازدیدکننده بر اساس موقعیت جغرافیایی که به نزدیک ترین سرور CDN داره این دادهها را میتوانه با سرعت بیشتری به دلیل این که ترافیک کمی از آن هم اشغال شده از طریق همین سرورها دریافت و به آنها دسترسی داشته باشد. از طرف دیگر اگر حملاتی به سایت اتفاق افتد و افرادی برای سوءاستفاده بیایند تا به سرور سایت حمله کنند شکست خواهند خورد، چرا که cdn از این کار جلوگیری میکند و درواقع وقتی حمله ای بخواهد تا به سمت سایت صورت بگیرد به cdn صورت میگیرد و باید بتونن از cdn عبور کنند تا به سرور اصلی شما برای حملاتی مثل حملات DDOS برسند که این مورد هم امکان پذیر نیست.
CDN عمومی چیست؟
این نوع CDN ها بیشتر به درد برنامه نویسها میخورد که برای استفاده از برخی فایلها مثل فونت و کتابخانههای جاوا اسکریپت از آن استفاده کنند. به عنوان نمونه وقتی شما قصد استفاده از jQuery رو داشته باشید باید فایلش رو دانلود کنید و بعد از قرار دادن در مسیر قالب خود با استفاده از قطعه کد در هر جایی که بهش نیاز دارید آن را فراخوانی کنید.
اما حالتی هم وجود دارد که این فایل چون به صورت عمومی است، روی یک سری شبکه توزیع محتوا عمومی یا همان CDN عمومی قرار دارد که همه کاربران میتوانند از آن استفاده کنند و به لطف این قابلیت این نوع فایلها به جای لود از سرور سایت از نزدیکترین سرور CDN لود خواهند شد. برای نمونه اگر بخواهید از همین فایل بالایی استفاده کنید دیگه نیازی به این ندارید که فایل را در هاست خودت آپلود کنید. کافی است از همین فایل که روی سرورهای CDN گوگل قرار داره استفاده کنید.
<script src=”https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js”></script>
در این صورت سرعت دسترسی به این فایل چون روی شبکه CDN قرار داره بهتر خواهد بود. این حالت برای فونتها، فونت آیکونها، فایلهای CSS و… هم وجود دارد که میتوانید از آن استفاده کنید. کنید، بهتر است حداقل برای لود کردن برخی از فایلهای معروف در سایت خود همانند کتابخانههای JavaScript از CDN Public استفاده کنید.
البته استفاده از CDN به شکل اصولی به یک سری شرایط بستگی دارد، مثلا به عنوان اولین شرط اینکه:
- به چه علت ما قصد استفاده از CDN داریم؟ ایا فقط به خاطر سبز شدن GTMetrix؟
- اگر به دنبال نمره باشید ممکن است فقط نمره کسب کنید بدون عملکرد مفید، ولی اول پیشنهاد میشود به دنبال عملکرد بهتر باشید تا نمره خوب به خودی خود نمایان شود.
- سوال بعدی که باید از خود بپرسید این است که میزان بازدید چه قدر است؟ آیا بازدید آنقدری بالا هست که نیاز باشد از CDN برای توزیع محتوا استفاده کنیم؟
- بعد از پاسخ دادن به سوال بالا باید بررسی کنید که میزان پراکندگی بازدید کنندگان شما به چه نحوی است؟ آیا خارج از کشور بازدید دارید؟
در مقاله بعدی به بررسی ادامه این بحث و خطاهای دیگر میپردازیم.