WebSocket پروتکلی برای ارتباط دوطرفه و پایدار میان کلاینت و سرور است. پس از برقراری اتصال، هر دو طرف میتوانند بدون ارسال درخواست HTTP مستقل برای هر پیام، داده ارسال کنند.
در پروژه چه کاربردی دارد؟
چت زنده و نمایش بلادرنگ تغییر وضعیت سفارش از کاربردهای رایجاند.
نمونه کد
const socket = new WebSocket("wss://example.com/live");
socket.addEventListener("message", e => console.log(e.data));
اتصالهای طولانیمدت منابع سرور را مصرف میکنند. احراز هویت، قطع اتصال، Reconnect و ظرفیت شبکه باید مدیریت شوند.
درک تفاوت این موضوع با فرانتاند و بکاند به انتخاب راهکار مناسبتر کمک میکند.
وبسوکت در برابر SSE
WebSocket ارتباط دوطرفه و ماندگار بین کلاینت و سرور فراهم میکند. SSE بیشتر برای ارسال رویداد از سرور به مرورگر مناسب است. در استقرار پشت Load Balancer، Timeout و محدودیت تعداد اتصالها باید بررسی شود.