احتمالا این روزها بعد از بالا آوردن سایتتان از دوستان شنیده اید که استفاده از سی دی ان فراموش نشود، خوب در این زمان برایتان سوال پیش می آید که اصلا CDN چیست و چه کاربردی دارد، سی دی ان در واقع اجماع تعداد زیادی سرور در نقاط مختلف دنیاست که با استفاده از تکنولوژی کشینگ می تواند به شما امکان داشتن یک سایت با قدرت و سرعت بهتر را بدهد، همچنین با ابزارهای امنیتی که این روزها توسط شرکت های ارائه دهنده سی دی ان مشاهده می کنیم دیده اید که امکان افزایش امنیت حداقل 30 درصد و حداکثر 95 درصد را خواهید داشت، داشتن ابزارهای فالسازی SSL، لایه های امنیتی، جلوگیری از ورود ربات ها و صدها امکان دیگر که هر کدام می تواند بی حد و اندازه برایتان مهم باشد.
در مقاله CDN چیست با شما خواهیم بود تا شما را با ابزار مهمی برای لایو نگهداشتن همیشگی سایت آشنا کنیم، تا با مشکلات داون شدن مکرر سایت بخاطر قطعی های چند ثانیه ای روبه رو نشوید، چرا که یک سی دی ان قابلیت این را دارد تا سایت شما را برای همیشه به صورت لایو به سراسر دنیا نشان دهد حتی اگر سرور شما قطع باشد، البته این امکان در حال حاضر در کلودفلر فعال است و در سی دی ان های داخلی متاسفانه این مورد به سطح کلودفلر نرسیده.
CDN چیست و منظور از شبکه توزیع محتوا چیست؟
شبکه توزیع محتوا یا به اختصار CDN مخفف عبارت Content Delivery Network است. وقتی صحبت از CDN میشود به این معنی است که تعداد زیادی سرور در کشورها و قارههای مختلف سراسر دنیا وجود دارند که نسخه کش شدهای از فایلهای ایستا سایت روی آنها قرار گرفته است. در واقع ما با یک نسخه کپی از تصاویر، فایلهای CSS و JS، فیلمها و انواع مختلفی از فایل مواجه هستیم که یک نسخه کپی شده آنها بر روی تمامی این سرورها قرار گرفته است.
حال فرض کنیم که سرور اصلی سایت ما در ایران قرار دارد که کاربران در هر بار بازدید از سایت، دادهها را از این سرور دریافت میکنند. زمانی که از CDN استفاده میکنیم، وقتی کاربری مثلا در کشور انگلستان قرار گرفته است، به جای اینکه مستقیما به سرور سایت ما در ایران متصل شود، به نزدیکترین سروری که در این شبکه گسترده قرار دارد متصل خواهد شد. اگر فرض کنیم که این شبکه در انگلیس سروری نداشته باشد، کاربر به نزدیکترین سرور مثلا در کشور ایرلند متصل شده و دادهها را دریافت میکند.
بنابراین با این کار به دلیل نزدیک بودن کاربر به سرور، سایت با سرعت بیشتری برای وی لود شده و علاوه بر این بار ترافیکی کمتری نیز روی سرور اصلی سایت ایجاد میشود که نتیجه آن کاهش مصرف پهنای باند و چندین مزیت دیگر است که در ادامه به آنها اشاره خواهم کرد.
CDN چگونه کار میکند؟
همانطور که به صورت خلاصه اشاره کردم، زمانی که شما از یک شبکه توزیع محتوا روی سایت خود استفاده کنید، در واقع یک نسخه کش شده از فایلهای خود را در چندین سرور قرار دادهاید. برای درک بهتر این مسئله به تصویر زیر دقت کنید.
- همانطور که در تصویر مشاهده میکنید، دایره آبی رنگ مربوط به سرور اصلی سایت است که در کشور آلمان قرار گرفته است. هر چیزی که شما به سایت خود اضافه کنید، روی این سرور ذخیره خواهد شد که در واقع همان هاست شماست.
- حال ۵ نود به این سرور متصل هستند که اگر هر یک را مشاهده کنید به یک سرور دیگر میرسید که این سرورها در واقع شبکهای از چند سرور هستند که در قالب CDN ایجاد شده است. این سرورها با یکدیگر در ارتباط هستند و به محض اینکه شما داده جدیدی روی سرور اصلی سایت خود قرار دهید، نسخهای به صورت کش شده و کپی از آن را دریافت و روی خود ذخیره میکنند.
- در نهایت ما کاربران را با آیکون مربوطه میبینیم که هر یک از کشورهای مختلفی به یکی از این نودهای CDN متصل هستند. در این حالت درواقع کاربران در حالت دریافت دادههای سایت از شبکه CDN هستند که هر کاربر داده را از نزدیکترین سرور به خود دریافت میکند.
اگر به تصویر دقت کنید، سرور اصلی سایت ما در کشور آلمان قرار دارد. اما ما سه کاربر را میبینیم که از کشور امریکا در حال دریافت داده هستند. با این که اصلا به سرور اصلی متصل نسیتند و با اینکه سرور اصلی درون کشور آنها قرار نگرفته، اما باز هم دادهها را از سرور CDN دریافت میکنند که در کشور آنها قرار دارد.
در این مثال اگر فرض کنیم ما کاربری از داخل ایران باشیم که قصد دسترسی به این سایت را داریم، سروری در شبکه CDN درون کشور ما قرار ندارد. پس چه اتفاقی میافتد؟ آیا به سرور اصلی در آمریکا متصل خواهیم شد؟
پاسخ منفی است. زمانی که سایتی روی شبکه CDN قرار گرفته باشد و از آن استفاده کند، به هیچ وجه دادهها از سرور اصلی دریافت نمیشود؛ مگر اینکه در تنظیمات شبکه توزیع محتوا این قابلیت غیرفعال شده باشد. به جای آن، به نزدیکترین سرور متصل خواهد شد که در اینجا برای کاربر ایرانی، شاید اتصال به سروری که در کشور سودان در شمال ایران قرار دارد، به دلیل نزدیک بودن فاصله بهترین انتخاب باشد.
کاربردها و مزایای استفاده از CDN
با توجه به اینکه هر شبکه توزیع محتوا امکانات و قابلیتهای خاص خود را ارائه میکند، مزایای استفاده از CDN بسیار متنوع بوده و اگر قرار باشد صرفا روی معرفی این مزایا تمرکز کنیم، نیاز به یک مقاله جامع خواهد بود.
ولی برای اینکه یک دید کلی از بیشترین مزیتهای آن داشته باشیم، شاید بتوان در چند گروه زیر آن را تقسیمبندی نمود که عبارتند از:
افزایش سرعت سایت
با توجه به اینکه دادههای سایت بر اساس موقعیت مکانی کاربر از نزدیکترین سرور دریافت میشود، در این صورت سرعت دسترسی به سایت افزایش خواهد یافت که اولین مزیت استفاده از CDN نیز همین مسئله است.
اما مسئله سرعت صرفا به دلیل نزدیکی سرور نیست. بخشی از آن نیز به این دلیل است که سروری که دادههای کش شده یا همان کپی شده از سایت شما روی آن قرار میگیرد، دارای پردازندههای بسیار قوی و چند هستهای در بهترین دیتاسنترهای آن کشور است که خود همین مشخصات سخت افزاری بالا نیز سبب میشود که با سرعت بیشتری کاربر فایلها را دریافت کند.
بخش دیگری از مسئله سرعت نیز مربوط به این میشود که بار ترافیکی برای دریافت فایلها از روی سرور شما برداشته شده و در نتیجه منابع رم و CPU که در اختیار دارید، به جای اینکه درگیر بررسی درخواستها و تحویل آن به کاربر باشند، میتوانند بیشتر در اختیار بخش دیگری مانند دیتابیس باشند تا شاهد افزایش سرعت سایت با استفاده از CDN باشیم.
افزایش امنیت سایت
یکی دیگر از مزایای CDN که بیشتر هم اهمیت دارد، بالا رفتن امنیت سایت است. امروزه به دلیل بالا رفتن تعداد دیوایسهایی که به اینترنت دسترسی دارند و از سوی دیگر تعداد کاربرانی که آنلاین هستند، اجرای حملات دیداس نسبت به گذشته به سادگی انجام میگیرد.
کافی است یک فایل مخرب را به هر طریقی که شده روی گوشیهای تلفن همراه، سیستم عامل ویندوز یا هر چیزی که شاید کمتر کسی فکر آن را بکند قرار دهید تا در سیستم کاربران اجرا شود. در این صورت است که میتوان به سادگی درخواستهای در لحظه با تعداد فوقالعاده زیاد را روی یک سایت اجرا کرده و در عرض چند ثانیه، آن را مختل کنیم طوری که نداند از کجا خورده است!
زمانی که شما از هر یک از شبکههای CDN استفاده کنید، تنظیمات مختلفی را نیز در اختیار دارید تا ضمن تعریف فایروالهای مختلف در شبکه بر روی سایت خود، از امکانات زیر بهرهمند شوید.
- دسترسی دادن یا عدم دسترسی به سایت برای کشورهای خاص.
- عدم دسترسی به سایت بر اساس نوع درخواستهایی که ارسال میشوند.
- امکان انتخاب چند لایه امنیتی مختلف برای زمانی که حملات دیداس روی سایت اجرا میگردد.
- امکان مدیریت پروتکل HTTPS و انتخاب نسخه TLS به منظور رد و بدل کردن دادهها در محیطی ایمن.
- دسترسی به SSL رایگان که بر روی بستر شبکه CDN قرار گرفته یا اینکه سینک کردن آن با مرورگر کاربر.
- و…
موارد امنیتی که در یک شبکه CDN قابل ارائه هستند خیلی پیچیدهتر و بیشتر از اینهاست که به دلیل پولی بودن برخی از آنها و خارج از بحث، اشاره به آنها نمیشود.
کاهش مصرف پهنای باند سایت
زمانی که از CDN استفاده میکنید، کلیه فایلهای ایستا سایت شما دیگر از روی بستر این شبکه برای کاربران لود شده و در نتیجه پهنای باند مصرفی هاست شما به شدت کاهش پیدا میکند.
به جرات میتوان گفت که این تغییر بالای ۹۰ درصد خواهد بود. چرا که سهم بسیاری از انواع فایلهایی که قرار است کاربران به آنها دسترسی داشته باشند، از طریق CDN قابل لود شدن است. جدایی از اینکه فایلهای ویدئویی نیز امکان کش شدن و کپی بر روی این شبکه را دارند؛ با این تفاوت که در برخی CDN ها مانند کلودفلر، برای نسخه رایگان شاید نهایتا فایلهایی تا حجم ۱۰۰ مگابایت از بستر CDN لود شوند.
افزایش آپتایم و دسترسی به محتوای سایت
مصرف کمتر پهنای باند منجر به این میشود که آپتایم و پهنای باند هاست شما نیز بیشتر شود. در این صورت سایت شما نهتنها برای کاربران، بلکه برای موتورهای جستجو نیز به صورت دائمی در دسترس خواهد بود.
البته این نکته را باید در نظر بگیرید که برای سایتهایی کهدادههای آنها از طریق دیتابیس لود میشود، این موضوع شاید کم اهمیت باشد. چرا که امکان قرارگیری دادههای دیتابیس و پردازشهای لحظهای روی شبکه توزیع محتوا فراهم نیست. این نوع دادهها مستقیما از هاست و سرور سایت شما لود میشوند که در صورت در دسترس نبودن، صفحه خطا و عدم دسترسی به هاست در شبکه CDN به کاربر نمایش داده میشود.
افزایش سئو سایت و کسب رتبه در موتورهای جستجو
افزایش سرعت و امنیت باعث میشود که سئو سایت شما نیز بهتر شود. از آنجایی که کاربران بر اساس موقعیت مکانی خود دادهها را از نزدیکترین سرور دریافت میکنند، در نتیجه سرعت بالاتری را در بازدید از سایت شما تجربه خواهند نمود.
به لطف سیستمی که گوگل روی مرورگر گوگل کروم برای بررسی رفتار کاربران پیادهسازی کرده است، در نتیجه متوجه این مسئله بوده و همین امر نیز خود به بهبود سئو سایت شما کمک خواهد نمود.
معایب CDN چیست؟
به طور قطع نمیتوان چیزی را تحت عنوان معایب استفاده از CDN عنوان نمود. چرا که همه مزایایی که در بالا به آنها اشاره کردم، جزو ضروریترین موارد برای یک سایت هستند. اما اگر بخواهم اشاره کوتاهی به برخی معایب آن داشته باشم، باید این مسئله را از این جهت بررسی کرد که برای ما کاربران ایرانی چه مشکلاتی دارد.
اولین مورد این است که به دلیل دستکاری گسترده و تغییراتی که مدام در زیرساخت شبکه اینترنت کشور رخ میدهد، زیاد مشاهده شده که برخی کاربران بر روی ISP های خاصی دسترسی به سایت ما بر روی شبکه محتوای CDN نداشتهاند. البته این موضوع همیشگی نیست و شاید در طول سال بیشتر از دو سه بار با آن مواجه نشویم. عمدهترین دلیل این مسئله نیز پس از فیلتر شدن سایتهای محبوبی رخ میدهد که از گستردهترین آنها میتوان به تلگرام اشاره کرد که برای چند روزی دسترسی به سایتها با اختلال گسترده مواجه بود.
مورد بعدی مربوط به دسترسی به برخی بخشهای سایت است که بر اساس کانفیگ سرور یا استفاده از سرور ایران شاید برای شما پیش بیاید. به عنوان مثال وقتی از CDN استفاده کنید، برای استفاده از وبمیل هاست خود دچار مشکل خواهید شد که معمولا ایمیلها با تاخیر چند دقیقهای دریافت میشوند
یا در حالت دیگری برای دسترسی به هاست خود که از پورتهای 2082 یا 2083 در هاست سی پنل استفاده میکنید، استایل لود نشود که برای رفع این مشکل نیز میتوانید از طریق ناحیه کاربری وارد هاست خود شوید یا اینکه مستقیما صفحه ورود به سی پنل را از طریق آدرس سروری که سایت شما روی آن قرار گرفته است را دنبال کنید.
معرفی بهترین CDN رایگان
شرکتها و سایتهای بسیار زیادی در سطح دنیا و حتی ایران وجود دارند که در زمینه ارائه شبکه توزیع محتوا و خدماتی که مربوط به این حوزه میشود فعالیت دارند. اما مرسومترین آنها که سایتهای ایرانی بسیار زیادی از آنها استفاده میکنند شامل دو مورد زیر است که به بررسی و معرفی کوتاهی از آنها میپردازم.
CDN رایگان کلودفلر
کلودفلر را میتوان به عنوان بزرگترین و بهترین CDN موجود در سطح جهان معرفی کرد که چندین سرور مختلف در دیتاسنتر کشورهای مختلف دارد. این سایت با توجه به اینکه اکانت رایگان نیز ارائه میکند و همکاری مستقیمی با شرکتهای بزرگی نظیر گوگل، آمازون، فایرفاکس و… دارد، ابزارهای زیاد و کاربردی را در جهت افزایش سرعت و افزایش امنیت سایت در اختیار قرار میدهد.
جدایی از این شما میتوانید با خرید پلنهای پولی این شرکت به امکانات خیلی بیشتری نیز دسترسی داشته باشید. ضمن اینکه به ابزارهای مختلفی که توسط توسعه دهندگان در اختیار قرار داده شده است، میتوانید خیلی از امکانات مورد نیاز سایت خود را بدون نیاز به برنامه نویسی از طریق همین کلودفلر روی سایت خود اضافه کنید.
شاید تنها بدی که این شبکه توزیع محتوا برای ما کاربران ایرانی دارد، عدم داشتن دیتاسنتر در داخل ایران است که همین موضوع سبب شده استفاده از آن از بیشتر به منظور بالا بردن امنیت سایت برای ما کاربران ایرانی محبوب باشد.
CDN رایگان ابر آروان
این شبکه توزیع محتوا که در داخل کشور فعالیت دارد و سرورهای خود را در چند کشور مختلف قرار داده است، یکی دیگر از گزینههایی است که میتوانید برای میزبانی شبکه توزیع محتوای سایت خود از آن استفاده کنید.
امکاناتی که این سایت در اختیار میدهد همان مواردی هستند که در کلودفلر وجود دارد؛ البته نه اینکه تمامی همان امکانات را شامل شوند و همان کیفیت را نیز ارائه دهند.
شاید بزرگترین مزیتی که بخواهید از این CDN استفاده کنید، وجود سرور در داخل ایران باشد که سبب میشود سرعت سایت شما برای کاربران ایرانی نیز افزایش یابد. اما این در شرایطی توصیه میشود که شما از هاست خارج استفاده کرده باشید. در صورتی که هاست شما درون ایران قرار دارد، لزومی به استفاده از CDN ندارید و تنها زمانی به آن نیاز پیدا میکنید که با افزایش ترافیک یا حملات دیداس در سایت مواجه باشید.
چرا باید از CDN استفاده کنیم؟
همانطور که در جای جای مقاله اشاره نمودم، استفاده از CDN میتواند از دو جهت اهمیت داشته باشد که آن هم وابسته به این است که ما از هاست اقتصادی ایران استفاده کنیم یا هاست خارج! البته در مقاله انتخاب هاست مناسب ما سعی کردیم تا شما را در مسیر انتخاب یک هاست مناسب یاری رسانیم اما در ادامه مقاله با ما همراه باشید تا انتخاب سی دی ان مناسب با یک هاست مناسب را بررسی کنیم.
اگر از هاست ایران استفاده میکنید، به این معنی است که کاربران ایرانی بیشتر برای شما اهمیت دارند و از طرفی بازار هدف سایت شما نیز ایران است؛ چرا که خدمات خود را به این کاربران ارائه میکنید. در چنین حالتی توصیه میشود از CDN های ایرانی استفاده کنید.
پس لزومی ندارد که از CDN بر روی هاست ایرانی استفاده کرد. مگر اینکه ترافیک سایت شما زیاد باشد و بخواهید با این کار پهنای باند مصرفی هاست خود را کاهش داده و ضمن آن سرعت سایت را افزایش دهید. یا اینکه به دلیل مسائل امنیتی همچون حملات دیداس و بروت فورس تنها راه ممکن استفاده از یک شبکه توزیع محتوا باشد.
اما زمانی که از هاست خارج استفاده میکنید، توصیه میکنم که کلودفلر استفاده کنید؛ چرا که وقتی از هاست ایران استفاده کنید و کلودفلر را به عنوان شبکه CDN انتخاب کنید، ترکیب درستی از آب در نیامده و خطاها و مشکلاتی را دریافت خواهید کرد که دلیل آن هم مشکلاتی است که در زیرساخت شبکه اینترنت کشور و همچنین دیتاسنترهای ایرانی برای ارتباط با سرورهای خارج وجود دارد.
در صورت استفاده از کلودفلر زمانی که هاست شما نیز روی هاست خارج باشد، کاربران شما از سرتاسر دنیا از نزدیکترین سرور به سایت متصل بوده و با بالاترین سرعت ممکن به بازدید از سایت شما خواهند پرداخت. ضمن اینکه هماهنگی بهتری نیز با دیتاسنترهای خارجی دارد که میتوانید از دهها مزایای آن بهرهمند شوید.
سخن آخر در CDN چیست؟
در این مقاله از واحد آموزش آریاسرور به بررسی شبکه توزیع محتوا پرداخته و دانستیم که CDN چیست. استفاده از CDN به صورت کلی برای سایتهایی که ترافیک و بازدید بالایی نداشته باشند لازم نیست؛ اما اگر فکر میکنید که سایت شما سرعت مناسبی ندارد میتوانید استفاده از آن را در لیست اولویتهای خود قرار دهید.
زمانی که این مسئله را از بحث امنیتی بخواهیم بررسی کنیم، استفاده از CDN میتواند ابزارهای مختلفی را در اختیار شما قرار دهد که به راحتی چند بار کلیک کردن میتوانید آنها را در سایت خود اضافه کنید و لزومی هم به کدنویسی پیچیده برای موارد امنیتی نداشته باشید.
برای نکته پایانی توصیه میکنم که برای هاست ایران به هیچ وجه از کلودفلر استفاده نکنید و برای هاست خارج نیز از CDN ایرانی استفاده نکنید. دلیل عدم استفاده از شبکه توزیع محتوای ایرانی مشکلاتی است که از نظر سئو دارند. این سرورها به دلیل اختلالاتی که گوگل در دسترسی به آنها دارد، به شدت باعث افت سایت شما خواهد شد که تجربه سایتهای کاربران مختلفی را در این حالت داشتهام.
همچنین فراموش نکنید که با اشتراک گذاری نظرات زیبای خود ما را از تجربیات خود بهره مند سازید، چرا که با اشتراک گذاری موارد آموخته با یکدیگر می توانیم دراین زمینه رشد زیادی داشته باشیم.