شرح خدمات CDN وآلية عملها لزيادة سرعة موقعك

تساعدك خدمات CDN في زيادة سرعة موقعك، وربما تكون سمعت عن هذه التقنيات قبل ذلك ولكن تريد أن تعرف أكثر عن آلية عمل شبكات CDN والتقنيات المستخدمة بها، وكيف تستفيد منها في زيادة سرعة موقعك، وهذا ما سنتحدث عنه في هذه المقالة.

محتويات المقالة:

ما هي خدمات CDN؟

لنتعرف على الفائدة التي توفرها لنا خدمات CDN كأصحاب مواقع بشكل عام، وأصحاب موقع ووردبريس بشكل خاص، دعنا نبدأ الشرح بالسيناريو التالي : 

نفترض أن 3 زوار قاموا بالدخول إلى موقعك الإلكتروني من ثلاث بلدان مختلفة وهي ” أمريكا – ألمانيا – البحرين “، وقاموا بطلب موقعك المتواجد على سير بألمانيا مثلًا، ففي هذه الحالة لن تكون فترة تحميل الموقع واحدة لدى كل الزوار، وفترة التحميل تلك ستعتمد بشكل رئيسي على قرب أو بعد خادم موقعك عن البلد أو المكان الذي يقوم فيه الزائر بالدخول إلى موقعك. 

على سبيل المثال دعنا نفترض بأن موقعك مستضاف على سيرفر لإحدى الشركات المتواجدة بألمانيا، ففي هذه الحالة سيحظى زوار دولة ألمانيا بأعلى سرعة تحميل للموقع، بينما ربنا يعاني بعض  زوار الدول الأخرى مثل أمريكا والبحرين وغيرها من زيادة فترة تحميل الموقع لديهم. 

إذا قمت بشراء سيرفر خاصة لموقعك في كل دولة من الدول التي يأتيك منها زوار إلى موقعك، فسيكون الأمر مكلفا للغاية وربما لن يكون عملي بشكل كبير، وبالتالي فإن خدمات CDN تساعد المستخدمين في الوصول إلى موقعك وكأنه مستضاف على الكثير من السيرفرات في كل دولة أو في أقرب مكان يتواجد فيه زوار موقعك. وهو ما يجعل تلك التقنية متخصصة بشكل كبير في تقليل فترة تحميل المواقع الإلكترونية لدى زوارها. 

الفرق بين CDN والاستضافة

في البداية تحتاج إلى أن تعرف بأن خدمات CDN ليست بديلة للإستضافة التي يتواجد عليها موقعك، وإنما هي تعمل بمثابة عامل مساعد من أجل تعزيز كفاءة وسرعة موقعك كما لم يكن من قبل. 

الفرق هو أن خدمة الاستضافة تقوم باستضافة موقعك على خادم حقيقي موجود في بلدٍ معين.
على سبيل المثال عندما تقوم بالتسجيل في إحدى شركات الإستضافة فإنه يتم سؤال عما إذا كنت تريد اختيار مكان جغرافي معين ليتم حجز الاستضافة لموقعك عليها: 

لكن شبكة CDN هي عبارة من مجموعة مترابطة ومتزامنة من السيرفرات Servers التي تنتشر في بلدان متعددة ومختلفة حول العالم وتعمل على حفظ نسخ متطابقة من محتوى الموقع الإليكتروني كل نسخة على سيرفر في مكان مختلف، ولا تستضيف ملفات موقعك بالشكل الحقيقي.


كيف تعمل خدمات CDN 

لتبسيط الأمور بداية، فإن مصطلح CDN هو إختصار content delivery network وهي شبكة من الاجهزة والخوادم المنتشرة حول العالم، والتي تديرها الكثير من الشركات المتخصصة في هذا المجال مثل Google و  Cloudflare وغيرها. يتم إعداد تلك السيرفرات التي تنتشر في العديد من الدول العالم بحيث تقوم بإستضافة بيانات وملفات المواقع المختلفة بأكثر من نسخة في أكثر من دولة. 

