
الأرقام والحقائق (بدلاً من المقدمة)
- في عام 2010 ، كان متوسط حجم صفحة الويب 481 كيلو بايت. في عام 2019 - بالفعل 1936.7 كيلو بايت ( إحصاءات مفصلة ). على مدى السنوات الثلاث الماضية ، زادت قيمة هذا المؤشر بنسبة 314.7 ٪. تشير الدراسات إلى أن الاتجاه لزيادة حجم صفحات الويب مستمر .
- يكتسب تدفق خدمات الصوت والفيديو حاليًا شعبية كبيرة. اعتبارًا من أبريل 2019 ، كان عدد المشتركين في خدمة Spotify الشائعة 217 مليون.
- وفقًا للاستبيانات ، يترك 25٪ من المستخدمين صفحة ويب إذا تم تحميلها لأكثر من 4 ثوانٍ. يفضل 74٪ من المستخدمين الذين يقومون بتنزيل موقع من جهاز محمول عدم الانتظار إذا استغرق التنزيل أكثر من 5 ثوانٍ. 46٪ من المستخدمين يرفضون التعامل مع خدمة الويب إذا كانت بطيئة.
ماذا الحقائق المذكورة أعلاه إلى؟
حقيقة أن الإنترنت أصبح محتوى "ثقيل" أكثر فأكثر كل عام.
وأيضًا في العالم الحديث ، يلعب دور المواقع الضخمة سرعة المواقع والخدمات. إذا كانت السرعة منخفضة للغاية - فهذا أمر محفوف بفقدان الجمهور ، وفي كثير من الحالات - يكون الربح أيضًا. تتمثل إحدى الطرق الموثوقة لحل هذه المشكلة في استخدام شبكات توصيل المحتوى (CDN).
تقدم Selectel
خدمة CDN منذ عام 2014 ، وقد درسنا بالتفصيل الجانب التقني من المشكلة. في هذه المقالة سوف نتحدث عن الجهاز وميزات CDN الحديثة.
الشروط الرئيسية
قبل أن تبدأ مناقشة موضوعية حول ميزات CDN ، دعونا نحدد المصطلحات الأساسية.
CDN (شبكة توصيل المحتوى) عبارة عن بنية تحتية للشبكة موزعة جغرافيا توفر توصيل سريع للمحتوى لمستخدمي خدمات الويب والمواقع. توجد الخوادم المضمنة في شبكة CDN جغرافيا بطريقة تجعل وقت استجابة مستخدمي الموقع / الخدمة ضئيلاً.
الأصل (الأصل) - الخادم الذي يتم تخزين الملفات المصدر أو البيانات الموزعة عبر CDN عليه.
PoP (نقطة التواجد) - خادم تخزين مؤقت داخل CDN ، يقع في موقع جغرافي محدد. يستخدم مصطلح الحافة للإشارة إلى هذه الخوادم.
المحتوى الديناميكي - المحتوى الذي تم إنشاؤه على الخادم في وقت استلام الطلب (إما تم تعديله من قبل المستخدم أو تنزيله من قاعدة البيانات).
المحتوى الثابت - المحتوى المخزن على الخادم في شكل
ثابت (على سبيل المثال ، الملفات الثنائية وملفات الصوت والفيديو و JS و CSS).
قليلا من التاريخ والنظرية
أدى الارتفاع الحاد في الإنترنت في منتصف التسعينيات إلى الوضع الذي بدأت فيه الخوادم في تحمل العبء. مع الخوادم في ذلك الوقت (والتي كانت أحيانًا أضعف في المواصفات الفنية من الكمبيوتر المحمول الأكثر إنتاجية) ، كان علي أن أذهب إلى حيل مختلفة: google ، على سبيل المثال ، "التخزين المؤقت الهرمي" وطريق المعلومات السريع - الآن تستخدم هذه العبارات فقط في مقالات حول تاريخ تقنيات الإنترنت . لفهم كيف تطورت تكنولوجيا توزيع المحتوى ، دعونا نجعل استطرادا نظريا صغيرا.
ملاحظة: يرتبط توزيع المحتوى الثابت والديناميكي بأنواع مختلفة من تحميل الخادم. في حالة المحتوى الديناميكي ، الذي يرتبط إنشاءه بمكالمات إلى قاعدة البيانات ، تكون سرعة المعالج وكمية الذاكرة RAM مهمة.
بالنسبة لتوزيع المحتوى الثابت ، والذي يكون "ثقيلًا" في معظم الحالات ويحتاج إلى تنزيله بسرعة كبيرة ، فإن سرعة الشبكة مهمة أولاً. فيما يلي معنى الحلول التقنية لتسريع عملية توزيع الإحصائيات: توفير القياس الأفقي دون تزامن ثنائي الاتجاه مع الخادم الرئيسي.
لتقليل الحمل ، بدأ أصحاب خدمات الويب في أواخر التسعينيات في توزيع الإحصائيات والديناميكيات من خوادم مختلفة. بدأت مشاريع الويب الكبيرة مع جمهور كبير منتشر في جميع أنحاء العالم لاستضافة خوادم ثابتة في مواقع جغرافية مختلفة.
ثم ، في أواخر التسعينيات ، بدأت الشركات في الظهور حيث أصبح تنظيم توزيع الإحصائيات أحد مجالات العمل الرئيسية. في عام 1998 ، أسس طالب معهد ماساتشوستس للتكنولوجيا دانييل ليفين ومعلم الرياضيات طومسون لايتون أكامي. وهي الآن واحدة من أكبر مزودات CDN (إن لم تكن الأكبر) في العالم.
بالفعل في عام 2004 ، استخدمت أكثر من 3000 شركة شبكات CDN ؛ بلغت التكلفة الإجمالية لتقديم المحتوى ما يصل إلى 20 مليون دولار شهريًا.
يتزايد عدد شبكات CDN حول العالم باستمرار: يتم توفير الخدمات ذات الصلة من قبل كل من الشركات الدولية الكبرى (على سبيل المثال ، Akamai ، Amazon ، Cloudflare) ، والعديد من مقدمي الخدمات الإقليميين (
مراجعات مفصلة ).
لا يتم استخدام CDN فقط لتوزيع الإحصائيات بالمعنى الدقيق للكلمة: إن توزيع المحتوى عبر خوادم متعددة في جميع أنحاء العالم يساعد على ضمان توفرها خلال أوقات الذروة.
على مدى السنوات العشر إلى الـ12 الماضية ، أصبح هناك نوع آخر من المحتوى واسع الانتشار على شبكة الإنترنت (العديد من خدمات دفق الصوت والفيديو ، والتي تحظى اليوم بشعبية كبيرة ويبلغ عدد جمهورها مليون شخص ، إن لم يكن المليار ،). التوزيع اليوم هو حالة استخدام شائعة أخرى لـ CDN.
النظر في مبادئ التشغيل وميزات استخدام CDN بمزيد من التفاصيل.

