Get Mystery Box with random crypto!

WebSocket هو اتصال دائم بين العميل والخادم. توفر WebSockets ق | دروس و كورسات الشبكة

WebSocket
هو اتصال دائم بين العميل والخادم. توفر WebSockets قناة اتصالات ثنائية الاتجاه ثنائية الاتجاه تعمل عبر HTTP من خلال اتصال مقبس TCP / IP واحد. في جوهره ، يسهل بروتوكول WebSocket تمرير الرسائل بين العميل والخادم. توفر هذه المقالة مقدمة إلى بروتوكول WebSocket ، بما في ذلك المشكلة التي تحلها WebSockets ، ونظرة عامة على كيفية وصف WebSockets على مستوى البروتوكول

Why WebSocket

نشأت فكرة WebSockets من قيود التكنولوجيا القائمة على HTTP. باستخدام HTTP ، يطلب العميل موردًا ، ويستجيب الخادم بالبيانات المطلوبة. HTTP هو بروتوكول أحادي الاتجاه بشكل صارم - أي بيانات مرسلة من الخادم إلى العميل يجب أن يطلبها العميل أولاً. لقد عمل الاستقصاء الطويل تقليديًا كحل بديل لهذا القيد. باستخدام الاقتراع الطويل ، يقوم العميل بإجراء طلب HTTP مع فترة مهلة طويلة ، ويستخدم الخادم هذه المهلة الطويلة لدفع البيانات إلى العميل. يعمل الاقتراع الطويل ، ولكنه يأتي مع عيب - الموارد الموجودة على الخادم مقيدة طوال فترة الاستطلاع الطويل ، حتى في حالة عدم توفر بيانات للإرسال. من ناحية أخرى ، تسمح WebSockets بإرسال البيانات المستندة إلى الرسائل ، على غرار UDP ، ولكن مع موثوقية TCP. يستخدم WebSocket HTTP كآلية نقل أولية ، ولكنه يبقي اتصال TCP نشطًا بعد تلقي استجابة HTTP بحيث يمكن استخدامه لإرسال الرسائل بين العميل والخادم. تسمح لنا WebSockets بإنشاء تطبيقات "في الوقت الفعلي" دون استخدام الاقتراع الطويل.
Protocol Overview

يبدأ WebSockets الحياة كطلب واستجابة HTTP قياسي. ضمن سلسلة استجابة الطلب هذه ، يطلب العميل فتح اتصال WebSocket ، ويستجيب الخادم (إذا كان قادرًا على ذلك). إذا نجحت عملية الاتصال الأولي هذه ، فقد وافق العميل والخادم على استخدام اتصال TCP / IP الحالي الذي تم إنشاؤه لطلب HTTP كاتصال WebSocket. يمكن أن تتدفق البيانات الآن عبر هذا الاتصال باستخدام بروتوكول أساسي للرسائل ذات الإطارات. بمجرد أن يقر كلا الطرفين بضرورة إغلاق اتصال WebSocket ، يتم قطع اتصال TCP.

لا تستخدم WebSockets نظام http: // أو https: // (لأنها لا تتبع بروتوكول HTTP). بدلاً من ذلك ، تستخدم WebSocket URIs مخططًا جديدًا: (أو wss: لمقبس ويب آمن). ما تبقى من URI هو نفسه HTTP URI: مضيف ومنفذ ومسار وأي معلمات استعلام.