تعمل خدمات إلى CDN على استضافة ملفات وبيانات المواقع سواء كانت مواقع ثابتة (Static) أو مواقع متغيرة (Dynamic) ، ونوضح الفرق بين النوعين في السطور التالية : 

  • المواقع الثابتة (Static) : هي تلك المواقع التي لا يتم تحديث محتواها بشكل مكثف ومستمر، مثل مواقع التدوين البسيطة ومواقع الشركات التي تقوم بعرض الأعمال فقط أمام الزوار، وكذلك المواقع الشخصية التي ربما تكون عبارة عن سيرة ذاتية ولا تحتوي على أوامر برمجية متغيرة. هذه المواقع لا تستهلك موارد السيرفر Server بشكل كبير في الغالب.
  • المواقع المتغيرة (Dynamic): هي تلك المواقع التي يتم تغيير وتحديث محتواها بوتيرة متسارعة وكبيرة، حيث يمكن أن يتم تحديث محتواها عشرات ومئات المرات في اليوم الواحد. مثل المواقع التي تعمل في مجال التجارة الإلكترونية. هذا النوع من المواقع في الغالب يستهلك الكثير من موارد السيرفر بشكل متزايد. 

خطوات عمل شبكات CDN

دعنا نتحدث عن الخطوات الفعلية التي تحدث عند إعتماد موقعك على شبكات CDN وكيف تستجيب الخدمات للزوار، فدعنا نوضح أن خطوات العمل تتم على النحو التالي:

  • الخطوة الأولى: عندما تقرر الإشتراك في إحدى خدمات مزودي شبكة CDN على موقعك، وليكن على سبيل المثال قمت بالإشتراك في خدمة كلاود فلير، ثم قمت بتسجيل حسابك وتفعيل الخدمة على موقعك، لتقوم بعملها على موقعك بإقامة شبكة تقوم بإرسال نسخ مخزنة من موقعك إلى الزوار.
  • الخطوة الثانية: تقوم شبكات CDN باستضافة نسخة من موقعك على العديد من الخوادم الموزعة لدى الشبكة حول العالم، لتتمكن من إظهار تلك النسخة المحفوظة للزوار من خلال الخوادم الأقرب إليهم حسب نطاقهم الجغرافي.
  • الخطوة الثالثة: تبدأ تقنيات تلك الشبكات بالعمل لتقديم أفضل تجربة تصفح لزوار موقعك، من خلال إظهار نسخة طبق الأصل من موقعك لكل زائر حسب نطاقه الجغرافي وحسب الخادم الأقرب له، فمثلًا ترسل الزائر الألماني لخادم أقرب له من الزائر السعودي، وهكذا بهدف حصول المستخدم على تجربة أسرع في تصفح موقعك. وبالتالي يظهر موقعك سريعًا لكل الزوار الذين يأتون لك من كافة أنحاء العالم.

ما هي فوائد شبكات CDN 

إليك أهم الفوائد التي تحصل عليها من استخدام وربط شبكات CDN بموقعك : 

1-تحسين أداء وسرعة الموقع 

إن سرعة تحميل الموقع هي واحدة من أهم الفوائد التي ربما يحل عليها صاحب موقعك الإلكتروني. حيث أن سرعة الموقع تساعد في الكثير من التحسينات التي أهمها زيادة فترة بقاء الزائر داخل الموقع، بالإضافة إلى تقليل معدل إرتداد الزوار أو ما يسمى bounce rates، وهو ما يساعد على قوة الموقع وزيادة كفاءته بشكل ملحوظ.

وفي المقابل إن شبكات CDN لديها القدرة على تحسين أداء الموقع بشكل عام، من خلال بعض الخطوات:

  • تقليل وقت TTFB 

يشير مصطلح TTFB إلى time to first byte والذي يعني الوقت الزمني أو الفترة الزمنية التي ينتظرها المتصفح بعد كتابة رابط الموقع به حتى يستقبل أول بيانات byte من السيرفر الذي يتواجد عليها الموقع المراد الدخول إليه، إذا كلما زادت فترة TTFB كلما زاد وقت تحميل الموقع أمام الزوار. 

لكي تعرف فترة TTFB التي انتظرها المتصفح للدخول إلى أي موقع عبر الإنترنت، يمكنك الوصول إلى ذلك بسهولة عبر فتح إعدادات المتصفح الخاصة بك، والدخول على خيار ” Developer tools” أو ” أدوات المطورين”، ستفتح لك نافذة إعدادات التطوير، والتي تقوم فيها بالضغط على Network أو شبكات ، ثم الضغط على Timing أو الوقت ، لتفتح لك تلك النافذة والتي يظهر بها فترة TTFB التي انتظرها المتصفح للدخول إلى بيانات الموقع عبر الإنترنت: 

  • تسريع فتح الموقع أمام الزوار اعتمادا على نسخ محفوظة