كيف يعمل CDN؟
تخيل خدمة ويب يستخدمها الأشخاص في جميع أنحاء روسيا. توجد الخوادم الرئيسية في سانت بطرسبرغ ، ويوجد المستخدمون في مواقع جغرافية مختلفة: مثلا ، في كراسنودار (2 604.2 كم من سانت بطرسبرغ) ، نوفوسيبيرسك (3 826.1 كم) ، إيركوتسك (5 661 ، 7 كم) أو فلاديفوستوك (9 602 ، 4 كم). كلما كان المستخدم أبعد ما يكون عن الخادم الأصلي ، كلما كانت الاستجابة "الأصلية" أطول. في فجر Runet ، في بداية العقد الأول من القرن العشرين ، كان بإمكان سكان Yuzhno-Sakhalinsk أو Petropavlovsk-Kamchatsky انتظار صفحة ويب كاملة ليتم تحميلها بالكامل لمدة 5 دقائق أو حتى 10 دقائق.
عند استخدام CDN ، يحدث كل شيء بشكل مختلف: تتم إعادة توجيه مستخدم من Vladivostok إلى أقرب خادم تخزين جغرافيًا كجزء من CDN ، مما يجعل تسليم المحتوى الثابت أسرع بكثير.

لتسريع توزيع الديناميات عند استخدام CDN ، يتم استخدام آليات أخرى: يقلل موفر CDN من مسار الشبكة بسبب شبكته.
سيناريو آخر مثير للاهتمام لاستخدام CDN هو ما يسمى البث المباشر: يمكن لمستخدمي الإنترنت من جميع أنحاء العالم مشاهدة البث أو الاستماع إليه من أماكن الأحداث في المستعرض (وأحيانًا في تطبيق خاص). يتم الترتيب على هذا النحو: يتلقى واحد أو عدة خوادم أصل دفقًا من الكاميرا ، يتم نقله فورًا إلى نقاط التواجد. لا تقوم خوادم الأصل بتوزيع المحتوى على العملاء. تتضمن شبكات CDN المتدفقة أيضًا موازنات التحميل التي تعيد توجيه الطلبات إلى خوادم الحافة الأقل تحميلًا في الوقت الحالي.
كيف يتم تنظيم توزيع المحتوى؟
كقاعدة عامة ، لتكوين توزيع المحتوى الثابت عبر CDN ، يجب عليك تنفيذ الخطوات التالية:
الخطوة 1: انقل إحصائيات الموقع إلى مجال منفصل ، على سبيل المثال ، static.example.com - سيكون هذا هو الأصل.
الخطوة 2: للعمل من خلال CDN ، قم بإنشاء مجال للنموذج cdn.example.com.
الخطوة 3: قم بتوصيل CDN من الموفر. للاتصال ، يجب على صاحب خدمة الويب إبلاغ الموفر بما يلي:
المجال الذي سيستغرق منه الإحصائيات - static.example.com ؛
المجال الذي سيذهب منه التوزيع هو cdn.example.com.
الخطوة 4: عند مسجل DNS الخاص بك ، قم بتكوين سجل CNAME من cdn.example.com على مجال موفر CDN ، الذي يخصصه موفر CDN عند الاتصال.
على سبيل المثال ، في CDN Selectel ، يحتوي هذا المجال على النموذج 85e77c09-bc03-43bf-b8f3-9492ae33390f.selcdn.net ، حيث يتم إنشاء 85e72c09-bc03-43bf-b8f3-9492ae33390f تلقائيًا.
الخطوة 5: على موقعك ، قم بتغيير مجال الإحصائيات التي تخطط لتوزيعها عبر CDN إلى cdn.example.com.
يحظر المستخدمون في المتصفح العنوان
www.example.com ، الذي يتلقى منه صفحة HTML. علاوة على ذلك ، يتم تحميل كل المحتوى الثابت ، على سبيل المثال ، الصور الرسومية ، من CDN (من العنوان cdn.example.com).
غالبًا ما يتم وضع المحتوى الثابت المخصص للتوزيع في مخازن الكائنات (
كتبنا عن هذا قبل ست سنوات ). هناك العديد من الإضافات والإضافات الخاصة بـ CMS الشائعة (Wordpress و Joomla و Drupal و 1C Bitrix وغيرها) ، والتي يمكنك من خلالها تكوين التكامل مع خدمات التخزين السحابية وتوزيع الإحصائيات عبر CDN.
بعد توصيل CDN ، ستعمل خدمة الويب على نفس الخادم الأصلي. سيتم تحميل الأجزاء المخزنة مؤقتًا من الموقع على خوادم شبكة CDN. يعثر النظام على أقرب خادم للمستخدم ويقوم بتحميل احصائيات الموقع منه في أسرع وقت ممكن.
دعنا ننتبه إلى نقطة مهمة واحدة: الخوادم الموجودة في CDN ليست مماثلة لخوادم الملفات التي يتم استضافة المحتوى للتنزيل عليها لاحقًا. لا يتم استخدام CDN لتخزين المحتوى ، ولكن للتخزين المؤقت بناءً على خوارزميات محددة.
كيف يفهم CDN أين يوجد أقرب خادم للتخزين المؤقت؟
وكقاعدة عامة ، يتم استخدام تقنيتين شائعتين لتحميل المحتوى من CDN: GeoDNS و AnyCast.
باستخدام GeoDNS ، يمكنك ربط عناوين IP متعددة باسم مجال واحد. بناءً على الموقع الجغرافي (يتم تحديده بواسطة عنوان IP الذي جاء منه الطلب) ، تتم إعادة توجيه المستخدم إلى أقرب خادم. يمكنك أن تقرأ عن ميزات GeoDNS في
هذه المقالة (باللغة الإنجليزية).
عند استخدام تقنية Anycast ، تكون العناوين شائعة ، ولكن يحدث التوجيه للخوادم "الخاصة بهم" في المنطقة. عند الوصول إلى العنوان
www.example.com ، تتم إعادة توجيه المستخدم إلى أقرب نقطة تواجد. يتلقى موفر المستخدم العديد من الإعلانات من شبكات مختلفة لها نقطة تواجد ، ويقوم جهاز توجيه الموفر بتحديد الأقرب منها. يتم أيضًا إرجاع الإجابة على طول أقصر الطرق.
كيف يتم تخزين المحتوى مؤقتًا؟
الأكثر شيوعًا هو نظام
الوصول الأول : ينفق المستخدم الذي يصل إلى الخادم الأصلي أولاً الحد الأقصى لوقت التنزيل. سيتلقى جميع المستخدمين اللاحقين البيانات المخزنة مؤقتًا في أقرب نقطة تواجدهم.
الجغرافيا مهمة للغاية هنا: على سبيل المثال ، بعد مكالمات من مستخدم من ريو دي جانيرو ، سيتم تخزين البيانات في ذاكرة التخزين المؤقت على خادم موجود في البرازيل ، مما لن يحل المشاكل المتعلقة بسرعة الوصول للمستخدمين من باريس أو لندن.
للتغلب على القيود التي يفرضها هذا المخطط ، يتم استخدام تقنيات الاستخراج الإقليمية: الخوادم المجاورة المضمنة في CDN تأخذ المحتوى من بعضها البعض ، ولا تصل إلى الخادم الأصلي.
في معظم شبكات CDN ، يتم إعادة توجيه المستخدم الذي يرسل طلب المحتوى الثابت إلى أقرب نقطة تواجد ويتلقى نسخة مخبأة من هذا المحتوى منه. إذا لم تتمكن أقرب نقطة تواجد من العثور على الملفات ، فسيبدأ البحث في نقاط التواجد المجاورة ، حيث سيتم إعادة توجيه استجابة المستخدم. في Akamai CDN ، يُسمى هذا الإجراء التوزيع المتدرج (يمكنك ترجمته إلى الروسية كـ "توزيع متعدد المستويات").
ما هي شبكات CDN المستخدمة؟
في أغلب الأحيان ، يتم استخدام CDN لتقليل وقت الاستجابة للمحتوى المخزن مؤقتًا ، والذي ، كما ذكرنا أعلاه ، يقلل من تدفق الزوار بسبب بطء تحميل المورد وبالتالي يقلل من الخسائر المالية المحتملة. يساعد CDN أيضًا في تقليل خطر فقدان الوصول إلى المحتوى بسبب انخفاض الخادم الأساسي. سيكون المحتوى متاحًا طوال الوقت أثناء استعادة الخادم الرئيسي.
يؤدي استخدام CDN إلى تقليل الحمل على الخادم الرئيسي بشكل كبير ، مما يساعد على حل مشكلة أحمال الذروة. CDN الحديثة قادرة على البقاء على قيد الحياة كميات كبيرة جدا. في نهاية عام 2018 ،
أعلن أكاماي
حجمًا قياسيًا لحركة مرور بيانات الشبكة (CDN) المنقولة : 72 تيرابايت / ثانية.
في أيامنا هذه ، يتم أيضًا استخدام CDNs بنشاط لتوزيع محتوى البث.
ما هو المهم أن نتذكر عند العمل مع CDN؟
مثل أي تقنية ، يحتوي CDN على عدد من الميزات.
المشكلة الأولى التي قد تواجهها خدمات الويب التي تعتمد على CDN هي زمن التخزين المؤقت. من المحتمل أن يكون الموقف التالي: على الخادم الرئيسي ، تم تغيير الملف ، لكن على خوادم التخزين المؤقت ، سيظل دون تغيير. هذا مهم بشكل خاص عند توزيع المحتوى الذي يتم تحديثه بشكل متكرر عبر CDN (صور من المشهد وإصدارات البرامج الجديدة وما إلى ذلك)
لضمان تسليم المحتوى "الجديد" في شبكات CDN الحديثة ، هناك وظيفة مسح ذاكرة التخزين المؤقت ، أي إزالة المحتوى من تجمع ذاكرة التخزين المؤقت. بالإضافة إلى ذلك ، يمكن لمالكي المواقع والخدمات إدارة الإعدادات بأنفسهم باستخدام رؤوس المدقق (انظر توصياتنا بشأن هذا الموضوع في
مقالة منشورة مسبقًا).
هناك صعوبة أخرى مرتبطة بالحظر: إذا تم حظر أحد الخدمات أو الخدمات الأخرى التي تمثل "جيرانك" من قِبل موفر IP CDN ، فقد يتم حظر موقعك معك. ولكن يمكن حل هذه المشكلة: عند الطلب ، يمكن لموفري CDN تغيير عنوان IP الخاص بك.
الذي يحتاج إلى CDN؟
هناك حاجة ماسة لشبكة CDN للمشاريع التي تضم جمهوراً كبيراً في مناطق أو بلدان مختلفة. كل شيء واضح هنا: الحد من التأخير ، والتوزيع السريع للمحتوى وزيادة مستوى الراحة ، ونتيجة لذلك ، المستخدمين الأكثر ارتياحا.
يمكن أن يكون CDN مفيدًا لمطوري تطبيقات الأجهزة المحمولة: وفقًا للإحصاءات ، يرفض المستخدمون غالبًا مواصلة العمل مع التطبيق بسبب مشاكل السرعة. في الآونة الأخيرة ، ظهرت حلول تقنية خاصة تركز على توزيع المحتوى على الأجهزة المحمولة. ويطلق عليهم شبكات CDN. يتم تقديم الخدمات ذات الصلة من قبل العديد من مزودي خدمة CDN - على سبيل المثال ، Akamai أو Amazon.
تحتاج CDN والمشاريع التي تركز على توزيع الألعاب ومحتوى الوسائط المتعددة والبث (كما ذكر أعلاه).
ما الذي تبحث عنه عند اختيار موفر CDN (بدلاً من الاستنتاج)
يتزايد عدد مستخدمي خدمة الويب لديك ، ويتوسع الجمهور ، وتفكر في توصيل شبكة CDN لتحسين توزيع الإحصائيات وتسريعها وتقليل الحمل على الخوادم الرئيسية.
ما الذي يجب أن أبحث عنه عند اختيار موفر CDN؟
أولاً ،
عدد نقاط الوجود . هذا ينطبق بشكل خاص على المشاريع ذات جمهور دولي واسع. سيكون من المفيد العثور على معلومات حول نقاط التواجد في أكثر المناطق إثارة للاهتمام بالنسبة لك ومقارنتها مع الجمهور المحتمل للموقع.
ثانيا ، هو
وجود المفاصل مع مشغلي الاتصالات . هذا أيضًا عامل مهم تعتمد عليه سرعة وكفاءة شبكة CDN. على سبيل المثال ، قد يكون هناك تأخير أطول من مزود CDN الذي يحتوي على نقاط تواجد في 100 مدينة ، ولكن مع عدد صغير من الاتصالات ، مقارنة بموفر لديه نقاط تواجد في 5 مدن ، ولكن هناك اتصالات أكثر بكثير مع شركات الجوال.
لسوء الحظ ، في معظم الحالات ، لا يقوم موفرو CDN بنشر مثل هذه المعلومات ، لذلك يمكنك فقط التحقق من كل شيء عن طريق الاختبار.
ثالثًا ،
توفر خدمات ووظائف إضافية . يقدم العديد من موفري CDN خدمات مثل تحليل إحصاءات الاستهلاك ، وإدارة سياسات التخزين المؤقت ، وإدارة رؤوس HTTP ، وتحميل المحتوى "الثقيل" مسبقًا (من 200 ميجابايت أو أكثر) ، ومسح ذاكرة التخزين المؤقت تمامًا وانتقائيًا.
بالإضافة إلى ذلك ، عند اختيار موفر CDN ، تحتاج إلى التحقق مما إذا كان يدعم التقنيات والبروتوكولات التي تحتاجها (HTTP / 2 ، IPv6 ، شهادات SSL وغيرها).