dApp 通知では WebSocket が高くなる可能性があります Web3 個々の要求リクエストに関して継続的に重要なイベントのリアルタイム通知を可能にするためです。
HTTP では、クライアントがリクエストを行うと各接続が開始され、リクエストが満たされると接続が終了します。
WebSocket は、クライアントとサーバー間の対話型通信セッションを可能にする双方向通信プロトコルです。 。 これは TCP ベースであり、リアルタイム通知機能を必要とするアプリやサービスによく使用されます。
WebSocket サーバーは、特定のプロトコルに従って TCP ポートをリッスンするアプリケーションです。 WebSocket は、クライアントとサーバー間の双方向通信プロトコルであり、双方が相互にデータを要求および送信できるようにします。
対照的に、HTTP は一方向の通信プロトコルであり、クライアントはサーバーにリクエストを送信することしかできず、サーバーは応答としてデータを送信することしかできず、HTTP 関係にあるサーバーがクライアントからリクエストを送信することはできません。
WebSocket 接続は、クライアントとサーバー間の継続的な接続です。、一方、HTTP 接続は XNUMX 回限りです。 接続はクライアントがサーバーに対して行うすべてのリクエストで始まり、サーバーの応答で終了します。 WebSocket 接続は、クライアントとサーバーが開いていることを望む限り保持できます。つまり、最初のリクエストから、当事者が望む限りデータがその WebSocket を流れることができます。
WebSocket は、伝送制御プロトコル (TCP) に基づく WS プロトコルを使用します。 。 これは接続指向のネットワークです。つまり、データを正しい場所にルーティングするには、最初に参加者間で接続を確立する必要があります。
代わりに、インターネット プロトコルは、データ パケット内の情報に基づいてデータの送信先を決定します。 パケットをルーティングするために事前の設定は必要ありません。
サーバーがクライアントにデータを送信するには XNUMX つの方法があります。 クライアントは定期的にサーバーにデータを要求できます。 ポーリング または、サーバーが自動的にデータをクライアントに送信することもできます。 サーバープッシュ .
WebSocket API は、サーバー プッシュ技術を使用するための最初のリクエストの後も開いたままにすることで、クライアントとサーバー間の接続を活用し、クライアントが新しい更新を求めてサーバーを絶えずポーリングすることによって生じるインフラストラクチャのストレスを解消します。
WebSocket は双方向の通信方法であり、単一のサーバー要求から複数の応答を可能にします。 WebSocket は主にクライアントとサーバーの通信に使用されますが、Webhook は主にサーバーとサーバーの通信に使用されます。
WebSocket とは異なり、 Webhook は HTTP を使用しますが、厳密には一方向です。サーバーはリクエストが行われた場合にのみアプリケーションに応答し、リクエストが満たされるたびに接続は切断されます。
WebSocket を使用するか Webhook を使用するかのトレードオフは、インフラストラクチャ設計が、クライアントからの多数の Webhook 接続要求よりも、同時にオープンされる多数の WebSocket 接続をより適切に処理できるという事実から生じます。
サーバー アプリケーションがクラウド関数 (AWS Lambda、Google Cloud Functions など) として実行される場合、アプリケーションは WebSocket 接続を開いたままにしないため、Webhook を使用します。
送信される通知の量が少ない場合は、イベントの発生を条件としてのみ接続が開始されるため、Webhook の数も多くなります。
イベントがまれな場合は、クライアントとサーバー間で多くの WebSocket 接続を開いたままにするよりも、Webhook を使用する方が良いでしょう。
最後に、サーバーと別のサーバー、またはクライアントとサーバーのどちらに接続しようとしているのかも重要です。 前者には Webhook が適しており、後者には WebSocket が適しています。
多くの Web3 dApp では、ユーザーのトランザクションのステータスをリアルタイムで更新することが必須です。 そうしないと、ユーザー エクスペリエンスが低下し、アプリやサービスから離れる可能性があります。
待ち時間を最小限に抑える必要がある場合は常に、HTTP リクエストで WebSocket を使用する必要があります。 そうすることで、ユーザーはイベントが発生するとすぐにその通知を受け取ることができます。 クライアントが更新を取得できる頻度はリクエストを送信する頻度によって制限されるため、HTTP は比較的遅くなります。
BlogInnovazione.it
先週の月曜日、フィナンシャル・タイムズ紙はOpenAIとの契約を発表した。 FT は世界クラスのジャーナリズムにライセンスを供与しています…
何百万人もの人々がストリーミング サービスに月額料金を払っています。あなたは…というのが一般的な意見です。
Coveware by Veeam は、サイバー恐喝インシデント対応サービスを引き続き提供します。 Coveware はフォレンジックと修復機能を提供します…