كما يمكنك القيام بتنصيب إحدى إضافات الووردبريس التي تقوم بعمل نسخ محفوظة Caching لزوار موقعك من أجل تسريع عملية فتح الموقع أمامهم. كذلك تقدم شبكات CDN بتقديم نسخ محفوظة لملفات موقعك لدى الزوار المترددين على الموقع، وتسمح تلك التقنية بإضافة سرعة أكبر وقت تحميل الموقع الموقع أمام الزوار المترددين عليها بشكل مستمر، حيث تستمر ملفات الكاش محفوظة داخل شبكات CDN حتى تقوم بالدخول إلى لوحة تحكم  CDN الخاصة بك ومسح كل تلك ملفات الكاش. 

  • المساهمة في ضغط ملفات الموقع بدون التأثير على جودتها بتنقية GZIP 

من أهم الأشياء التي تقوم بها شبكات CDN إلى زوار موقعك، هي تقليل فترة تحميل ملفات الموقع، وذلك لأنها تقوم بضغط الملفات مثل ملفات HTML و  Javascript و CSS، ويتم الضغط بتقنية GZIP وهي تقنية حديثة تستخدم في ضغط الملفات الى اقصى حد ممكن، وفي نفس الوقت لا تؤثر على جودتها داخل الموقع بشكل ملحوظ مثلما يحدث في الكثير من الأدوات الأخرى التي تقوم بالضغط بتقنيات ZIP التقليدية والتي ربما تؤثر على جودة الملفات المضغوطة. 

لذلك فإن شبكات CDN تسبب نقص واضح للغاية في سرعة تحميل المواقع التي تحتوي على الكثير من الملفات والتي يمكن تصنيفها على أنها مواقع كبيرة أو متوسطة الحجم. 

  • تقنية Brotli   ضغط الملفات الحديثة

ربما سمعت عن تقنية Brotli والتي تم تطويرها من قبل فريق مبرمجي جوجل، وهي تقنية حديثة ومطورة لضغط الملفات بنسبة أكبر 26% من أي تقنية أخرى لضغط الملفات مثل GZIP . لا تقوم جميع شبكات CDN بدعم هذه التقنية لكن من الواضح أنها ستكون مدعومة بشكل أساسي خلال المستقبل القريب، وذلك نظرا لأهميتها الكبيرة في ضغط الملفات إلى مستوى قياسي جديد، وهو ما يسهم في زيادة معدل فتح وتصفح المواقع الإلكترونية. 

  • دعم بروتوكول HTTP\2 الحديث 

أصبحن الأن تقريبا كافة شبكات وخدمات CDN تدعم تقنية الاتصال عبر بروتوكول HTTP\2 ، وهو البروتوكول المطور من HTTP القديم. حيث يتميز هذا البروتوكول  بسرعة الوصول إلى المعلومات بمعدل أسرع بكثير من السابق، وهو ما يفسر قدرة شبكات CDN على تحسين أداء وتسريع معدل فتح المواقع الإلكترونية المرتبطة بها بشكل ملحوظ. 

2- تحسين محركات البحث

في مطلع العام 2010 أعلنت جوجل بشكل رسمي بأن سرعة تحميل الموقع ستكون أحد أهم العوامل التي سيتم الاستناد إليها لترتيب المواقع داخل محركات البحث في نتائج البحث التي تظهر أمام المستخدم، لذلك تخيل كمية الزيارات التي ربما تفقدها بسبب تأخر موقعك في نتائج بحث جوجل على سبيل المثال بسبب البطء الشديد للموقع وصفحاته الداخلية. 

شبكات CDN وما تقدمه من خدمات من شأنها أن تساعد على تسريع فتح الموقع أمام الزوار هي بذلك تساعد بشكل مباشر في تحسين ترتيب المواقع داخل محركات البحث، هذا بالإضافة إلى تسريع عملية الأرشفة Indexing وكذلك الزحف إلى صفحات الموقع الداخلية بسبب تحسين سرعة الوصول إلى تلك الملفات واستعراضها من قبل عناكب جوجل. 

3- تقليل استهلاك Bandwidth 

تساعد شبكات CDN عبر التقنيات الخاصة بها كذلك في تقليل الموارد المستهلك من قبل زوار موقعك والتي تقوم باستهلاك موارد CPU للسيرفر المستضاف عليها موقعك، وهو ما يساعد في النهاية على تقليل التكلفة التي تدفعها إلى شركة الاستضافة مقابل استهلاك Bandwith المخصص لك. 

والصورة التالية توضح توفير أحد المواقع المرتبطة بخدمة CDN من شركة كلاود فلير  نسبة 69% من استهلاك الباندويث .

