نحوه نصب CDN یا شبکه تحویل محتوا میشه گفت در حال حاضر یه کار خیلی کلیدی و مهم محسوب میشه. همونطور که همه ما میدونیم، CDN مخفف عبارت Content Delivery Network هست که به معنی شبکه تحویل محتواست. اتحادیه بین المللی مخابرات هر شبکه ای که برای تحویل محتوای دیجیتالی بهینه سازی شده باشه رو شبکه تحویل محتوا تعریف میکنه که باعث افزایش سرعت دسترسی کاربر به اطلاعات میشه.
خب الان بهتره که بدونیم که CDN چه جوری باعث افزایش سرعت دسترسی کاربر میشه. شبکه تحویل محتوا به این شیوه عمل میکنه که وقتی یه شبکه تحویل محتوا ساخته میشه سرور هایی در نقاط مختلف دنیا با فاصله جغرافیایی مشخص و تعیین شدهای مستقر میشن و درنهایت با دریافت داده ها از سرور اصلی و ذخیره اون، براساس موقعیت جغرافیایی کاربر که با استفاده از ISP مخابراتی کاربر شناسایی میشه، اطلاعات رو از نزدیکترین CDN به کاربر تحویل میدن تا کاربر با سرعت بیشتری به این اطلاعات دسترسی پیدا کنه.
با توجه به توضیحاتی که در بالا دادم، میشه دلیل این رو متوجه شد که چرا بعضی سایت ها مثل گوگل که همه ما هم از اون استفاده میکنیم و تقریباً از عملکرد اون راضی هستیم، سرعت بالایی دارن و اطلاعات رو خیلی سریع در اختیار ما میذارن. ولی در مقابل بعضی سایت ها هم وجود دارن که خیلی دیر لود میشن و دلیلش هم استفاده کردن یا نکردن سایت از شبکه تحویل محتوا هست. پس ما متوجه شدیم که راه اندازی CDN چقدر میتونه برای یه سایت مهم و کاربردی باشه. به خاطر همین اهمیت بالا، تو این مطب میخوایم از طریق 5 مرحله خیلی سریع با نحوه نصب CDN شما رو آشنا کنیم.
نحوه راه اندازی شبکه تحویل محتوا
1. پیاده سازی با Cloud یا On-Premises ؟
زمانی که یه سازمان تصمیم میگیره برای هماهنگی و یکپارچگی فعالیتهای کسب و کارش از یک سیستم ERP استفاده کنه دو گزینه پیش روی اون وجود داره. استفاده از سیستم در بستر ابر یا همون کلاود Cloud و گزینه بعدی استفاده از سیستم On-Premises. توی هردوی اینها ما به یه نرم افزار دسترسی داریم اما تصمیم با خود ما هست که از کدوم یکی استفاده کنیم. خب اینجا من تفاوتهای کلاود و On-Premises رو میگم و بعد این شما هستین که باید تصمیم بگیرین که میخواین از کدومیک اونها تو راه اندازی شبکه تحویل محتوا استفاده کنین. بعد از این که این محتوا رو بخونین، متوجه میشین که نحوه نصب CDN خیلی کار سختی نیست.
1. مدل به کارگیری
On-Premises: در این مدل شرکت سخت افزارهای مناسب رو فراهم میکنه و نرم افزار روی سرور و سخت افزارهای شرکت نصب میشه. در این حالت سازمان مسئول نگهداری سخت افزار و همه فرآیندهای مرتبط به اون هست و کاربر از طریق تجهیزات و زیرساختهای شرکت به سیستم دسترسی پیدا میکنه و البته محدودیت دسترسی داره و نمیتونه هر زمان که خواست به اطلاعات خودش دسترسی پیدا کنه.
سیستم کلود یا ابری: در این حالت، نرم افزار روی سرورهای شرکت ارائه دهنده خدمت، نصب میشه و سازمان از طریق اینترنت به سیستم دسترسی پیدا میکنه. تو این مدل سازمانها این اجازه رو دارن که به شکل اشتراکی به نرم افزار و منابع سخت افزاری در هر زمان و مکان دسترسی پیدا کنن.
2. هزینهها
On-Premises: این سیستم ها معمولاً به سرمایه اولیه بیشتری نیاز دارن چون علاوه بر خرید سیستم، تامین زیرساختهایی مثل سرور و تجهیزات برای اجرای نرم افزار ضروریه. تازه اگه سازمان، تیم IT حرفهای نداشته باشه، برای جذب و آموزش نیروی IT هم باید هزینه کنه. یه نکته خیلی مهم دیگه اینه که در این سیستمها، تیم IT باید میزان قابل توجهی از زمان و بودجه رو صرف به روزرسانی زیرساخت کنه.
کلود یا ابری: در این سیستمها، به دلیل این که هزینههای تامین زیرساخت حذف میشه، سرمایه اولیه کمتری نیازه. در این مدل سیستم، کسب و کارها به شکل اشتراکی و از طریق اینترنت به سیستم دسترسی دارن. استفاده از سیستم ابری به پرسنل IT این امکان رو میده که به جای وقت گذاشتن برای موضوعات مربوط به زیر ساخت، به ارائه راهکارها و بهبود فرایندها بپردازن.
3. دسترسی
On-Premises: تو این مدل سیستمها، چون سرورها در سازمان نگهداری میشن معمولاً کاربران در محیط سازمان امکان دسترسی به سیستم رو دارن. چون ایجاد این دسترسی هزینه زیادی داره که خیلی از سازمانها حاضر نیستن این هزینه رو قبول کنن.
کلود یا ابری: سیستمهای ابری در مقایسه با سیستم های سنتی امکان دسترسی بیشتری رو برای کاربر فراهم میکنن. استفاده از این سیستمها به کاربران این امکان رو میده که در هر زمان و مکانی به اطلاعات کسب و کارشون دسترسی پیدا کنن حتی بدون این که بخوان هزینه اضافه پرداخت کنن. پس از این جهت هم میشه گفت که نحوه نصب CDN از طریق بستر ابری بهتره.
4. امنیت
On-Premises: امنیت مهمترین دغدغه بسیاری از سازمانهاست. در این مدل سیستمها برای حفظ امنیت اطلاعات، در ابتدا باید زیر ساخت مناسبی آماده بشه. علاوه بر این تجهیزات امنیتی و نرم افزارهایی مثل فایروال و آنتی ویروس برای حفظ امنیت دادههای سازمان الزامیه. همچنین برای این که نگران نباشیم که ممکنه دادههای خودمون رو از دست بدیم، فرآیند پشتیبان گیری یا بک آپ گیری منظم ضروریه.
ابری یا کلاود: یکی دیگه از مزایای سیستم ابری نسبت به سیستم سنتی، امنیت بیشتر این سیستم هست. در این سیستم ارائه کنندگان خدمات این امکان رو دارن که از تجهیزاتی با استانداردهای امنیتی بالا استفاده کنن و این خیلی خوبه. علاوه بر این موضوعاتی مثل پشتیبان گیری منظم در سیستمهای ابری با فرآیندهای مشخصی تامین میشه.
5. دانش فنی
On-Premises: در این حالت چون شرکت نرم افزار رو روی زیر ساختهای خودش قرار میده، باید تیم IT وقت زیادی رو به نگهداری از سرور اختصاص بدن. در این مدل مسئولیت کنترل همه جنبههای فنی زیرساخت به عهده خود مشتری است. پس به نظر من سیستم On-Premise نحوه راه اندازی شبکه تحویل محتوا رو سختتر و پیچیدهتر میکنه.
ابری یا کلاود: یکی از مهمترین مزایای استفاده از سیستمهای ابری به ویژه برای کسب و کارهای کوچک و متوسط عدم نیاز به دانش فنی است. در این حالت همه مسئولیتهای نگهداری از نرم افزار و زیرساخت بر عهده شرکت ارائه دهنده است.
با تموم این توضیحاتی که دادم و تفاوتهایی که دیدیم، میشه فهمید که سیستم کلاود از سیستم سنتی بهتره و ما اصلا نباید به این انتخاب شک کنیم و پیشنهاد من اینه که از سیستم ابری یا همون کلود در راه اندازه CDN استفاده کنین.
2.ISP و مسیریابی
ISP مخفف عبارت Internet Service Provider یا همون ارائه دهنده خدمات اینترنتی سازمان یا شرکتی است که به کاربران امکان اتصال به اینترنت رو میده. در واقع میشه به اون واسط میان کاربر و اینترنت گفت. البته ISP کارهای دیگه مثل میزبانی وب، ثبت دامنههای اینترنتی و خدمات ایمیل رو هم انجام میده. یه نکته دیگه که باید راجع به ISP بدونیم اینه که ISPها برای امنیت خود و کاربران معمولا دارای FireWall (فایروال) هستند که به نوعی ارتباطات رو فیلتر کرده و مانع حملات احتمالی به شبکه خود و کاربرانشان میشه.
تعریف عملکرد ISP
از لحاظ فنی عملکرد ISP مثل مغازههای خدمات دهنده به مشتریان است. کاربر به ISP متصل میشه و با استفاده از امکاناتی که ISP در اختیار اون میذاره، به شبکه اینترنت متصل میشه و یا به شبکه داخلی یه شرکت متصل میشه و نیازهای خودش رو برآورده میکنه.
زیر ساختهای اتصال به ISP
از طریق زوج سیمهای به هم تابیده شده که اون را با نام twisted _pair میشناسیم، وایرلس، اینترانت و wifi انجام میشه.
زیر ساختها و تجهیزات داخل ISP
میتونیم به تجهیزاتی مثل server، switch، router اشاره کنیم. router یا همون مسیر یابی که در لایه سه از مدل osi فعالیت میکنه، به دو دسته برای شبکههای کوچک و شبکههای بزرگ دیتا سنترها تقسیم میشن. مسیر یابهای شبکههای کوچک شامل تجهیزاتی با خروجی پایین تا پنج مگابایت هستند. اصلا مسیر یاب رو اینطور تعریف میکنیم که دادهها رو از مبدا به مقصد تو مسیر درستی هدایت میکنن.
switch: وظیفه اتصال کاربران به یکدیگر رو در شبکههای داخلی به عهده داره و بر اساس قابلیت به دو دسته در لایه دو و لایه سه از مدل osi تقسیم میشه. که سوییچهای لایه دو وظیفه اتصال کاربران در لایه دو رو به عهده دارن و با آدرسهای mac سروکار دارن اما سوییچ های لایه سه علاوه بر mac از آدرسهای IP هم پشتیبانی میکنن که وظیفه اتصال کاربران در لایه سه رو داره.
server: به دو دسته سرورهای با سیستم عامل ویندوز و یا لینوکسی تقسیم میشن و از نظر سخت افزاری هم به دو گروه سرور PCها که خودمون قطعات اونها رو انتخاب و پیکر بندی میکنیم و سرورهای Dedicated یا اختصاصی که مربوط به ذات سرور هستن مانند برندهای HP و Del و سوپرمیکرو تقسیم بندی میشن.
سرورهای شبکه وظیفه پاسخ گویی به نیاز کاربران بر اساس نوع محتوای درخواستی رو به عهده دارن.
تجهیزات خارج از ISP
به سه گروه مسیر یابها و ارتباطات فیبر نوری و ارتباطات بیسیم تقسیم میشن. مسیر یابها به دو گروه مسیر یابهای داخل کشور و مسیر یابهای خارج کشور تقسیم میشن. ارتباطات فیبر نوری هم به دو گروه داخل کشور و بین قارهای تقسیم میشن. همچنین از لحاظ ساختار هم به دو گروه تک مد و چند مد تقسیم میشن که داخل ISP از فیبر نوری چند مد و در خارج اون از کابلهای تک مد استفاده میشه.
ارتباطات بیسیم: از نظر فناوری انتقال داده به سه دسته کوتاه برد و برد متوسط و برد طولانی تقسیم بندی میشن. که برد کوتاه شامل کارهای خانگی و برد متوسط شامل تجهیزات درون شهری و برد طولانی برای فرستندههای ماهوارهای استفاده میشه.
خب حالا ما باید سعی کنیم بهترین شرکت ارائه دهنده خدمات اینترنتی رو پیدا کنیم و به نزدیکترین POP دسترسی پیدا کنیم. برای مثال در ایران شرکتهای آسیاتک و شاتل بهترین خدمات اینترنتی رو ارائه میدن. اما برای این که ما دقیقا بدونیم باید چجوری یه ISP مناسب رو انتخاب کنیم، نکات زیر به ما کمک میکنه. درنتیجه با انتخاب یه ISP مناسب و دسترسی به نزدیکترین PoP میتونیم به نحوه نصب CDN کمک کنیم.
ویژگیهایی ضروری برای ISP
1. حضور جغرافیایی
باید یه ISP پیدا کنیم که منطقه موردنظر ما رو تحت پوشش قرار بده.
2. سرعت اتصال
باید مطمئن بشیم که سرعت کافی رو حتی در اوج ترافیک داره!
3. در دسترس بودن و قابل اطمینان بودن
مثل بقیه بخشهای زیرساختی ما، ISP باید همیشه در دسترس باشه. چون این ستون اصلی تجارت ما محسوب میشه.
4. صرفه جویی کردن در هزینهها
کاری که ما باید بکنیم اینه که هزینههای خدمات رو با دقت محاسبه کنیم. چون هزینههای یک ISP بستگی به تعدادی عوامل مختلف داره و ما باید بین خدمات و هزینهها یه تعادلی برقرار کنیم و یه ISP مناسب تهیه کنیم.
3. سرور مبدا Origin و PoP ها
ما میتونیم از CDN به عنوان حافظه پنهان با زیرمجموعههای کوچک استفاده کنیم تا به ارسال سریعتر مطالب برای کاربران کمک کنیم. پس باید ببینیم سرور مبدا که یکی از این زیر مجموعههاست، باید کجا واقع بشه؟ خب این تصمیم راحتیه چون ما میخوایم سرور مبدا در حد امکان نزدیک ما باشه. اما زمانی که میخوایم تصمیم بگیریم که سرور PoP رو کجا قرار بدیم و این که اصلا چه تعداد از اون رو لازم داریم باید یه سری عوامل رو در نظر بگیریم;
1. برای تعیین موقعیت PoP باید بدونیم که مهمترین مخاطبان ما از نظر جغرافیایی در کجا قرار دارن؟ یا سوال دیگهای که باید از خودمون بپرسیم اینه که آیا میخوایم در بعضی مناطق رشد تجاری اتفاق بیفته؟ اگه که جوابمون به این سوال مثبته، باید اون مناطق رو مشخص کنیم.
2. نکته دیگه که باید به اون توجه کنیم اینه که فاصله سرور مبدا تا مخاطبین ما چقدره و براساس اون مکان PoPها رو مشخص کنیم.
3. و نکته آخری که باید به اون توجه کنیم اینه که الگوهای ترافیکی رو تجزیه و تحلیل کنیم و این کار به ما این امکان رو میده تا زیرساختهای خودمون رو بهینه کنیم.
4. نرم افزار Varnish DIY CDN رو نصب کنین
این نرم افزار با داشتن زبان پیکربندی VCL بسیار به ما کمک میکنه. یه سری ویژگیها که این نرم افزار رو منحصر به فرد کرده عبارت است از:
1.گزینه Prefeth رو داره که دسترسی ما رو خیلی راحتتر میکنه.
2. قابلیت این رو داره که اطلاعات رو به طور مداوم ذخیره میکنه.
3. قابلیت دسترسی بالایی داره.
4. هم در زمان اتصال کاملاً ایمن است و هم در حافظه نهان کاملا رمزگذاری شده است.
توجه! باید بدونیم که موقع نصب CDN این نرم افزار باید تو همه PoPهای ما نصب بشه. که به طور کامل من الان توضیح میدم.
این نرم افزار رو باید در قسمت زیر نصب کنیم:
Origin Shield: این به محافظت از سرورهای اصلی ما کمک میکنه و برخی از درخواستها رو بارگیری میکنه. تو این مثال سرور مبدا در لندن مستقر میشه.
PoP A: یکی از دو PoP است که ما برای راه اندازی شبکه تحویل محتوا ایجاد میکنیم. برای مثال، ما اون رو در فرانکفورت آلمان در اتحادیه اروپا قرار میدیم.
PoP B: این PoP دیگه ما برای مخاطبان آمریکای شمالی محتوا رو ارائه میده. این PoP مستقر در نیویورک است. هر پاپ و محافظ مبدا (origin shield) دارای پیکربندی متقارن و جفت است تا مطمئن بشیم که هر پاپ همیشه در دسترس است حتی اگه یکی از دو گروه وارنیش در دسترس نباشه.
خب حالا میخوایم بریم سراغ آخرین نکتهای که باید راجع به نحوه راه اندازی شبکه تحویل محتوا بدونیم.
5.پیکر بندی وارنیش Varnish
1. باید اجازه بدیم که وارنیش محتوا رو شناسایی کنه تا بتونه تو پشتیبانی خودش، با اون ارتباط برقرارکنه. برای این کار لازمه که لینک “/etc/varnish/default.vcl/ رو باز کنیم و آدرس IP پشتیبان خودمون رو مشخص کنیم.
2. باید مشخص کنیم که کدوم وارنیش به درخواست رسیدگی میکنه. که این هم کار سادهای هست و کافیه که فقط ما لینک “etc/default/Varnish.param” را باز کنیم و “-a” رو روی عدد 80 تنظیم کنیم.
خب ما وارنیش رو راه اندازی کردیم و در واقع زیرساختهای شبکه تحویل محتوا رو بهینه کردیم و حالا با توجه به فیدبک مخاطبین، میشه متوجه بشیم که چقدر سایت ما الان بهتر کار میکنه.
کلام آخر
ما در اینجا نحوه راه اندازی شبکه تحویل محتوا یا همون شیوه نصب CDN رو یاد گرفتیم و متوجه شدیم که وجود یا عدم وجود یه شبکه تحویل محتوا چقدر میتونه روی کارایی یه سایت اثر بذاره. شاید بتونیم بگیم که یکی از رازهای موفقیت و برتری سایتی مثل گوگل نسبت به سایر سایت ها و دریافت فیدبک بهتر و مثبتتر از کاربران، استفاده از شبکه تحویل محتوا است. چون با این سیستم، دسترسی کاربران به اطلاعات خودشون تو هر زمان و هر مکانی خیلی راحتتر میشه.