درباره CDN ،آموزش راه اندازی

cdn

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

شرکت‌های بزرگ اینترنتی برای کنترل ترافیک سایت و سرویس‌های اینترنتی خودشون میان و از چندین سرور در نقاط مختلف جهان برای ذخیره‌سازی و تحویل اطلاعات و امکانات خود در سراسر جهان استفاده می‌کنند. حالا این امر باعث میشه که کاربران مختلف در سراسر جهان در هنگام استفاده از سرویس‌های آن‌ها هیچگونه تفاوتی را حس نکنند و همگی با بالاترین سرعت ممکن از نزدیک‌ترین سرور شرکت مورد بحث استفاده کنند. این امکان بسیاری از مزایای دیگه ای مثل امنیت، همیشه در دسترس بودن، پخش صحیح فشار بر روی چندین سرور و … را به همراه دارد. اینجاست که تکنولوژی CDN بسیار کارآمد می‌شود و می‌تواند به تمامی شرکت‌های کوچک و وبمسترهای سایت‌های خصوصی قدرت شرکت‌های بزرگ را بدهد. این سرویس به این شکل کار میکنه که از روی اطلاعات قابل دانلود شدن سایت شما (مانند فایل کدهای CSS، فایل کدهای جاوااسکریپت، فایل‌های مولتی مدیا و …) یک نسخه کپی بر روی nodes یا همون سرورهای مختلف خودش که در سراسر جهان داره ذخیره میکنه و بعد از اینکه کاربری وارد سایت شما میشه و نیاز به این اطلاعات داره همین داده های ذخیره شده روی سرور که به صورت اشتراکی به بسیاری از سایت‌ها سرویس میدهند از نزدیکترین سرور یا node بر اساس موقعیت جغرافیایی بازدیدکننده دانلود و بهش تحویل داده میشن. پس وقتی کاربری با مرورگر خودش وارد سایت میشه اطلاعات از نزدیک‌ترین سرور موجود به اون کاربر ارسال میشن و هر گاه هم سرور CDN به هر دلیلی در دسترس نباشند مشکلی وجود نداره و داده ها از سرور اصلی بارگزاری خواهند شد و تنها تفاوتی که وجود داره همین مبحث سرعت خواهد بود که مثل قبل بستگی به ترافیک سرور کمتر خواهد شد. چون این اطلاعات قبلاً در سرورهای CDN ثبت (Cache) شده‌اند و نیاز به پروسه خاصی نیست تا در اون ثبت بشن با سرعت بیشتری برای بازدیدکننده در دسترس قرار گرفته و دانلود میشوند.

استفاده از cdn میتونه به هاست و سرور شما قدرت بیشتری ببخشه و مزایای بسیار زیادی را برای سایت و کسب و کاری که در اون از CDN استفاده می کنید براتون به ارمغان بیاره که از جمله این موارد میتوان به موارد زیر اشاره کرد:

  • افزایش سرعت بارگذاری و نمایش صفحات وب در سیستم بازدید کنندگان به دلیل لود داده ها از نزدیک ترین cdn
  • افزایش امنیت سایت‌ها (چرا که بیشتر ارتباط‌ها به صورت غیر مستقیم و محافظت شده هستند)
  • افزایش میزان پهنای باند و کاهش مصرف ترافیک اصلی سرور، به عنوان مثال اگر سرور شما ۱۰ گیگابایت پهنای باند به شما ارائه می‌کند وقتی شما از یک CDN که دارای ۱۰ node است استفاده می‌کنید در حقیقت شما ۱۰ * ۱۰ گیگابایت به پهنای باند خود افزوده‌اید
  • هزینه بسیار پایین برای استفاده به دلیل استفاده چندین نفر از سرورها
  • نصب و راه اندازی ساده و آسان
  • افزایش میزان بهینه سازی سایت در موتورهای جستجو نظیر گوگل
  • راهکاری عالی برای جلوگیری از حملات DDOS به سرور سایت
  • افزایش رضایت بازدیدکننده از سایت و کسب و کار شما به دلیل لود بسیار سریع سایت

اگر بخواهیم به صورت تصویری به شرح cdn بپردازیم تصویر زیر گویای کارکرد و نحوه رفتار cdn برای ذخیره داده ها و در نهایت تحویل محتوا به کاربران خواهد بود.

cdn چیست

cdn چیست

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

آموزش نحوه فعال سازی cdn در وردپرس