كذلك تساعد شبكات CDN في تقليل تكلفة استهلاك موارد السيرفر عبر حظر استعلامات Hotlinking تلقائيا من المواقع الأخرى التي تقوم بنسخ روابط الصور وملفات الميديا داخل موقعك وعرضها مبشرة داخل مواقعهم، مما يتسبب في استهلاك موارد السيرفر في كل مرة يتم فتح أو عرض تلك الصور في المواقع الخارجية. 

4-المرونة العالية وتأمين المواقع من السقوط 

تم بناء خدمات CDN في بصورة عامة بحيث تقوم بتخفيض الضغط الواقع على الاستضافات بسبب الكميات الكبيرة من الاستعلامات التي تتم بداخلها نتيجة الأمور التي يقوم بها الزوار داخل المواقع. لذلك إذا كنت تعاني على استضافة صغيرة تعاني من لحظات الضغط العالية، فإنه من المحتمل للغاية أن يتحسن أداؤها إذا تم تزامنها مع إحدى شبكات CDN. 

حيث أن شبكات CDN تحاول توفير الكثير من الأدوات والخيارات التي تخفف من الحمل الواقع على المواقع نفسها، وهو ما يوفر المرونة العالية للمواقع المتزامنة معها. 

5- حماية أفضل لموقعك

تساعدك CDN في تعزيز أمان موقعك بشكل كبير. حيث يقوم كافة مقدمي الخدمة  بتوفير خيارات التأمين عبر تنصيب جدار الحماية Firewall، وهو ما يعزز تأمين الموقع من الهجمات المختلفة مثل هجمات DDos attacks والتي أصبحت تستهدف مواقع الووردبريس بشكل كبير خلال الفترة الحالية. 
هذا بالإضافة إلى قيام مقدمي خدمات CDN بتوفير خيارات اخفاء الاي بي الاصلي عبر تقنيات البروكسي PROXY . 


أسئلة وأجوبة

ما مدى أهمية الإعتماد على شبكة CDN؟

دعنا نجيب على هذا السؤال الذي يتكرر من أصحاب المواقع الناشئة والصغيرة، ولكن لعل كل الأسباب التي ذكرنها بالأعلى في المقالة تخبرك بمدى ضرورة شبكات CDN خصوصا للمواقع الكبيرة والضخمة، تلك التي تتميز باحتوائها على كميات ضخمة من البيانات والملفات، كذلك تستقبل زوار من مختلف البلدان حول العالم. 

نحن نرى بأن أفضل حالة للإشتراك في خدمات CDN هي أن يكون موقعك يستقبل زوارا من أكثر من دولة، في هذه الحالة يكون استخدام CDN أمرا ضروريا وبالفعل سيكون له الأثر الكبير في زيادة سرعة تحميل الموقع أمام الزوار. 

لكن، دعنا نفترض أنك تمتلك موقع يقدم الخدمات إلى العملاء أو المستخدمين داخل المدينة التي تعيش بها فقط، وفي الغالب لا تستقبل ولا تتطلع إلى استقبال أعداد كبيرة من الزيارات من دول أخرى على سبيل المثال، في هذه الحالة لن يكون استخدام شبكات CDN أمرا ملحا وضروريا بالنسبة لك، لأن زوار موقعك متواجدون في منطقة جغرافية واحدة فقط ولن يؤثر ربط الموقع بخدمات CDN على سرعة تحميل موقعك.

دعنا نفترض حالة أخرى، وهي ان موقعك يستهدف زوارا من مصر ودول الخليج العربي، في هذه الحالة كذلك ربما لن تضطر إلى استخدام CDN إذا كنت تعتمد على خادم قريب بالفعل من الدول المستهدفة.

إذا ضع في اعتبارك الدول أو المناطق الجغرافية التي تتوقع وفود الزوار منها إلى موقعك، وإذا كان هناك تنوعًا في البلدان التي يأتي منها الزوار فأنت في حاجة إلى CDN أما إذا كان زوارك يتواجدون في منطقة جغرافية واحدة فقط ولا يأتي زوار من دول مختلفة بالعالم، فلا داعي للاشتراك بها وتكتفي بالعمل على تسريع الموقع بالإجراءات المعروفة التي تحدثنا عنها سابقًا

ما أشهر مزودي خدمات CDN؟

