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

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

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

 

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

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

 

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

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

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

 

شبکه توزیع محتوا یا cdn چه کاربردی دارد؟

شبكه‌ي توزيع محتوا يا CDN شبكه‌اي توزيع‌يافته از نظر جغرافيايي است كه علاوه‌بر تسهيل دسترسي به اطلاعات، مزايايي براي كاربر و شركت‌هاي ارائه‌كننده‌ي محتوا به‌همراه دارد. هدف اين شبكه‌ها تحويل محتوا به كاربران نهايي از نزديك‌ترين نقطه‌ي جغرافيايي با كيفيت و سرعت بالاتر است. CDN ها تحويل انواع محتوا مانند ويدئو، پخش زنده‌ي ويدئو، فايل‌هاي نرم‌افزاري، محتواي وب و موبايل و… را نیز برعهده دارد. و همچنین ممکن است خدمات ديگري مانند امنيت سايبري، بهينه‌سازي WAN و… را نيز عرضه كنند.

زمانيكه شما يك سيستم CDN را فعال ميكنيد تاثير آن بصورت زير خواهد بود:

۱- زمانيكه شما اين سيستم را براي سايت خود فعال ميكنيد، اطلاعات شما بر روي تمامي اين سرورها كپي و ذخيره ميشود و زمانيكه يك بازديدكننده به سايت شما وارد ميشود محتواي سايت را از نزديك ترين سرور به خود دريافت ميكند.

۲- CDN تمام اطلاعات ثابت شما مانند تصاوير، كدهاي CSS و javascript، mp3، pdf و فايلهاي ويدئويي شما را پشتيباني ميكند و تنها اطلاعاتي كه قابل تغيير و بروزرساني هستند مانند متون و كدهاي HTML از سرور اصلي شما فراخوان ميشوند. با اين كار مصرف پهناي باند هاست شما كاهش يافته و هزينه اي كه سالانه براي آن ميپردازيد كاهش چشمگيري خواهد داشت.

۳- تفاوت سرعت و عملكرد براي خودتان يا افرادي كه در نزديكي سرور اصلي شما هستند تفاوت زيادي نخواهد داشت، ولي براي كساني كه از نقاط مختلف جهان به سايت شما وارد ميشوند اين افزايش سرعت كاملا محسوس خواهد بود. با توجه به اينكه سايتهاي ايراني معمولا سرور و هاست خود را از خارج و كشورهايي مانند آلمان و آمريكا تهيه ميكنند و عموم بازديدكنندگان از داخل كشور هستند استفاده از CDN ميتواند بسيار موثر باشد.

 

مزاياي مهم استفاده از شبكه‌ي توزيع محتوا

۱. بهبود عملكرد:  محتواي وبسايت شما در سراسر دنيا Cache مي‌شود و با كوتاه‌ترشدن مسافت‌ رساندن محتوا به كاربران نهايي، زمان تأخير كاهش می یابد. CDN ميانگين تأخير بارگذاري وبسايت را ۷۳درصد كاهش مي‌دهد.

۲. افزايش مقياس‌پذيري: ازآنجايي‌كه به‌طور معمول۸۰ درصد محتواي هر وبسايت ثابت است، بخش چشمگيري از محتوا با كمك CDN، سريع‌تر و كارآمدتر تحويل داده مي‌شود. درواقع، اين عامل نيز به‌اندازه‌ي سرعت مهم است.

۳. امنيت: يكي از امكانات جانبي برخي از شبكه‌هاي توزيع محتوا، ارائه‌ي خدمات امنيتي بر بستر CDN است. ازجمله‌ي اين امكانات عبارت‌اند از: WAF ، Firewall ،Rate limit و امكان مهم DDoS Protection. همچنين، برخي از CDNها درست همانند هاست‌وب، امكان پياده‌سازي گواهي‌هاي SSL را مي‌دهند.

۴. بهبود سئو: سرعت بارگذاري صفحات وب عامل بسيار مهمي در رده‌بندي سایت به‌شمار مي‌آيد. با بهينه‌سازي وبسايتتان براي بارگذاري سريع‌تر، تكرار خزيدن‌هاي گوگل در صفحاتتان بيشتر مي‌شود و درنتيجه، محتواي بیشتری از سایت شما ایندکس می شود.

