انتقل إلى محتوى الدرس

Persistent HTTP Connections الاتصالات المؤقتة والمستمرة في HTTP

تعرّف في هذا الدرس على بروتوكول نقل النص التشعبي (HTTP) ونشأته، وكيف يتخاطب المتصفح مع الخادم عبر الطلبات والاستجابات والوسطاء، وخصائصه الأساسية وإصداراته المتعاقبة وأهميته في تطوير الويب والأمن السيبراني.
3 صفوف تعليمية
تكنولوجيا الويب
4,339 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تخيّل أنك تريد سؤال صديقك عن ثلاثة أشياء في الهاتف: هل تتصل به وتسأل السؤال الأول ثم تغلق الخط، وتعيد الاتصال للسؤال الثاني وتغلق الخط، ثم تتصل ثالثة؟ أم تفتح المكالمة مرة واحدة وتسأل الأسئلة الثلاثة ثم تغلق الخط عند الانتهاء؟ في HTTP، فتح قناة الاتصال (TCP‏) يستهلك وقتاً؛ ولذلك مرّت إدارة الاتصال بين المتصفح والسيرفر بطريقتين:

  • 1. الاتصالات المؤقتة (Short-Lived Connections — قديماً): يفتح المتصفح قناة اتصال TCP جديدة لطلب ملف واحد فقط (مثل صفحة HTML‏)، وبمجرد استلام الرد يغلق القناة فوراً! ثم يضطر لفتح قناة ثانية لملف التنسيق CSS، وقناة ثالثة للصورة؛ مما يبطئ تحميل الموقع.
  • 2. الاتصالات المستمرة (Persistent Connections — الافتراضي اليوم): يفتح المتصفح قناة اتصال TCP مرة واحدة فقط، ويستخدم نفس القناة المفتوحة لإرسال طلب الصفحة وطلب التنسيق وطلب الصورة واحداً تلو الآخر بسرعة فائقة، ثم يغلق القناة بعد انتهاء التحميل أو بعد فترة خمول قصيرة.

قارن في المثال العملي والمخطط البصري الآتيين بين عدد المرات التي يُفتح فيها اتصال الشبكة لجلب صفحة واحدة بمواردها الثلاثة في الطريقتين:

  • [Open TCP #1 -> GET /page.html -> Close] + [Open TCP #2 -> GET /app.css -> Close] + [Open TCP #3 -> GET /logo.png -> Close]
  • [Open TCP #1 -> GET /page.html -> GET /app.css -> GET /logo.png -> Close after idle timeout]
الصف 2 صورة توضيحية
رسم توضيحي يقارن بين الاتصالات المؤقتة التي تفتح وتغلق ثلاثة اتصالات TCP منفصلة لملف الصفحة وملف التنسيق والصورة وبين الاتصالات المستمرة التي تفتح قناة الاتصال مرة واحدة وتعيد استخدامها ثم تغلقها بعد النقل أو الخمول
الصف 3 ملاحظة هامة