مقدمة
يعد WWW أحد التطبيقات الأكثر شيوعًا على الإنترنت، وقد تسبب نموه السريع في ازدحام الشبكة وزيادة التحميل على الخادم، مما أدى إلى زيادة تأخير وصول العملاء ومشاكل في جودة خدمة WWW. تعتبر تقنية التخزين المؤقت إحدى الطرق الفعالة لتقليل تحميل الخادم وتقليل ازدحام الشبكة وتعزيز قابلية التوسع في WWW. وتتمثل فكرتها الأساسية في استخدام مبدأ المنطقة الزمنية لوصول العميل لتخزين المحتوى الذي وصل إليه العميل في الشبكة ذاكرة التخزين المؤقت: تخزين نسخة عند الوصول إلى المحتوى في المرة القادمة، لا يلزم أن يكون متصلاً بموقع الاستضافة، ولكن يتم توفيره من خلال النسخة المحفوظة في ذاكرة التخزين المؤقت.
يمكن تخزين محتوى الويب مؤقتًا على العميل والخادم الوكيل والخادم. تظهر الأبحاث أن تقنية التخزين المؤقت يمكن أن تحسن بشكل كبير أداء WWW [1] [2]، ويمكن أن تحقق الفوائد التالية:
(1) تقليل حركة مرور الشبكة، وبالتالي تخفيف ازدحام الشبكة؛
(2) تقليل تأخير وصول العميل، الأسباب الرئيسية هي: ① بالنسبة للمحتوى المخزن مؤقتًا في الخادم الوكيل، يمكن للعملاء الحصول عليه مباشرة من الوكيل بدلاً من الخادم البعيد، وبالتالي تقليل تأخير الإرسال ② المحتوى الذي لم يتم تخزينه مؤقتًا بسبب لتقليل ازدحام الشبكة وتحميل الخادم بحيث يمكن للعملاء الحصول عليها بشكل أسرع؛
(3) نظرًا لأنه يمكن الحصول على جزء من محتوى طلب العميل من الوكيل، فسيتم تقليل الحمل على الخادم البعيد؛
(4) إذا لم يتمكن الخادم البعيد من الاستجابة لطلب العميل بسبب فشل الخادم البعيد أو فشل الشبكة، فيمكن للعميل الحصول على نسخة مخزنة مؤقتًا من المحتوى من الوكيل، مما يعزز قوة خدمة WWW.
تجلب أنظمة التخزين المؤقت على الويب أيضًا المشكلات التالية:
(1) قد يكون المحتوى الذي حصل عليه العميل من خلال الوكيل قديمًا؛
(2) في حالة حدوث إبطال لذاكرة التخزين المؤقت، يزداد زمن وصول العميل بسبب الحمل الإضافي لمعالجة الوكيل. لذلك، عند تصميم نظام ذاكرة التخزين المؤقت على الويب، ينبغي للمرء أن يسعى جاهداً لزيادة معدل ضربات ذاكرة التخزين المؤقت وتقليل تكلفة الفشل؛
(3) قد يصبح الوكيل عنق الزجاجة. لذلك، يجب تعيين حد أعلى لعدد عملاء الخدمة وحد أدنى لكفاءة الخدمة للوكيل، بحيث تكون كفاءة نظام الوكيل على الأقل بنفس كفاءة العملاء المتصلين مباشرة بالخادم البعيد.
في الوقت الحاضر، تم إجراء بحث مكثف ومتعمق حول أنظمة التخزين المؤقت على الويب وقضايا تحسينها، وتركز هذه الأعمال البحثية بشكل أساسي على دور الوكلاء.
2 الخصائص المثالية لنظام التخزين المؤقت على الويب يجب أن يتمتع نظام التخزين المؤقت على الويب المثالي بالخصائص التالية:
(1) السرعة: يجب أن يكون نظام التخزين المؤقت قادرًا على تقليل تأخير وصول العملاء بشكل فعال؛
(2) المتانة: المتانة تعني التوفر، ويريد العملاء أن تكون خدمات الويب متاحة في أي وقت؛
(3) الشفافية: يجب أن يكون نظام التخزين المؤقت شفافًا للعملاء، والنتائج التي حصل عليها العملاء هي فقط الاستجابة السريعة والتوافر الجيد؛
(4) قابلية التوسع: يجب أن يكون نظام التخزين المؤقت على الويب قادرًا على التوسع بشكل جيد مع استمرار نمو حجم الشبكة وكثافتها؛
(5) الكفاءة: كلما كان الحمل الذي يجلبه نظام التخزين المؤقت للويب إلى الشبكة أصغر، كلما كان ذلك أفضل؛
(6) القدرة على التكيف: يمكن لنظام التخزين المؤقت أن يتكيف مع التغيرات الديناميكية في طلبات العملاء وبيئة الشبكة، والتي تتضمن إدارة ذاكرة التخزين المؤقت، وتوجيه ذاكرة التخزين المؤقت، وتكوين الوكيل، وما إلى ذلك، وهو أمر بالغ الأهمية للحصول على أداء مثالي لذاكرة التخزين المؤقت؛
(7) الاستقرار: الحل الذي يعتمده نظام التخزين المؤقت للويب يجب ألا يؤدي إلى عدم استقرار الشبكة؛
(8) موازنة التحميل: يجب أن يكون حل التخزين المؤقت المثالي قادرًا على توزيع الحمل بالتساوي على الشبكة بأكملها لتجنب أن يصبح وكيل أو خادم معين عنق الزجاجة أو نقطة ساخنة، مما يتسبب في تدهور أداء جزء من النظام أو حتى النظام بأكمله؛
(9) قدرات المعالجة غير المتجانسة: مع استمرار زيادة حجم الشبكة ومنطقة التغطية، ستمتد الشبكة عبر سلسلة من بنيات الأجهزة والبرامج المختلفة. يجب أن تكون أنظمة التخزين المؤقت على الويب قادرة على التكيف مع بنيات الشبكات المختلفة؛
(10) البساطة: الحلول البسيطة سهلة التنفيذ ومقبولة بشكل عام. يجب أن يكون الحل المثالي للتخزين المؤقت على الويب بسيطًا وسهل التكوين.
بالتركيز على الخصائص المذكورة أعلاه، يجب أن يحل نظام التخزين المؤقت على الويب المشكلات التالية:
(1) بنية ذاكرة التخزين المؤقت: كيفية تنظيم وتكوين وكلاء التخزين المؤقت في الشبكة؛
(2) تعاون الوكيل: كيفية التعاون بين الوكلاء الذين يتعاونون مع بعضهم البعض يمكن أن يزيدوا من معدل الضرب ويحسنوا أداء نظام ذاكرة التخزين المؤقت.
(3) توجيه ذاكرة التخزين المؤقت: عند فشل أحد وكلاء ذاكرة التخزين المؤقت، كيفية إعادة توجيه الطلب إلى وكلاء ذاكرة التخزين المؤقت الآخرين؛
(4) خوارزمية استبدال ذاكرة التخزين المؤقت: عندما لا تكون مساحة ذاكرة التخزين المؤقت كافية، كيفية استبدال محتوى ذاكرة التخزين المؤقت؛
(5) اتساق ذاكرة التخزين المؤقت: أي توقيت المحتوى المخبأ وكيفية منع المحتوى المخبأ من أن يصبح قديمًا؛
(6) الجلب المسبق للمحتوى: كيف يقرر الوكيل الجلب المسبق للمحتوى من الخادم أو الوكلاء الآخرين لتقليل تأخير وصول العميل؛
(7) موازنة التحميل: كيفية حل ظاهرة "النقطة الساخنة" في الشبكة؛
(8) محتوى ذاكرة التخزين المؤقت: ما نوع المحتوى الذي يمكن تخزينه مؤقتًا.
عند تصميم نظام التخزين المؤقت على شبكة الإنترنت، يجب معالجة القضايا المذكورة أعلاه.
3 نظرة عامة على حلول التخزين المؤقت على الويب
3.1 بنية ذاكرة التخزين المؤقت للويب يعتمد أداء نظام ذاكرة التخزين المؤقت للويب على حجم قاعدة عملائه كلما زادت قاعدة العملاء، زاد احتمال طلب المحتوى المخزن مؤقتًا مرة أخرى. قد تؤدي مجموعات ذاكرة التخزين المؤقت التي تتعاون مع بعضها البعض إلى زيادة معدل الدخول وتحسين أداء نظام ذاكرة التخزين المؤقت، لذلك يجب أن تضمن بنية نظام ذاكرة التخزين المؤقت إمكانية تعاون الوكلاء بشكل فعال. تتضمن بنيات ذاكرة التخزين المؤقت النموذجية ما يلي: الهرمي والموزع والهجين.
الشكل 1: مخطط معماري لنظام التخزين المؤقت على الويب
3.1.1 بنية ذاكرة التخزين المؤقت الهرمية
اقترح مشروع Harvest [3] لأول مرة بنية هرمية للتخزين المؤقت على الويب. في بنية ذاكرة التخزين المؤقت الهرمية، يتم تكوين ذاكرة التخزين المؤقت على مستويات متعددة في الشبكة، كما هو موضح في الشكل 1 (أ). من أجل التبسيط، من المفترض أن هناك أربعة مستويات: ذاكرة التخزين المؤقت للطبقة السفلية، وذاكرة التخزين المؤقت للطبقة المحلية، وذاكرة التخزين المؤقت للطبقة الإقليمية، وذاكرة التخزين المؤقت للطبقة الواسعة. الطبقة السفلية هي ذاكرة التخزين المؤقت للعميل/المتصفح. عندما لا تتمكن ذاكرة التخزين المؤقت للعميل من تلبية طلب العميل، تتم إعادة توجيه الطلب إلى ذاكرة التخزين المؤقت لطبقة المنطقة المحلية طبقة المنطقة مخبأة. إذا لم يكن من الممكن تلبية الطلب في ذاكرات التخزين المؤقت على جميع المستويات، فسيتم إعادة توجيه الطلب في النهاية إلى الخادم. يتم بعد ذلك إرسال استجابة الخادم للطلب من أعلى إلى أسفل إلى العميل، مع ترك نسخة في كل ذاكرة تخزين مؤقت من الطبقة المتوسطة على طول الطريق. تتم إعادة توجيه الطلبات الأخرى لنفس المحتوى من الأسفل إلى الأعلى حتى يتم تلبيتها في مستوى معين من ذاكرة التخزين المؤقت.
تتميز بنية التخزين المؤقت الهرمية بكفاءة عالية في عرض النطاق الترددي، ويمكن توزيع محتوى الويب ذو معدلات النقر العالية على الشبكة بسرعة وكفاءة. ومع ذلك، فإن لهذه البنية أيضًا بعض العيوب[4]:
(1) إنشاء بنية هرمية لذاكرة التخزين المؤقت. يجب تكوين خوادم ذاكرة التخزين المؤقت عند نقاط الوصول الرئيسية في الشبكة، ويجب أن تتعاون خوادم ذاكرة التخزين المؤقت مع بعضها البعض؛
(2) سيؤدي كل مستوى من مستويات ذاكرة التخزين المؤقت إلى تأخير إضافي؛
(3) قد تصبح ذاكرة التخزين المؤقت عالية المستوى بمثابة عنق الزجاجة وتؤدي إلى تأخير طويل في قائمة الانتظار؛
(4) يتم تخزين نسخ متعددة من نفس المحتوى في مخابئ مختلفة، واستخدام مساحة ذاكرة التخزين المؤقت للنظام بأكمله ليس مرتفعًا.
3.1.2 بنية ذاكرة التخزين المؤقت الموزعة في ضوء أوجه القصور المذكورة أعلاه في بنية ذاكرة التخزين المؤقت الهرمية، اقترح بعض الباحثين بنية ذاكرة تخزين مؤقت موزعة، في هذه البنية، لا يوجد سوى ذاكرة تخزين مؤقت منخفضة المستوى، كما هو موضح في الشكل 1 (ب). في بنية ذاكرة التخزين المؤقت للويب الموزعة في الأدبيات [5]، لا توجد طبقة ذاكرة تخزين مؤقت وسيطة خارج الطبقة المحلية، وتتعاون ذاكرات التخزين المؤقت مع بعضها البعض للتعامل مع حالات الفشل. من أجل تحديد ذاكرة التخزين المؤقت لطبقة المنطقة المحلية لإعادة توجيه طلب العميل للحصول على المحتوى غير الصالح، تحتفظ كل ذاكرة تخزين مؤقت للطبقة المحلية بنسخة من معلومات الدليل الخاصة بالمحتوى المخزن مؤقتًا في ذاكرة التخزين المؤقت لطبقة المنطقة المحلية الأخرى، بحيث يمكن تنفيذ طلب العميل يتم إعادة توجيهها بدقة عند حدوث إبطال إلى ذاكرة التخزين المؤقت للطبقة المحلية المقابلة. بروتوكول توجيه صفيف ذاكرة التخزين المؤقت CARP [6] (بروتوكول توجيه صفيف ذاكرة التخزين المؤقت) هو نظام تخزين مؤقت موزع يقسم مساحة عنوان URL إلى أجزاء مختلفة ويعين كل جزء لمجموعة ذاكرة تخزين مؤقت مقترنة بشكل غير محكم. يمكن لكل ذاكرة تخزين مؤقت تخزين محتوى الويب الذي يحتوي على عنوان URL معين فقط إليها، مما يجعل من الممكن تحديد ذاكرة التخزين المؤقت التي سيتم إعادة توجيه الطلب إليها بناءً على عنوان URL الذي طلب العميل المحتوى منه.
في بنية ذاكرة التخزين المؤقت الموزعة، تحدث معظم حركة مرور الشبكة في الجزء السفلي من الشبكة، مما يقلل من احتمالية التسبب في ازدحام الشبكة، ويكون استخدام مساحة ذاكرة التخزين المؤقت مرتفعًا، ويمكن تحقيق مشاركة التحميل بشكل أفضل، ويكون التسامح مع الخطأ أفضل. ومع ذلك، قد يواجه تكوين نظام ذاكرة التخزين المؤقت الموزعة على نطاق واسع عدة مشاكل: عدد كبير من الاتصالات، ومتطلبات عرض النطاق الترددي العالية، وصعوبة الإدارة [4].
3.1.3 بنية ذاكرة التخزين المؤقت الهجينة تظهر البنية الهجينة في الشكل 1 (ج). تعتمد ذاكرة التخزين المؤقت على نفس المستوى بنية ذاكرة التخزين المؤقت الموزعة وتتعاون مع بعضها البعض. يدعم بروتوكول ذاكرة التخزين المؤقت للإنترنت ICP (بروتوكول ذاكرة التخزين المؤقت للإنترنت) الذي صممته شركة Harvest Group الحصول على المحتوى المقابل من ذاكرة التخزين المؤقت الأصلية أو ذاكرة التخزين المؤقت المجاورة باستخدام أصغر RTT.
3.1.4 يُظهر بحث التحسين حول بنية ذاكرة التخزين المؤقت أنه [4] بالمقارنة مع بنية ذاكرة التخزين المؤقت الموزعة، فإن بنية ذاكرة التخزين المؤقت الهرمية لها وقت اتصال أقصر، لذلك يمكن تقليل وقت استجابة الوصول إلى ذاكرة التخزين المؤقت الموزعة للمستندات الأصغر حجمًا وقت الإرسال واستخدام عرض النطاق الترددي العالي. الحل المثالي هو الجمع بين الاثنين لإفساح المجال كاملاً لنقاط القوة الخاصة بكل منهما مع تقليل وقت الاتصال ووقت الإرسال.
3.2 توجيه ذاكرة التخزين المؤقت مع الأخذ في الاعتبار قابلية التوسع لنظام التخزين المؤقت على الويب، تقوم معظم أنظمة التخزين المؤقت بتوزيع عدد كبير من ذاكرة التخزين المؤقت على الإنترنت. المشكلة الأكبر التي يطرحها هذا هي كيفية تحديد موقع ذاكرة التخزين المؤقت التي تخزن المحتوى المطلوب بسرعة. هذا هو سؤال توجيه ذاكرة التخزين المؤقت . تشبه هذه المشكلة إلى حد ما توجيه الشبكة، لكن لا يمكن حلها بنفس الطريقة. يمكن أن يعتمد توجيه الشبكة التقليدية على تجميع العناوين (تمثيل العنوان الهرمي يجعل تجميع العناوين ممكنًا)، ولكن في WWW، قد لا يتم إرسال المستندات التي لها نفس بادئة URL أو بادئة عنوان الخادم إلى نفس العميل، مما يجعل من الصعب توجيه العناوين يتم تجميعها بحيث يصبح جدول توجيه ذاكرة التخزين المؤقت كبيرًا بشكل لا يمكن التحكم فيه. بالإضافة إلى ذلك، يتم تحديث محتوى ذاكرة التخزين المؤقت باستمرار، وستؤدي معلومات توجيه ذاكرة التخزين المؤقت القديمة إلى إبطال ذاكرة التخزين المؤقت. من أجل تقليل تكلفة فشل ذاكرة التخزين المؤقت، يجب أن تقوم خوارزمية توجيه ذاكرة التخزين المؤقت المثالية بتوجيه طلب العميل إلى الوكيل التالي، الذي لديه احتمالية أكبر للوصول ويقع على مسار الشبكة من العميل إلى الخادم أو بالقرب منه.
3.2.1 طريقة جدول توجيه التخزين المؤقت
قام Malpani et al. [7] بدمج مجموعة من ذاكرة التخزين المؤقت. عند إعادة توجيه طلب العميل إلى ذاكرة التخزين المؤقت المحددة، إذا كانت ذاكرة التخزين المؤقت تحتوي على المحتوى المطلوب، فسيتم إرساله إلى العميل من خلال البث المتعدد لـ IP، تستجيب ذاكرات التخزين المؤقت الأخرى في نفس المجموعة لطلب العميل من ذاكرة التخزين المؤقت التي تخزن المحتوى المقابل. إذا لم يتم تخزين المحتوى المطلوب مؤقتًا في أي ذاكرة تخزين مؤقت، فسيتم إعادة توجيه الطلب إلى الخادم الأصلي. ينظم نظام التخزين المؤقت Harvest[3] ذاكرة التخزين المؤقت في هيكل هرمي ويستخدم بروتوكول تحليل ذاكرة التخزين المؤقت ICP (بروتوكول ذاكرة التخزين المؤقت على الإنترنت). عند حدوث فشل في ذاكرة التخزين المؤقت، تستعلم ذاكرة التخزين المؤقت ذات المستوى الأدنى أولاً عن ذاكرة التخزين المؤقت للعقدة الشقيقة قبل إعادة توجيه طلب العميل إلى ذاكرة التخزين المؤقت للمستوى العلوي. ما إذا كان المحتوى المقابل قد تم تخزينه مؤقتًا لتجنب التحميل الزائد على ذاكرة التخزين المؤقت للمستوى الأعلى. يقوم نظام التخزين المؤقت للويب التكيفي [8] بإنشاء شجرة ذاكرة تخزين مؤقت لكل خادم، ويتم تنظيم ذاكرات التخزين المؤقت الموجودة في الشجرة في مجموعات بث متعددة متداخلة، ويحصل الطلب على المحتوى المخزن مؤقتًا المقابل من خلال مجموعات الإرسال هذه. تقوم هذه الطريقة بإنشاء شجرة ذاكرة تخزين مؤقت مختلفة لكل خادم، لذلك لا توجد مشكلة في التحميل الزائد للعقدة الجذرية، كما أن التكوين الذاتي والمتانة جيدان نسبيًا. ومع ذلك، فإن طلبات المحتوى ذات معدلات النقر المنخفضة قد تمر عبر المزيد من ذاكرات التخزين المؤقت، مما يؤدي إلى زيادة حمل اتصالات ذاكرة التخزين المؤقت، ويوصي المؤلف بتحديد عدد ذاكرات التخزين المؤقت التي تمر عبرها الطلبات لحل هذه المشكلة.
3.2.2 طريقة دالة التجزئة
يستخدم بروتوكول توجيه صفيف ذاكرة التخزين المؤقت CARP [6] وظيفة تجزئة تعتمد على قائمة أعضاء الصفيف وعنوان URL لتحديد عنوان ذاكرة التخزين المؤقت الدقيق لكائن ويب أو المكان الذي يجب تخزين كائن الويب فيه مؤقتًا. في ذاكرة التخزين المؤقت للملخص [9]، يحفظ كل وكيل معلومات ملخصة لعنوان URL للمحتوى المخزن مؤقتًا بواسطة وكلاء آخرين في نفس المجموعة. يتحقق الوكيل من هذه المعلومات التلخيصية عند إعادة توجيه طلب العميل لتحديد الوكيل الذي سيتم إعادة توجيه الطلب إليه. لتقليل الحمل، يتم تحديث هذه المعلومات التلخيصية بشكل دوري. تظهر التجارب أن هذا النظام يمكن أن يقلل بشكل كبير من كمية المعلومات بين ذاكرات التخزين المؤقت واستهلاك النطاق الترددي وحمل وحدة المعالجة المركزية الناتج عن البروتوكول، مع الحفاظ تقريبًا على نفس معدل وصول ذاكرة التخزين المؤقت مثل برنامج المقارنات الدولية.
3.3 خوارزمية استبدال ذاكرة التخزين المؤقت
تعد خوارزمية استبدال ذاكرة التخزين المؤقت عاملاً مهمًا يؤثر على أداء نظام ذاكرة التخزين المؤقت للوكيل. يمكن أن تنتج خوارزمية استبدال ذاكرة التخزين المؤقت الجيدة معدل إصابة أعلى. يمكن تقسيم الخوارزميات التي تم اقتراحها حتى الآن إلى الفئات الثلاث التالية:
(1) خوارزمية الاستبدال التقليدية وتطورها المباشر هي: ①خوارزمية LRU (الأقل استخدامًا مؤخرًا): استبدال المحتوى الأقل استخدامًا من ذاكرة التخزين المؤقت؛ اقترح ③Pitkow/Recker[10] خوارزمية بديلة: إذا تم تخزين جميع محتويات ذاكرة التخزين المؤقت مؤقتًا في نفس اليوم، فسيتم استبدال أكبر مستند من ذاكرة التخزين المؤقت، وإلا فسيتم استبداله وفقًا لخوارزمية LRU.
(2) تعتمد خوارزمية الاستبدال على الخصائص الرئيسية لمحتوى ذاكرة التخزين المؤقت، وتتضمن الخوارزميات التمثيلية لها ما يلي: خوارزمية الاستبدال ①Size[10]: استبدال أكبر محتوى من ذاكرة التخزين المؤقت؛ ②LRU-MIN[11] الاستبدال: تسعى هذه الخوارزمية جاهدة إلى جعل استبدال الوثيقة الفردية بأقل عدد. افترض أن حجم المستند المراد تخزينه مؤقتًا هو S، ويتم استبدال المستندات المخزنة مؤقتًا في ذاكرة التخزين المؤقت بحجم S على الأقل وفقًا لخوارزمية LRU، إذا لم يكن هناك كائن بحجم S على الأقل، فسيتم استبدال LRU يتم استخدام الخوارزمية من المستندات التي يبلغ حجمها S/2 على الأقل. استبدال؛ ③LRU — خوارزمية استبدال العتبة[11]: نفس خوارزمية LRU، باستثناء أنه لا يمكن تخزين المستندات التي يتجاوز حجمها حدًا معينًا في ذاكرة التخزين المؤقت؛ 12] خوارزمية الاستبدال: استبدل المستند بأصغر تأخير وصول من ذاكرة التخزين المؤقت.
(3) تستخدم خوارزمية الاستبدال القائمة على التكلفة دالة تكلفة لتقييم الكائنات الموجودة في ذاكرة التخزين المؤقت، وفي النهاية تحديد كائن الاستبدال بناءً على قيمة التكلفة. الخوارزميات التمثيلية لها هي: ①الخوارزمية الهجينة[12]: تقوم الخوارزمية بتعيين وظيفة مساعدة لكل كائن في ذاكرة التخزين المؤقت، وتستبدل الكائن بأصغر قيمة فائدة من ذاكرة التخزين المؤقت؛ ②خوارزمية أقل قيمة نسبية[13]: تستبدل الكائن بـ أدنى قيمة فائدة من ذاكرة التخزين المؤقت؛ ③ خوارزمية استبدال التكلفة الأقل تطبيعًا (LCNR) [14]: تستخدم هذه الخوارزمية وظيفة استدلال حول تردد الوصول إلى المستند ووقت الإرسال وحجمه لتحديد المستندات البديلة؛ اقترح طريقة تعتمد على تكلفة وقت إرسال المستند وحجمه ووظيفة الاستدلال المرجح لآخر وقت وصول لتحديد استبدال المستند؛ ⑤خوارزمية ضبط الحجم LRU (SLRU) [16]: فرز الكائنات المخزنة مؤقتًا وفقًا لنسبة التكلفة؛ للحجم، وحدد الكائن بأصغر نسبة للاستبدال.
باختصار، من أجل زيادة معدل ضربات ذاكرة التخزين المؤقت إلى الحد الأقصى، تم تنفيذ الكثير من العمل حول خوارزمية استبدال ذاكرة التخزين المؤقت، ومع ذلك، يعتمد أداء خوارزمية الاستبدال إلى حد كبير على خصائص الوصول إلى WWW التعامل مع جميع أوضاع الوصول إلى الويب أفضل من الخوارزميات الأخرى.
3.4 اتساق ذاكرة التخزين المؤقت
يمكن لنظام التخزين المؤقت على الويب تقليل زمن وصول الوصول، ولكن له تأثير جانبي: قد تكون النسخة المخزنة مؤقتًا المقدمة للعملاء محتوى قديمًا، لذلك يجب وضع آلية اتساق ذاكرة التخزين المؤقت لضمان إمكانية تحديث المحتوى المخزن مؤقتًا والتحقق من صحته في الوقت المناسب بطريقة لتزويد العملاء بأحدث المحتوى.
يوجد حاليًا نوعان رئيسيان من تناسق ذاكرة التخزين المؤقت: اتساق ذاكرة التخزين المؤقت القوي وتناسق ذاكرة التخزين المؤقت الضعيف.
3.4.1 اتساق قوي لذاكرة التخزين المؤقت (1) تأكيد العميل: بالنسبة لكل وصول، يعتبر الوكيل أن المحتوى المخزن مؤقتًا قديمًا ويرسل رأس "IF-Modified-Since-date" إلى الخادم مع الطلب. إذا تغير المحتوى بعد الوقت المحدد، يرسل الخادم المحتوى المحدث إلى الوكيل وفي النهاية إلى العميل إذا لم يتم تعديل المحتوى المطلوب، فسيتم إرسال استجابة "304" للإشارة إلى أنه لم يتم تعديل المستند ويستمر المحتوى المخزن مؤقتًا بكفاءة.
(2) تأكيد الخادم: عندما يكتشف الخادم أن المحتوى قد تغير، يرسل الخادم معلومات إبطال إلى جميع العملاء الذين طلبوا المحتوى مؤخرًا وربما قاموا بتخزين المحتوى مؤقتًا [17]. تتطلب هذه الطريقة أن يقوم الخادم بحفظ قائمة مرتبطة بالعملاء الذين يصلون إلى المحتوى لإرسال معلومات غير صالحة. عندما يكون عدد العملاء كبيرًا، ستصبح هذه الطريقة غير قابلة للتطبيق، وفي الوقت نفسه، قد تصبح القائمة المرتبطة نفسها قديمة أيضًا ، مما يتسبب في قيام الخادم بإرسال رسائل إلى العديد من العملاء الذين لم تعد مخزنة مؤقتًا، ويتم إرسال معلومات غير صالحة إلى عملاء هذا المحتوى.
3.4.2 ضعف اتساق ذاكرة التخزين المؤقت (1) آلية TTL التكيفية [18] (مدة البقاء): من خلال مراقبة عمر المستند لضبط وقت بقائه، وبالتالي حل مشكلة اتساق ذاكرة التخزين المؤقت. إذا لم يتم تعديل المستند لفترة طويلة من الزمن، فإنه لن يميل إلى التغيير مرة أخرى. بهذه الطريقة، يتم تعيين نسبة مئوية من "العمر" الحالي للمستند إلى سمة عمر المستند (يساوي الوقت الحالي مطروحًا منه وقت آخر تعديل). يمكن لطريقة TTL التكيفية التحكم في إمكانية أن يصبح المستند قديمًا بنسبة تقل عن 5%. تستخدم معظم الخوادم الوكيلة هذه الآلية، لكن آلية تناسق ذاكرة التخزين المؤقت هذه المستندة إلى عمر المستند لا تضمن صحة المحتوى المخزن مؤقتًا.
(2) آلية إبطال الحمولة
اقترح كريشنامورثي وآخرون استخدام آلية إبطال الأداء لتحسين كفاءة تماسك ذاكرة التخزين المؤقت. لقد اقترحوا ثلاث آليات: ① آلية التحقق من صحة ذاكرة التخزين المؤقت (PCV) [19]: استخدام الطلبات المرسلة بواسطة الوكيل إلى الخادم لتحسين اتساق ذاكرة التخزين المؤقت. على سبيل المثال، عندما يقوم الوكيل بتقديم طلب إلى الخادم، فإنه يحمل سلسلة من المحتوى المخزن مؤقتًا ولكن من المحتمل أن يكون قديمًا من الخادم لتأكيد الصلاحية ② آلية إبطال خدمة Piggyback (PSI) [20] (إبطال خدمة Piggyback): الفكرة الأساسية. هو أنه عندما يستجيب الخادم للوكيل، فإنه يخبر الخادم الوكيل بسلسلة من المحتوى الذي تغير منذ آخر وصول للوكيل ويقوم الوكيل بإبطال هذه المحتويات، وبالتالي تمديد وقت ذاكرة التخزين المؤقت للمحتوى المخزن مؤقتًا الآخر في ذاكرة التخزين المؤقت ③PSI وآلية PCV المختلطة [21]: تحدد هذه الآلية الآلية التي سيتم استخدامها لتحقيق أفضل أداء إجمالي بناءً على حجم الفاصل الزمني الحالي منذ أن تم إبطال الطلب الأخير بواسطة الوكيل. إذا كانت هذه الفترة الزمنية صغيرة، يتم استخدام آلية PSI، وإلا يتم استخدام آلية PCV لتأكيد محتوى ذاكرة التخزين المؤقت. المبدأ الأساسي هو أنه كلما كان الفاصل الزمني أصغر، قل عدد الفراغات المرسلة مع PSI، ولكن مع زيادة الوقت، ستكون الحمل الزائد لإرسال الفراغات أكبر من الحمل الزائد لطلب التأكيد.
3.5 الجلب المسبق للمحتوى
يمكن لتقنية التخزين المؤقت على الويب تحسين أداء الويب، لكن الأبحاث تظهر [22] أنه بغض النظر عن نظام التخزين المؤقت المستخدم، فإن الحد الأقصى لمعدل الوصول إلى ذاكرة التخزين المؤقت لا يزيد عادةً عن 40 إلى 50%. لتحسين معدل ضربات ذاكرة التخزين المؤقت بشكل أكبر، تم تقديم تقنية الجلب المسبق. تعد تقنية الجلب المسبق في الأساس تقنية تخزين مؤقت نشطة، وتتمثل فكرتها الأساسية في استخدام المعرفة المسبقة بمحتوى أو وضع وصول العميل للتنبؤ بمحتوى الطلب التالي للعميل عند معالجة الطلب الحالي للعميل، واستخدام المحتوى المطلوب من قبل العميل لتخزين محتوى التنبؤ مؤقتًا في Gap. ذاكرة التخزين المؤقت لإخفاء زمن الوصول بشكل أفضل وتحسين جودة الخدمة.
ركزت الأبحاث المبكرة على الجلب المسبق للمحتوى بين المتصفحات/العملاء وخوادم الويب. عندما تم تقديم الوكلاء، تحول اهتمام الأشخاص البحثي إلى تقنية الجلب المسبق بين الوكلاء والخوادم. تظهر الأبحاث أن تقنية الجلب المسبق يمكن أن تقلل بشكل فعال من زمن الوصول إلى العملاء، ولكن تقنية الجلب المسبق لا تزال مثيرة للجدل لسببين:
(1) الجلب المسبق للمحتوى هو مهمة ذات متطلبات عالية في الوقت الفعلي، ويستخدم بشكل أساسي الفاصل الزمني لطلبات العملاء، ويكون هذا الفاصل الزمني بشكل عام أقل من دقيقة واحدة [23]. ، سيصبح الجلب المسبق بلا معنى. ولذلك، هناك متطلبات أعلى لكفاءة خوارزمية الجلب المسبق.
(2) يعمل الجلب المسبق للمحتوى على تقليل وقت استجابة العميل على حساب زيادة حمل الخادم وحركة مرور الشبكة، لذلك هناك متطلبات أعلى لدقة الجلب المسبق. وفي الوقت نفسه، يجب أن يأخذ نموذج الجلب المسبق في الاعتبار خصائص وصول العميل وتحميل الخادم وظروف حركة مرور الشبكة عند تحديد عدد المستندات التي تم جلبها مسبقًا، وقد يكون للجلب المسبق بدون هذه العوامل تأثيرات عكسية.
باختصار، يجب أن يتمتع نموذج الجلب المسبق الجيد بكفاءة ودقة عالية وبتكلفة منخفضة. هناك حاجة إلى مزيد من البحث حول كفاءة ودقة الجلب المسبق.
3.5 موازنة التحميل عندما يحصل العديد من العملاء على بيانات أو خدمات من خادم في نفس الوقت، ستحدث ظاهرة النقطة الفعالة، مما يؤدي إلى تدهور أداء الخادم أو حتى فشله. تتمثل معظم الطرق الحالية للتعامل مع هذه المشكلة في استخدام بعض إستراتيجيات النسخ المتماثل لتخزين المحتوى المطلوب على الإنترنت، وبالتالي توزيع الحمل على خوادم متعددة (وكلاء) [24] لتجنب أن يصبح خادم واحد عنق الزجاجة.
3.6 تخزين المحتوى مؤقتًا قد يلعب الوكيل أدوارًا متعددة، بالإضافة إلى التخزين المؤقت للبيانات، يمكنه أيضًا إجراء التخزين المؤقت للاتصال والتخزين المؤقت للحسابات. يشير التخزين المؤقت للاتصال إلى استخدام الاتصالات المستمرة بين العميل والوكيل، والوكيل والخادم لتقليل العبء الناتج عن إنشاء اتصال TCP وعبء البدء البطيء عندما يرسل الخادم، وبالتالي تقليل وقت تأخير وصول العميل [25 ]. يمكن النظر إلى التخزين المؤقت الحسابي على أنه خوادم ويب يمكنها ترحيل بعض خدماتها إلى الوكلاء للتخفيف من اختناقات الخادم. أحد تطبيقاتها هو التخزين المؤقت للبيانات الديناميكية، الذي يقوم بتخزين البيانات الديناميكية مؤقتًا من خلال الوكلاء وترحيل جزء من الحسابات إلى الوكلاء، والتي يتم إنشاؤها بواسطة الوكلاء والحفاظ على البيانات الديناميكية المخزنة مؤقتًا، وبالتالي تحسين أداء العملاء في الحصول على البيانات الديناميكية.
4 المشكلات التي تتطلب مزيدًا من البحث تم إجراء قدر كبير من الأبحاث حول تقنية التخزين المؤقت على الويب وتم تحقيق نتائج مثمرة، ولكن لا تزال هناك بعض المشكلات التي تتطلب مزيدًا من البحث. وتشمل هذه القضايا:
(1) البحث عن أنماط وصول العملاء: من خلال دراسة أنماط وصول العملاء، يمكننا إجراء إدارة ذاكرة التخزين المؤقت والجلب المسبق للمحتوى بشكل أفضل، وتحسين معدل دخول ذاكرة التخزين المؤقت؛
(2) التخزين المؤقت للبيانات الديناميكية: أحد الأسباب المهمة وراء عدم ارتفاع معدل الوصول إلى ذاكرة التخزين المؤقت للويب الحالية هو أنه لا يمكن تخزين جزء كبير من المحتوى مؤقتًا (البيانات الخاصة، والبيانات المعتمدة، والبيانات الديناميكية، وما إلى ذلك). أصبحت كيفية جعل المزيد من البيانات قابلة للتخزين المؤقت وكيفية تقليل تأخير الوصول للعملاء للوصول إلى الصفحات غير المخزنة مؤقتًا مشكلة رئيسية في تحسين أداء الويب؛
(3) خصائص حركة مرور الويب: تكمن كفاءة نظام التخزين المؤقت في التوقيت المحلي لتدفقات الوصول إلى الويب واستراتيجيات إدارة ذاكرة التخزين المؤقت الجيدة إن فهم خصائص التحميل التي يولدها عملاء الويب له أهمية كبيرة لتصميم وتقديم خدمات الويب بشكل أفضل؛
(4) تكوين الوكيل: للحصول على أداء جيد للويب، يعد تكوين الوكيل أمرًا بالغ الأهمية. المعايير المثالية لاستراتيجيات تكوين الوكيل هي: التنظيم الذاتي، والتوجيه الفعال، وموازنة التحميل، والسلوك المستقر، وما إلى ذلك. هناك حاجة إلى مزيد من البحث حول هذه المسألة.
باختصار، تكمن أحدث الأبحاث لتحسين أداء الويب في تطوير حلول التخزين المؤقت التي تكون قابلة للتطوير، وقوية، وقابلة للتكيف، ومستقرة، وفعالة، ويمكن تهيئتها بشكل أفضل في الشبكات الحالية والمستقبلية.
وانغ شيك وو جي جين شياو
(مختبر الدولة الرئيسي للتوازي والتوزيع، كلية علوم الكمبيوتر، الجامعة الوطنية لتكنولوجيا الدفاع، تشانغشا 410073)
-