۵. قابليت اعتماد: با CDN ها اگر سروري دردسترس نباشد، درخواست‌ها به‌شكل خودكار به سرور بعدي ارسال مي‌شوند.

۶. كاهش هزينه‌ها:  اگر مبلغ هاست‌وب خود را براساس پهناي باند پرداخت مي‌كنيد، CDN مي‌تواند تا حد چشمگيري اين مبلغ را كاهش دهد؛ چون محتوا به‌جاي ارسال مستقيم از سرور اصلي هاستینگتان، از Cache موجود در سرورهاي CDN ارائه مي‌شود.

  1. كاهش Bounce Rate:عوامل بسياري در Bounce Rate وبسايت‌ها نقش دارند؛ مانند راهبري و ظاهر و كاربرد. از عوامل مهمي كه اصلاح بسيار آساني دارد، زمان بارگذاري وبسايت است. براي بهبود سرعت بارگذاري وبسايتتان علاوه‌بر داشتن CDN، بايد بهترين ارائه‌دهنده‌ي ميزباني (Hosting) و پلاگين Cache مناسب و CDN را انتخاب كنيد.

 

بهترین CDN ها

بهترین CDN ها یا شبکه ی توزیع محتوا به شرح زیر می باشد:

  • Incapsula
  • MaxCDN
  • Akamai
  • CDN77
  • Google CDN
  • Azure CDN
  • Amazon AWS CDN
  • CacheFly
  • Softlayer CDN
  • CloudFlare

 

معایب استفاده از CDN یا شبکه توزیع محتوا 

  • کارکرد برعکس برای هاست های ایران

اما استفاده از CDN برای هاست هایی که در داخل ایران هستند، معمولا نتیجه‌ی معکوس در سرعت بارگزاری سایت دارد و سرعت بارگذاری سایت را افزایش میدهد. اگر میخواهید از سرویس های ارائه دهنده CDN خارجی مثل Cloudflare و… استفاده کنید و سایت شما توسط سروری در ایران میزبانی میشود، پیشنهاد میکنیم که در این صورت از CDN ها استفاده نکنید. زیرا اگر یک CDN روی سایت خود نصب کنید، اگر کاربران‌تان از ایران به سایت شما مراجعه کنند، اطلاعات سایت شما از سروری نزدیک به ایران، مثل ترکیه برای آن ها نمایش داده میشود. به این دلیل که سرویس‌های ارائه‌ی دهنده‌ی CDN خارجی مثلا Cloudflare و…، در ایران سروری ندارند. این موضوع باعث میشود که سرعت سایت شما کاهش پیدا کند.

اما اگر سایت شما توسط سروری در آلمان پشتیبانی میشود، استفاده از سرویس های CDN خارجی مثل Cloudflare و… میتواند برای شما مفید باشد. به این دلیل که اگر کاربری از ایران بخواهد سایت شما را ببیند، اطلاعات سرور ترکیه برای او ارسال میشود و به دلیل نزدیک تر بودن ترکیه به ایران به نسبت آلمان به ایران، سایت شما سریع تر باز میشود.

  • بوجود آمدن مشکل در کش (Cache) شدن فایل ها

همانطور که گفتیم، CDN ها فایل های قابل دانلودی سایت شما، مانند فایل های جاوا اسکریپت، CSS و… را در سرورهای مختلف کپی میکنند و آن فایل ها را برای کاربران به نمایش در می آورند. اما ممکن است شما زمانی بخواهید تغییری در فایل‌های CSS خود بوجود آورید. به دلیل اینکه فایل های CSS شما روی سرورهای دیگر کپی یا اصطلاحا کَش (Cache) شده است، ممکن است شما بصورت لحظه‌ای نتوانید تغییرات را مشاهده کنید. زیرا سایت شما از روی سرورهای CDN خوانده میشود.

  • از کار افتادن بعضی از پورت (port) های دامنه

در برخی از سایت ها، شما وقتی اقدام به نصب CDN روی سایت میکنید، بعضی از پورت های سایت شما از کار می افتد. برای مثال در برخی از هاست هایی با کنترل پنل CPanel، با نصب CDN، پورت ۲۰۸۲ که مربوط به دسترسی به CPanel است، غیرفعال میشود.

  • هزینه‌های نسبتا بالای CDN ها

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