ثريد عن أنواع الcommunication protocols بين الclient و الserver
Ajax Polling, HTTP Polling, WebSockets and Server-Sent Events
في كل HTTP request:
١- الclient بيفتح connection و يrequest data من السيرفر
٢- السيرفر بيprocess الrequest
٣- السيرفر بيبعت الresponse للكلاينت
Ajax Polling, HTTP Polling, WebSockets and Server-Sent Events
في كل HTTP request:
١- الclient بيفتح connection و يrequest data من السيرفر
٢- السيرفر بيprocess الrequest
٣- السيرفر بيبعت الresponse للكلاينت
فيه كذا طريقة نحقق بيها الخطوات دي و كل طريقة و ليها الuse case بتاعها
1- Ajax Polling
الpolling ده من أكتر الحاجات الcommon و الفكرة بتاعته straightforward
١- الكلاينت بيفتح connection و ي request data من خلال الbrowser
1- Ajax Polling
الpolling ده من أكتر الحاجات الcommon و الفكرة بتاعته straightforward
١- الكلاينت بيفتح connection و ي request data من خلال الbrowser
عيب الprotocol ده ان ممكن الكلاينت يبعت ريكوست و السيفرفر معندوش حاجة ف يرد ب empty response ف بالتالي بنستهلك من الserver resources عالفاضي
من ضمن الapplications هي الchat apps
من ضمن الapplications هي الchat apps
2- HTTP Long-Polling
زي الajax polling بفرق ان الclient بيبعت الريكوست بس مبيستناش الresponse على طول .. لو السيفرفر معندوش data يرد بيها، بدل ما يرد ب empty response .. ممكن يخلي connection مفتوح لحد ما يجيله داتا أو يعدي الtimeout
زي الajax polling بفرق ان الclient بيبعت الريكوست بس مبيستناش الresponse على طول .. لو السيفرفر معندوش data يرد بيها، بدل ما يرد ب empty response .. ممكن يخلي connection مفتوح لحد ما يجيله داتا أو يعدي الtimeout
3- WebSockets
ده بيبقى persistent connection بين الكلاينت و السيرفر .. يعني في أي وقت ممكن الكلاينت يبعت للسيرفر أو العكس .. ف البداية الكلاينت بيestablish handshake و لو السيرفر وافق، الاتنين ممكن يبعتوا data لبعض منغير overhead
ده بيبقى persistent connection بين الكلاينت و السيرفر .. يعني في أي وقت ممكن الكلاينت يبعت للسيرفر أو العكس .. ف البداية الكلاينت بيestablish handshake و لو السيرفر وافق، الاتنين ممكن يبعتوا data لبعض منغير overhead
دي بيبقى مشهور قوي للreal-time data زي لما بنراقب كابتن الأوبر و هو جاي أو في الonline games .. لما بنحتاج حاجة bi-directional
4- Server-Sent Events (SSEs)
ف البداية الكلاينت بيفتح connection برضه و بعدين السيرفر بيستعمل الconnection ده لو حابب يبعت داتا جديدة للكلاينت .. ده بيبقى حلو زي الnews feed في الفيسبوك أو تويتر
ف البداية الكلاينت بيفتح connection برضه و بعدين السيرفر بيستعمل الconnection ده لو حابب يبعت داتا جديدة للكلاينت .. ده بيبقى حلو زي الnews feed في الفيسبوك أو تويتر
Hope you found this useful ^^
My blog:
techcapsuleinarabic.wordpress.com
Resources: medium.com
educative.io
My blog:
techcapsuleinarabic.wordpress.com
Resources: medium.com
educative.io
medium.com/system-design-…
Long Polling vs WebSockets vs Server-Sent Events
Web applications were originally designed as a simple client-server model where the web client initi...
techcapsuleinarabic.wordpress.com/2021/11/30/%d8…
educative.io/courses/grokki…
Grokking the System Design Interview - Learn Interactively
This course by Design Gurus has helped 150k+ subscribers to crack their system design interview (SDI...
جاري تحميل الاقتراحات...