WebSockets می تواند برای اعلان های dApp بالاتر باشد Web3 زیرا آنها امکان اعلان های بلادرنگ را برای رویدادهای مهم به طور مداوم با توجه به درخواست های درخواستی فردی فراهم می کنند.
با HTTP، هر اتصال زمانی شروع می شود که مشتری درخواستی را ارسال می کند و زمانی که درخواست برآورده شد، اتصال را قطع می کند.
WebSocket یک پروتکل ارتباطی دو طرفه است که امکان جلسات ارتباطی تعاملی بین مشتری و سرور را فراهم می کند . این مبتنی بر TCP است و اغلب برای برنامهها و سرویسهایی که به قابلیتهای اعلان بلادرنگ نیاز دارند، استفاده میشود.
سرور WebSocket برنامهای است که به دنبال یک پروتکل خاص به پورت TCP گوش میدهد. WebSocket یک پروتکل ارتباطی دو طرفه بین یک مشتری و یک سرور است که به هر دو امکان درخواست و ارسال داده به یکدیگر را می دهد.
در مقابل، HTTP یک پروتکل ارتباطی یک طرفه است که در آن مشتری فقط میتواند درخواستها را به سرور ارسال کند و سرور فقط میتواند دادهها را در پاسخ ارسال کند، هرگز سرور در یک رابطه HTTP نمیتواند از مشتری درخواست کند.
اتصال WebSocket یک اتصال مداوم بین مشتری و سرور است، در حالی که اتصالات HTTP فقط یک بار است. اتصال با هر درخواستی که مشتری از سرور می کند شروع می شود و با پاسخ سرور به پایان می رسد. اتصالات WebSocket را می توان تا زمانی که کلاینت و سرورها بخواهند باز باشند نگه داشته شوند، به این معنی که داده ها می توانند تا زمانی که طرفین بخواهند از طریق آن WebSocket جریان داشته باشند، همه از طریق یک درخواست اولیه.
WebSocket از پروتکل WS استفاده می کند که بر اساس پروتکل کنترل انتقال (TCP) است. . این یک شبکه اتصال گرا است، به این معنی که ابتدا باید یک ارتباط بین شرکت کنندگان برقرار شود تا داده ها به مکان صحیح هدایت شوند.
در عوض، پروتکل اینترنت تعیین میکند که دادهها بر اساس اطلاعات درون آن بسته داده، کجا ارسال شوند. هیچ پیکربندی قبلی برای مسیریابی بسته مورد نیاز نیست.
دو راه برای سرور برای ارسال داده به مشتری وجود دارد. کلاینت می تواند به طور منظم داده هایی را از سرور درخواست کند که به آن می گویند رای گیری ، یا سرور می تواند به طور خودکار داده ها را به مشتری ارسال کند که به عنوان شناخته می شود فشار سرور .
API های WebSocket با باز ماندن پس از درخواست اولیه برای استفاده از تکنیک فشار سرور، ارتباط بین کلاینت و سرور را تقویت می کنند و استرس زیرساخت ایجاد شده توسط مشتریان را که دائماً از سرور برای به روز رسانی های جدید نظرسنجی می کنند، حذف می کنند.
WebSockets یک روش ارتباطی دو طرفه است که امکان پاسخ های متعدد از یک درخواست سرور را فراهم می کند. وبسوکتها نیز عمدتاً برای ارتباط کلاینت-سرور استفاده میشوند در حالی که وب هوکها عمدتاً برای ارتباط سرور-سرور استفاده میشوند.
برخلاف WebSockets، وب هوک ها ، که از HTTP استفاده می کنند، کاملاً یک طرفه هستند: سرور فقط زمانی به برنامه ها پاسخ می دهد که درخواستی ارسال شود و هر بار که برآورده شود، اتصال قطع می شود.
معاوضه بین استفاده از WebSockets یا webhook ها از این واقعیت ناشی می شود که طراحی زیرساخت می تواند بهتر از بسیاری از درخواست های اتصال وب هوک از سوی مشتریان، بسیاری از اتصالات باز همزمان WebSocket را مدیریت کند.
اگر برنامه سرور شما به عنوان یک عملکرد ابری اجرا می شود (AWS Lambda، Google Cloud Functions، و غیره)، از webhooks استفاده کنید زیرا برنامه اتصالات WebSocket را باز نگه نمی دارد.
در صورتی که تعداد اعلانهای ارسالی کم باشد، وبقلابها نیز بیشتر میشوند، زیرا اتصالات تنها به شرطی آغاز میشوند که رویدادی رخ دهد.
اگر رویداد نادر است، بهتر است از webhook ها استفاده کنید تا اینکه بسیاری از اتصالات WebSocket بین کلاینت و سرور باز نگه داشته شوند.
در نهایت، اینکه آیا می خواهید یک سرور را با سرور دیگری وصل کنید یا یک کلاینت و یک سرور نیز مهم است. وب هوک برای اولی بهتر است، وب سوکت برای دومی.
برای بسیاری از برنامههای کاربردی Web3، بهروزرسانی کاربران از وضعیت تراکنشهایشان در زمان واقعی الزامی است. اگر نه، ممکن است تجربه کاربری ضعیفی داشته باشند و برنامه یا سرویس شما را ترک کنند.
هر زمان که تأخیر باید کمترین مقدار ممکن باشد، باید از WebSocket ها در درخواست های HTTP استفاده شود. با انجام این کار متوجه می شویم که کاربران به محض وقوع اعلان هایی درباره رویدادها دریافت می کنند. HTTP نسبتاً کندتر است زیرا مشتری در دفعات دریافت بهروزرسانیها با تعداد دفعات ارسال درخواستها محدود است.
BlogInnovazione.it
دوشنبه گذشته، فایننشال تایمز از قراردادی با OpenAI خبر داد. FT مجوز روزنامه نگاری در سطح جهانی خود را صادر می کند…
میلیونها نفر برای خدمات استریم پرداخت میکنند و هزینه اشتراک ماهانه میپردازند. این عقیده رایج است که شما…
Coveware توسط Veeam به ارائه خدمات پاسخگویی به حوادث اخاذی سایبری ادامه خواهد داد. Coveware قابلیتهای پزشکی قانونی و اصلاحی را ارائه میدهد…
تعمیر و نگهداری پیش بینی شده با رویکردی نوآورانه و پیشگیرانه برای مدیریت کارخانه، بخش نفت و گاز را متحول می کند.…