CDN یا Content delivery network تکنولوژی شبکه تحویل محتوا میباشد که هدف آن افزایش سرعت بارگذاری محتوا و امنیت سایت با استفاده از شبکه ای از سرور های تحویل محتوا میباشد.
CDN میتواند همانند یک پروکسی در یک یا چند دیتاسنتر میزبان فایل های محتوایی (مانند تصاویر ، فیلم و غیره) باشد که به هنگام لود سایت، تمامی درخواست های مربوط به محتوا از طریق آدرس سرور CDN درخواست و پس از پردازش آن، توسط سرور CDN لود میگردد.
نحوه عملکرد CDN
در اصل عملکرد CDN بدین صورت میباشد که فایل های محتوایی سایت شما، مانند: تصاویر، کد های CSS ، جاوا اسکریپت، مولتی مدیا و … در چندین سرور در لوکیشن های مختلف، کپی یا کش میگردد و با درخواست کاربر به هنگام لود شدن سایت ، محتوای سایت از نزدکترین لوکیشن به موقعیت مکانی کاربر نهایی، لود میگردد. این کار باعث میگردد محتوای سایت با سرعت بالاتری و از موقعیت های متفاوتی، با توجه به لوکیشن کاربر نمایش داده شود. در نتیجه سرعت سایت به صورت چشم گیری بالا خواهد بود، بدلیل اینکه اولا سرور میزبان فایل های مولتی مدیا ( تصاویر، استایل ها و …) توسط سرور CDN پردازش و برای کاربر نمایش داده میشود . در این میان در صورت استفاده از کش روی سرور مجزای CDN سرعت لود سایت بسیار بهینه شده و کاربر با سرعت بالایی سایت را مشاهده میکند.
به عنوان مثال، فرض کنید سرور اصلی سایت شما در ایران قرار دارد و بسیاری از بازدید کنندگان سایت شما در اروپا قرار دارند. با اضافه کردن یک سرور CDN در خارج از ایران ( به عنوان مثال در اروپا) تمامی محتوای سایت شما توسط این سرور CDN پردازش و به کاربر نمایش میدهد .این باعث میگردد، تمامی محتوای سایت از طریق سرور اروپا برای کاربران اروپایی یا کاربران خارج از ایران و نزدیک به محل سرور CDN لود گردد. این لود از سرور CDN باعث میگردد اولا پهنای باند ایران برای شما محاسبه نشود ، در ثانی سرعت لود با توجه به اینکه از یک سرور نزدیکتر به کاربر، محتوا لود میگردد سرعت لود کامل سایت نیز بسیار سریعتر خواهد بود.
تمامی شرکت های بزرگ جهان، جهت بهینه بودن سرعت لود سایت برای کاربرانشان، سرورهای خود را در لوکیشن های بسیار زیاد و متفاوت قرار میدهند. این عمل باعث میگردد فشار روی هیچ سرور متمرکز نگردد و درخواست ها در سرور های CDN متفاوت با سیستم های پردازش و نزدیک به کاربر انجام گردد و در نتیجه کاربران با سرعت بسیاری زیادی و بدون مشکل در ترافیک روی نتورک خاص بتوانند از خدمات آنها استفاده کنند، که البته هزینه CDN های بدین صورت اختصاصی با توجه به بستر های لازم بسیار بالاست و صرفه اقتصادی برای تمامی صاحبان سایتها ندارد.
مزایای استفاده از CDN
افزایش سرعت لود برای بازدیدکنندگان
سئو و بهینه سازی و کسب رتبه بهتر در نتایج گوگل
کنترل مصرف پهنای باند
افزایش امنیت سایت
افزایش قابل توجه امتیاز نتایج ارزیابی سایتها مانند Gtmetrix
معایب استفاده از CDN
اولین و مهمترین مسئله ای که برای استفاده همه گیر از CDN اختصاصی برای تمامی مدیران سایت ها وجود دارد، هزینه را اندازی این شبکه توزیع میباشد، چراکه لازم است یا تجهیزات این نوع سرور ها را خریداری و در دیتاسنتر های مد نظر میزبانی کنند و همچنین کانفیگ سرور های CDN نیز در صورتی قرار باشد بصورت حرفه ای و مطلوب عمل کند بسیار سخت میباشد. و یا اینکه سرور های CDN اختصاصی را اجاره کنند که بازهم هزینه اجاره ماهانه آنها بصورت اختصاصی معمولا مرقون به صرفه نمیباشد.
البته این مورد را نیز میتوان با استفاده از ابزار های رایگان برطرف نمود.
کنترل سخت در محتوا و جلوگیری از کپی های تکراری در سرور ها نیز یکی از معایب CDN میباشد که نیازمند استفاده از پلتفرم های پیشرفته میباشد.
معرفی CDN های رایگان
سرویس دهنده های بسیار زیادی در حال حاضر این امکان را رایگان در اختیار کاربران خود قرار میدهند ، از معروفترین این سرویس دهنده ها میتواند Cloudflare را نام برد که در کنار CDN حرفه ای، این سرویس دهنده میتواند جلوی بسیاری خرابکاری های عمومی را بگیرد و همچنین میتوانید از سیستم کشینگ این سرویس دهنده و امکانات بسیار زیاد به رایگان جهت افزایش سرعت و امنیت سایت خود نیز بهره مند شوید.
در صورتی که تمایلی به استفاده از سرویس های بسیار ارزشمند و رایگان کلودفلیر ندارید میتوانید از maxcdn نیز به عنوان شبکه توزیع محتوای سایت خود استفاده کنید.
سایت incapsula نیز دارای سرور های قدرتمندی برای CDN میباشد ولی متاسفانه استفاده از این سایت برای ایران محدود بوده وامکان استفاده از آن وجود ندارد.
در صورتی که شما از وردپرس استفاده میکنید میتوانید از پلاگین نسخه رایگان jetpack و CDN اختصاصی این شرکت نیز به عنوان شبکه توزیع محتوای سایت خود استفاده کنید.