بسبب كونها واحدة من أهم الخدمات التقنية التي يحتاج لها معظم أصحاب المواقع حول العالم، لذلك تتنافس الكثير من الشركات والمؤسسات لتقديم تلك الخدمة للعملاء في مختلف بلدان العالم، ومن أشهر مقدمة خدمات CDN : 

  • Cloudflare : واحد من أشهر مزودي خدمات CDN حول العالم، وتوفر خطط مجانية لديهم وكذلك خططًا مدفوعة، تختلف باختلاف المميزات التي تقدمها في كل خطة
  •  KeyCDN : من أشهر مزودي خدمات CDN كذلك، وتوفر الكثير من التقنيات الحديثة التي تحدثنا عنها خلال المقالة مثل : HTTP/2, Brotli وغيرها، ولكن ليس لديهم خطط مجانية، ونظام المحاسبة يتم وفقا لكمية البيانات التي يتم استهلاكها، حيث تبدأ الاسعار عندهم من 0.4 دولار لكل جيجا بايت من البيانات. 
  • Fastly : هي خدمة CDN كذلك ولديهم سيرفرات في العديد من البلدان حول العالم ولديها خوادم كذلك في شمال أفريقيا، وبدأ الأسعار عندهم من 0.12 دولار لكل جيجابايت واحدة من البيانات المستهلكة. 
  • أمازون Cloudfront: تقدم أمازون خدمات CDN، وكذلك خدمات طبقات الأمان الإضافية وأيضًا خدمات الحماية من هجمات DDoS وغيرها. ويمكنك البدء بخطة مجانية لمدة 12 شهرا كاملة دون دفع أي رسوم، لكن سيكون لك حد أقصى إستهلاك البيانات وهو 50 جيجا بايت فقط، ويمكنك الترقية في أي وقت للحصول على سعة أكبر، وخدمات إضافية. 

هل تختلف خدمات CDN من وقت لآخر؟ 

بالتأكيد مثلها باقي التقنيات المعاصرة، يوما تلو اليوم يتم تطويرها وتحديثها لتواكب متطلبات العصر، وبالفعل بدأ الإستخدام الأول في شكلة البسيط في التسعينات 1990 تقريبا، وتطورت بعد ذلك على مر السنين إلى أن وصلت لمرحلة حيث توفر المزيد والمزيد من الخيارات التي لم تكن قادرة على توفيرها في الماضي، ويمكن توضيح مدى تطور خدمات CDN عبر تقسيمها إلى 3 أجيال متتالية: 

  • الجيل الأول 1st Gen : اقتصر هذا الجيل على التعامل مع ملفات HTML والعناصر القابلة للتحميل فقط، كان خيارات الأمان شبه منعدمة، ولكنها كانت تركز على توفير أفضل درجات الأداء السريع للموقع، هذا بالإضافة إلى أنها كانت باهظة الثمن نظرا لتكلفتها الضخمة آنذاك.
  • الجيل الثاني 2nd Gen : تطور هذا الجيل ليشمل الملفات الثابتة Static وكذلك المتغيرة Dynamic وملفات الميديا المتعددة وغيرها، واستطاع توفير خيارات كفاءة الأداء إلى جانب خيارات التواجد عبر تقليل فرص تعطل الموقع إلى ادنى حد ممكن، كان الخدمة غالية الثمن كذلك إلى حد ما. 
  • الجيل الثالث 3rd Gen : تطور الجيل الثالث ليوفر المزيد من الخيارات التي لم تكن متوفرة في الأجيال السابقة، كما أن الخدمة أصبحت متاحة لكل اصحاب المواقع أيا كان حجمها، حتى أنه أصبح من السهل الحصول على الخدمة مجانا من بعض المزودين لها. وشمل الجيل الثالث التعامل مع كافة أنواع الملفات وكذلك التعامل مع استعلامات قواعد البيانات أيضا. وتوفرت خيارات الأمان Security التي لم تكن متوفرة في الأجيال السابقة. كما أن الاسعار شهدت انخفاضا كبيرا وأصبحت متاحة لشرائح أكبر من أصحاب المواقع حول العالم. 

الخلاصة

بعدما تعرفت على فائدة شبكات CDN وماذا يمكن أن تقدمه لموقعك لزيادة سرعة تحميلة وكفاءته أمام الزوار، يجب عليك اتخاذ قرار CDN بشكل سريع إذا كنت من أصحاب المواقع من نوع Dynamic وتمتلك قاعدة من الزوار من مختلف البلدان حول العالم، ففي هذه الحالة سيكون الاشتراك في تلك الخدمة أمرًا ضروريًا بالنسبة لك، وذلك لمساعدتها في سرعة تحميل موقعك مما يزيد من تعزيز تجربة المستخدمين للحصول على تجربة تصفح أفضل.

عبد الفتاح الطيب
مطور ويب ومتخصص في تطوير المواقع والمتاجر الإلكترونية باستخدام الووردبريس، وخبير في أرشفة المواقع لدى محركات البحث وتقنيات SEO