1-ابتدا لازمه تا از یکی از سایت‌هایی که اقدام به ارائه cdn رایگان وردپرس می‌کنند ثبت نام کنید. یکی از بهترین این سایت‌ها Cloudflare.com هست که میتونید به رایگان امکان استفاده از CDN رو در سایت خودتون فراهم کنید. بنابراین روی دکمه زیر کلیک کنید تا به سایت مربوطه هدایت شده و در اون ثبت نام کنید.

2-بعد از اینکه وارد سایت کلودفلر شدید، ایمیل و کلمه عبور را در فیلدهای مربوطه وارد کرده و روی دکمه Sign Up کلیک کنید.
3-بعد از کلیک روی این دکمه به ساب دامنه مربوط به اکانت کلودفلر که روی dash.cloudflare.com قرار داره هدایت میشید که در اینجا هم ایمیل، رمز عبور و تیک گزینه پذیرش قوانین نمایش داده میشه و در این مرحله هم کافیه روی دکمه Create Account برای ساخت اکانت کلودفلر کلیک کنید.

4-تو این مرحله اکانت شما ساخته شده و با ایمیل و رمز انتخابی به صورت خودکار وارد اکانت خواهید شد. حالا توی این مرحله در اولین قدم از شما میخواد که نام دامنه خودتون رو وارد کنید. بنابراین مشابه تصویر زیر فقط نام دامنه خودتون رو بدون وارد کردن www، http، https و اضافه کردن کاراکتر / به آخر آدرس  وارد کرده و روی دکمه Add Site کلیک کنید.

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

5-در مرحله بعد به شما میگه که برای استفاده از کلودفلر باید مراحلی که شامل تغییر DNS دامنه، تایید سایت از سمت کلودفلر و… رو میشه انجام بدین و برای ادامه مراحل باید این موارد رو تایید کنید. بنابراین در اینجا صرفا روی دکمه Next کلیک کنید تا به مرحله بعدی هدایت بشید.

6-توی این مرحله باید اکانت خودتون رو انتخاب کنید. در اینجا چون ما کاربران ایرانی امکان خرید دلاری به صورت مستقیم رو نداریم و میخوایم از قابلیت‌های رایگانی که کلودفلر ارائه میده استفاده کنیم، بنابراین اکانت رایگان که با نام FREE هست رو انتخاب کرده و در نهایت روی دکمه Confirm Plan کلیک کنید.

7-عد از کلیک روی این دکمه پنجره‌ای باز میشه و از شما تاییدیه برای انتخاب این اکانت به همراه یک سری جزییات رو ارائه میده که در اینجا هم باید روی دکمه Confirm کلیک کنید.

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

9-معمولا به صورت خودکار تمامی رکوردهای موجود و مورد نیاز در این لیست مشخص میشن ولی اگه رکوردی وجود داشت که تشخیص داده نشده، میتونید  اونارو هم اضافه کنید. کافیه تو قسمت ip، ip سرور خودتونو وارد کنید. تو این مرحله میتونید تعیین کنید که سیستم کلودفلر بر روی کدام ساب دامین‌ها و رکوردها فعال یا غیرفعال باشه. ابرهای نارنجی رنگ به معنای روشن بودن سیستم برای رکورد مربوطه هستند و ابرهای خاکستری هم به معنی غیرفعال بودن رکورد خواهند بود. با کلیک بر روی هر ابر میتونید وضعیتش رو به فعال یا غیر فعال تبدیل کنید.

رکوردهایی مثل MX هرگز روی کلودفلر ایجاد نمی‌شوند و کلا بدون ابر هستند.

10-سعی کنید این گزینه‌ها رو در حالت پیش فرض باقی بگذارید و روی هر ساب دامنه یا خود دامنه که قصد دارید استفاده کنید وضعیتش رو در اینجا مشخص کنید. حالا روی دکمه Continue کلیک کنید تا به مرحله بعد برید.

11-توی این مرحله کلودفلر دوتا Name Server به شما معرفی میکنه که باید DNS های دامنه خودتون رو به این نیم سرور تغییر بدین. بنابراین نیم‌سرورهای دامنه خودتون رو به این نیم سرورها تغییر بدین و روی دکمه Continue کلیک کنید.

12-در این مرحله حالا باید منتظر بمونید که اکانت شما بررسی بشه و سایتتون توسط کلودفلر تایید بشه. توی این مرحله سایت شما در حالت pending قرار داره و به محض اینکه تایید شد به صورت Active مشابه تصویر زیر در سربرگ Overview قابل مشاهده خواهد بود.

