تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ Ali Mirzaei
وب سوکت‌ها در وب سایت ها
جامعه جاوا اسکریپت ایجاد شده در ۱۱ اردیبهشت ۱۴۰۱

باتوجه به اینکه وب سوکت‌ها سرعت رو در کل بین سرور باکلاینت بالا می‌برند پس چرا در وب سایت‌ها لینک‌ها به صورت وب سوکت به سرور کانکت باشند وما در سایت به سرعت بتونیم وارد لینک‌های اون سایت بشیم؟

سلام امیدوارم حالت خوب باشه .

سرعت ارتباط فقط یکی از ویژگی‌های اون هست و برای اینکه انتخاب کنیم که از چه پروتکلی استفاده کنیم باید عوامل زیادی رو در نظر بگیریم و بعد با توجه به نیاز هامون نوع و پروتکل ارتباط رو مشخص کنیم .

در کل توصیه میشه از http استفاده بشه مگر اینکه برامون احراز بشه که استفاده از websocket بهتره .

چند تا از دلایل رو اشاره میکنم :

۱- اول اینکه استفاده از websocket در جایی که کاربر نیاز به دریافت اطلاعات لحظه ای نداره مناسب نیست چون استفاده از websocket به وجود یک سرور نیاز داره و در این مورد هزینه و منابع اضافی از ما هدر میده .

۲- در http ما قابلیت cache کردن دیتا رو داریم و مثلا دیتایی که برای یک ماه پیش هست و تغییر نکرده رو cache میکنیم و هربار از database دریافت و محاسبه نمیکنیم در صورتی که در اینجا استفاده از websocket معنایی نداره چون مهم‌ترین هدف websocket ارتباط real-time هست .

۳- در http با هر درخواست از نتیجه اون اطمینان حاصل میشه که میتونه خطا باشه یا با موفقیت انجام بشه و برای این موضوع از http code‌ها استفاده میشه و به راحتی نتیجه درخواست مشخص میشه .در حالی که در websocket‌ها فقط در ایجاد ارتباط این موضوع بررسی میشه و بقیه خطا‌ها و نتایج رو باید در لایه message بررسی کنیم که مشکلات زیادی ایجاد میکنه و مدیریت اون هم پیچیدگی و ملاحظات زیادی نیاز داره .

و عوامل زیاد دیگه ای که در نتیجه اون‌ها توصیه میشه از http استفاده کنید مگر اینکه واقعا به مزایای websocket نیاز داشته باشید .

موفق باشید.

بهترین پاسخ
علیرضا ایمانی ۱۱ اردیبهشت ۱۴۰۱، ۱۰:۰۱