1. ホーム

[解決済み】socketとwebsocketの違い?

2022-04-02 05:22:52

質問

私は、ソケット接続を使用して他のアプリケーションと通信する必要があるWebアプリケーションを構築しています。これは私にとって新しい領域なので、以下のことを確認したい。 ソケット とは異なります。 ウェブソケット . 概念的に似ているだけのような気もしますが。

最初はプロジェクトの基盤として Django を使うことを計画していたので質問しますが、上にリンクした SO の投稿では、望ましい Django セットアップ (Apache と mod_wsgi) ではウェブソケットが不可能 (あるいは django-websockets のようなものでも少なくとも信頼できない) ということが非常に明確にされています。 しかし、私は他の投稿で、以下のような単純なものに対して、さりげなく Python のソケットモジュールをインポートしているのを発見しました。 サーバーのホスト名を取得する .

だから

  • 本当に違うのでしょうか?
  • 外部のサーバとのソケット接続の確立に依存するプロジェクトに Django を使わない理由はありますか?

どのように解決するのですか?

ご質問にお答えします。

  1. 一般的に)似たようなことを実現しているのに。 はい を、彼らは 本当に違うんです。WebSocketは通常、ブラウザからアプリケーションサーバーに接続する際に、以下のようなプロトコルで実行されます。 HTTP で実行される TCP/IP . そのため、主にサーバーとの恒久的な接続を必要とするWebアプリケーション向けです。一方、プレーンソケットは、より強力で汎用的なソケットです。ソケットは TCP/IP に限定されるものではありませんが、ブラウザや HTTP プロトコルを使用します。あらゆる種類の通信を実装するために使用することができる。
  2. いいえ、理由はありません。