بعد از تغییر DNS های دامنه باید به مدت 72 ساعت منتظر بمونید تا آدرس‌های Name Server دامنه شما در تمامی ISP ها در سطح جهان به کلودفلر تغییر بکنه و سایت شما از طریق کلودفلر لود بشه.

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

بعد از نصب و فعال سازی افزونه مشابه تصویر زیر منویی با عنوان Cloudflare در بخش تنظیمات وردپرس پیشخوان وردپرس سایت شما اضافه میشه که با رفتن به این منو میتونید اکانت کلودفلر رو به سایت وردپرسی خودتون متصل کنید.

برای این کار اگر از قبل اکانت کلودفلر رو ساختیدTروی HERE که داخل کادر قرمز مشخص شده کلیک کنید تا فرم اتصال کلودفلر به وردپرس برای استفاده از کلودفلر برای CDN وردپرس نمایش داده بشه. در غیر این صورت باید روی دکمه Create Your Free Account کلیک کرده و ابتدا اکانت خودتون رو در کلودفلر بسازید.

باید با ایمیلی که در کلودفلر ثبت نام کردید به همراه API Key اختصاصی که برای اکانت شما وجود داره اتصال کلودفلر به وردپرس رو انجام بدین. بنابراین ابتدا آدرس ایمیل خودتونو وارد کنید و برای بدست آوردن API هم در اکانت کلودفلر به آدرس https://dash.cloudflare.com/profile مراجعه کنید. سپس در انتهای صفحه و در بخش API Keys \بهتون نشون داده میشه که در اینجا باید روی دکمه View که برای گزینه Global API Key قرار داره کلیک کنید.

با کلیک روی دکمه View پنجره ای به شما نشون داده میشه که برای مشاهده API Key عمومی از شما میخواد که رمز اکانت کلودفلر رو وارد کنید. بنابراین رمزی که برای اکانت انتخاب کردید رو وارد کرده و سپس روی کپچا گوگل کلیک کنید. در نهایت روی دکمه View کلیک کنید تا API Key بهتون نمایش داده بشه.

بعد از کلیک روی این دکمه پنجره‌ای  نشون داده میشه که در اون API Key اختصاصی مختص دامنه شما قابل مشاهده است. حالا کافیه روی باکسی که API داخلش قرار داره یک بار کلیک کنید تا انتخاب شده و اونو کپی کنید.

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

بعد از اینکه API Key رو کپی کردید به صفحه تنظیمات افزونه کلودفلر در پیشخوان وردپرس برگردید و کد API رو داخل فیلد API Key قرار بدین. آدرس ایمیلتون رو هم وارد کرده و در نهایت روی دکمه Save API Credentials کلیک کنید.

اگه این اطلاعات به درستی وارد شده باشند.صفحه تنظیمات افزونه کلودفلر وردپرس نمایش داده میشه که در اینجا باید روی دکمه Apply کلیک کنید تا تنظیمات افزونه هم بر اساس تنظیماتی که در اکانت کلودفلر مشخص کردید برای وردپرس تعیین بشه.

تمام شد

تو صفحه تنظیمات کلودفلر در پیشخوان وردپرس هم میتونید به مک تب‌های Home، Settings و Analytics به تنظیماتی که افزونه در اختیارتون قرار میده دسترسی داشته باشید و نیازی نباشه که برای انجام تغییرات وارد اکانت کلودفلر خودتون بشید.

علاوه بر این امکانات بیشتری هم برای شما در نظر گرفته شده که شامل امکانات امنیتی مثل جلوگیری از حملات DDOS در وردپرس، امکان استفاده از SSL وردپرس از طریق کلودفلر به صورت رایگان، امکان فشرده سازی فایل‌های JS، CSS و HTML و بسیاری امکان دیگه رو خواهید داشت. علاوه بر این به دلیل اینکه از کلودفلر استفاده می‌کنید خطای Use a Content Delivery Network در GTmetrix هم برطرف خواهد شد و در واقع سرعت سایتتون به دلیل استفاده از کلودفلر چند برابر خواهد شد. پس میبینید که با استفاده کردن از CDN وردپرس توسط وردپرس از مزایای بسیار زیادی بهره خواهید برد و پیشنهاد می‌کنم حتما از کلودفلر استفاده کنید.

What is a CDN?
Learning Objectives

A content delivery network (CDN) refers to a geographically distributed group of servers which work together to provide fast delivery of Internet content.

A CDN allows for the quick transfer of assets needed for loading Internet content including HTML pages, javascript files, stylesheets, images, and videos. The popularity of CDN services continues to grow, and today the majority of web traffic is served through CDNs, including traffic from major sites like Facebook, Netflix, and Amazon.

A properly configured CDN may also help protect websites against some common malicious attacks, such as Distributed Denial of Service (DDOS) attacks.

Is a CDN the same as a web host?
While a CDN does not host content and can’t replace the need for proper web hosting, it does help cache content at the network edge, which improves website performance. Many websites struggle to have their performance needs met by traditional hosting services, which is why they opt for CDNs.

By utilizing caching to reduce hosting bandwidth, helping to prevent interruptions in service, and improving security, CDNs are a popular choice to relieve some of the major pain points that come with traditional web hosting.

What are the benefits of using a CDN?
Although the benefits of using a CDN vary depending on the size and needs of an Internet property, the primary benefits for most users can be broken down into 4 different components:

Improving website load times – By distributing content closer to website visitors by using a nearby CDN server (among other optimizations), visitors experience faster page loading times. As visitors are more inclined to click away from a slow-loading site, a CDN can reduce bounce rates and increase the amount of time that people spend on the site. In other words, a faster a website means more visitors will stay and stick around longer.
Reducing bandwidth costs – Bandwidth consumption costs for website hosting is a primary expense for websites. Through caching and other optimizations, CDNs are able to reduce the amount of data an origin server must provide, thus reducing hosting costs for website owners.
Increasing content availability and redundancy – Large amounts of traffic or hardware failures can interrupt normal website function. Thanks to their distributed nature, a CDN can handle more traffic and withstand hardware failure better than many origin servers.
Improving website security – A CDN may improve security by providing DDoS mitigation, improvements to security certificates, and other optimizations.
How does a CDN work?
At its core, a CDN is a network of servers linked together with the goal of delivering content as quickly, cheaply, reliably, and securely as possible. In order to improve speed and connectivity, a CDN will place servers at the exchange points between different networks.

These Internet exchange points (IXPs) are the primary locations where different Internet providers connect in order to provide each other access to traffic originating on their different networks. By having a connection to these high speed and highly interconnected locations, a CDN provider is able to reduce costs and transit times in high speed data delivery.

What is a CDN
Beyond placement of servers in IXPs, a CDN makes a number of optimizations on standard client/server data transfers. CDNs place Data Centers at strategic locations across the globe, enhance security, and are designed to survive various types of failures and Internet congestion.

Latency – How does a CDN improve website load times?
When it comes to websites loading content, users drop off quickly as a site slows down. CDN services can help to reduce load times in the following ways:

The globally distributed nature of a CDN means reduce distance between users and website resources. Instead of having to connect to wherever a website’s origin server may live, a CDN lets users connect to a geographically closer data center. Less travel time means faster service.
Hardware and software optimizations such as efficient load balancing and solid-state hard drives can help data reach the user faster.
CDNs can reduce the amount of data that’s transferred by reducing file sizes using tactics such as minification and file compression. Smaller file sizes mean quicker load times.
CDNs can also speed up sites which use TLS/SSL certificates by optimizing connection reuse and enabling TLS false start.
Reliability and Redundancy – How does a CDN keep a website always online?
Uptime is a critical component for anyone with an Internet property. Hardware failures and spikes in traffic, as a result of either malicious attacks or just a boost in popularity, have the potential to bring down a web server and prevent users from accessing a site or service. A well-rounded CDN has several features that will minimize downtime:

Load balancing distributes network traffic evenly across several servers, making it easier to scale rapid boosts in traffic.
Intelligent failover provides uninterrupted service even if one or more of the CDN servers go offline due to hardware malfunction; the failover can redistribute the traffic to the other operational servers.
In the event that an entire data center is having technical issues, Anycast routing transfers the traffic to another available data center, ensuring that no users lose access to the website.
Data Security – How does a CDN protect data?
Information security is an integral part of a CDN. a CDN can keep a site secured with fresh TLS/SSL certificates which will ensure a high standard of authentication, encryption, and integrity. Investigate the security concerns surrounding CDNs, and explore what can be done to securely deliver content.
Bandwidth Expense – How does a CDN reduce bandwidth costs?
Every time an origin server responds to a request, bandwidth is consumed. See how a CDN, like the Cloudflare CDN, cuts down on origin requests. (coming soon)

مطلب در تاریخ 13 تیر 1400 به روز شده است

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید ؟
در گفتگو ها شرکت کنید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.