タグ付けされた質問 「websocket」

WebSocketは、TCPソケットの上に構築されたAPIであり、HTTPのオーバーヘッドなしでクライアントとサーバー間で双方向の全二重通信を行うためのプロトコルです。

4
WebSocketと純粋なTCPの基本的な違いは何ですか?
私はWebSocketについて読みましたが、ブラウザーが単純なTCP接続を開いて、他のデスクトップアプリケーションと同じようにサーバーと通信できないのはなぜでしょうか。そして、なぜこの通信はウェブソケットを介して可能ですか?
167 tcp  websocket 

9
SSLを使用したnode.js、socket.io
SSL証明書を使用してsocket.ioを実行しようとしていますが、接続できません。 私はチャットの例に基づいてコードを作成しました: var https = require('https'); var fs = require('fs'); /** * Bootstrap app. */ var sys = require('sys') require.paths.unshift(__dirname + '/../../lib/'); /** * Module dependencies. */ var express = require('express') , stylus = require('stylus') , nib = require('nib') , sio = require('socket.io'); /** * App. */ var privateKey = …

5
HTML WebSocketはクライアントごとに開いた接続を維持しますか?これはスケールしますか?
HTML WebSocketのスケーラビリティについて何か情報があれば教えてください。私が読んだすべてのことについて、すべてのクライアントはサーバーとのオープンな通信ラインを維持するようです。私はそれがどのようにスケーリングし、サーバーが処理できる開いているWebSocket接続の数を疑問に思っています。これらの接続を開いたままにしておくことは、実際には問題ではないかもしれませんが、問題はないようです。
159 html  websocket 

3
Androidアプリで使用するWebSocketライブラリはどれですか?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 2年前休業。 この質問を改善する WebSocket接続を保持しているバックグラウンドで(おそらく数時間または数日にわたって)実行し、データを定期的にサーバーに送信するサービスをAndroidアプリに追加したいと思います。 今、Java用のWebSocketライブラリがたくさんあるようですが、どれを使うべきかわかりません: GitHubのTooTallNate / Java-WebSocketの 説明:100%Javaで書かれたベアボーンのWebSocketクライアントとサーバーの実装。http://java-websocket.org/- これは、「android websocket」をグーグルで検索した最初の結果にリンクされています。ただし、特にSSL接続に関しては、かなりの数の未解決の問題があり、現時点では積極的に維持されていないようです。 GitHubの koush / AndroidAsyncの説明:非同期ソケット、http(クライアント+サーバー)、websocket、およびAndroid用のsocket.ioライブラリ。スレッドではなく、nioに基づいています。-再び多くの未解決の問題がありますが、活動が維持されている/作業中のようです。 WebサイトからのプロジェクトTyrusの説明:JSR 356:WebSocket用Java API-リファレンス実装-これはOracleによって作成されました。Androidで動作するかどうかはわかりません。 Webサイトからの Jetty WebSocketクライアントAPI情報:Jettyは、WebSocketサーバーとの会話を簡単にするためのJetty WebSocketクライアントライブラリも提供しています。-もう一度:Androidで動作するかどうかはわかりません。 codebutler /アンドロイド-WebSocketを GitHubのからの説明:Android用ベア最小WebSocketを(hybi13 / RFC)クライアント-この1はで使用されている schwiz /アンドロイド-のWebSocket-例にStackOverflowの質問」の受け入れ答えである、にする方法Androidデバイスは、ウェイクロックなしでインターネットへのTCP接続を保持しますか?」 GitHubの Atmosphere / wasync Description:Node.js、Android、Javaのフォールバックトランスポートクライアントライブラリを備えたWebSockets http://async-io.org TakahikoKawasaki / nv-websocket-client GitHubの説明:Javaでの高品質WebSocketクライアントの実装。 square / okhttp GitHubからの説明:AndroidおよびJavaアプリケーション用のHTTP + SPDYクライアント。http://square.github.io/okhttp/ -それは持っているのWebSocketモジュールを。以下のよう scorpiodawgで言及した、OkHttpが組み込まれているのWebSocketのサポートバージョン3.5以降。 GitHubの …

2
ブラウザからWebSocket ping / pongフレームを送信する
接続を維持するために、websocket内のping / pongメッセージについて読み続けていますが、それらが何かはわかりません。別のフレームタイプですか?(ピンポンに関連するChromeのJavaScript WebSocketオブジェクトのメソッドはありません)。それとも単なる設計パターンですか(たとえば、文字どおり "ping"またはその他の文字列をサーバーに送信して応答させます)。ピンポンは継続フレームに関連していますか? 私が尋ねる理由は、Mongrel2の背後で実行されるpythonフレームワークを使用しているため、Pythonアプリが必要とせずに接続を維持するように指示する特定のping / pongメッセージをMongrel2に送信する方法があるかどうかです。それについて心配してください。別のHTTPメソッドを持っているのに似ていると思います。また、専用のping / pongメッセージフレームは、文字列 "ping"よりも簡単である(サーバーとネットワークの負荷が少ない)と考えられますが、あまり重要ではありません。 編集:私はRFC 6455を見たところ、PingとPongは間違いなく独自のオペコードを持つコントロールフレームタイプであるように見えます。では、ChromeのJavaScriptからPingフレームを送信するにはどうすればよいですか?

5
WebSocketを正しく閉じる(HTML5、JavaScript)
私はHTML5 WebSocketをいじっています。私はどうやって接続を優雅に閉じるのですか?たとえば、ユーザーがページを更新したり、ブラウザを閉じたりするとどうなりますか? ユーザーが呼び出しをせずにページを更新しただけでは奇妙な動作が発生しますwebsocket.close()-更新後に戻ったときにwebsocket.oncloseイベントにヒットします。

4
最大同時Socket.IO接続
この質問は以前に尋ねられましたが、最近ではなく、明確な答えはありません。 Socket.ioを使用して、別のサーバーを追加する必要がある前に維持できる同時接続の最大数はありますか? 誰かが大規模にWebSocket(特に、Socket.io)を使用しているアクティブな本番環境を知っていますか?最大接続に最適なセットアップの種類を本当に知りたいですか? WebsocketはTCPの上に構築されているので、私の理解では、接続間でポートが共有されない限り、64Kのポート制限によってバインドされます。しかし、Grettyを使用した512K接続のレポートも見ました。だから私は知りません。

2
1,000,000のWebSocketを開いたままにしておくために保持されるシステムリソースはいくつですか?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 7年前休業。 この質問を改善する WebSocketは良いですが、1,000,000の同時接続を処理できるでしょうか? 1,000,000のWebSocketを開いたままにしておくために保持されるシステムリソースはいくつですか?
122 websocket 

4
HTTPポーリング、ロングポーリング、HTTPストリーミング、およびWebSocketについての私の理解
質問タイトルのキーワードについて、SOとWebに関する多くの投稿を読み、それらから多くのことを学びました。私が読んだ質問のいくつかは特定の実装の課題に関連しており、他の質問は一般的な概念に焦点を当てています。すべての概念とテクノロジーXがテクノロジーYよりも発明された理由などを確実に理解したいだけです。だからここに行く: HTTPポーリング:基本的にAJAX、XmlHttpRequestを使用。 HTTPロングポーリング: AJAXですが、サーバーに更新がない限り、サーバーは応答を保持します。サーバーが更新を取得するとすぐに、サーバーはそれを送信し、クライアントは別の要求を送信できます。不利な点は、前後に送信する必要がある追加のヘッダーデータが原因で追加のオーバーヘッドが発生することです。 Httpストリーミング:ロングポーリングに似ていますが、サーバーは「Transfer Encoding:chunked」のヘッダーで応答するため、サーバーがデータを送信するたびに新しいリクエストを開始する必要はありません(したがって、追加のヘッダーオーバーヘッドを節約できます)。ここでの欠点は、サーバーから送信された複数のチャンクを区別するために、データの構造を「理解」して理解する必要があることです。 Javaアプレット、Flash、Silverlight: tcp / ipを介してソケットサーバーに接続する機能を提供しますが、プラグインであるため、開発者はそれらに依存したくありません。 WebSockets:これらは、上記のメソッドの短所を次のように解決しようとする新しいAPIです。 Javaアプレット、Flash、Silverlightなどのプラグインに対するWebSocketの唯一の利点は、WebSocketがブラウザにネイティブに組み込まれており、プラグインに依存しないことです。 HTTPストリーミングに対するWebSocketの唯一の利点は、受信したデータを「理解」して解析するための努力をする必要がないことです。 ロングポーリングに対するWebSocketsの唯一の利点は、余分なヘッダーサイズを排除し、リクエスト用のソケット接続を開閉することです。 私が見逃している他の重要な違いはありますか?既にSOに関する質問の多くを1つの質問に再質問または組み合わせている場合は申し訳ありませんが、これらの概念に関してSOおよびWebにあるすべての情報から完全に理解したいと思います。 ありがとう!

3
SSLを使用したWebSocket
HTTPSでWebSocketを使用することは可能ですか? HTTPSに切り替えると、WebSocketがセキュリティエラーを返し、通常のHTTPで完全に動作します。 以下はスニペットです。 socket = new WebSocket("ws://my_www:1235");
115 ssl  websocket 

5
node.jsで文字列のsha1ハッシュを取得するにはどうすればよいですか?
node.jsで記述されたWebSocketサーバーを作成しようとしています サーバーを機能させるには、文字列のSHA1ハッシュを取得する必要があります。 私がしなければならないことは、ドキュメントのセクション5.2.2の35ページで説明されています。 注:例として、"Sec-WebSocket-Key" クライアントのハンドシェイクのヘッダーの値がの"dGhlIHNhbXBsZSBub25jZQ=="場合、サーバーは"258EAFA5-E914-47DA-95CA-C5AB0DC85B11"文字列を追加して文字列を形成します"dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11"。サーバーはこの文字列のSHA-1ハッシュを取得し、値0xb3 0x7a 0x4f 0x2c 0xc0 0x62 0x4f 0x16 0x90 0xf6 0x46 0x06 0xcf 0x38 0x59 0x45 0xb2 0xbe 0xc4 0xeaを提供します。次に、この値はbase64でエンコードさ"s3pPLMBiTxaQ9kYGzzhZRbK+xOo="れて、"Sec-WebSocket-Accept"ヘッダーで返される値になります。

3
Webソケットの負荷分散
Webソケットの負荷分散方法について質問があります。 Webソケットをサポートするサーバーがあります。ブラウザは私のサイトに接続し、それぞれがへのWebソケットを開きますwww.mydomain.com。このようにして、私のソーシャルネットワークアプリはクライアントにメッセージをプッシュできます。 従来は、HTTPリクエストのみを使用して、2つのWebサーバーの前に2台目のサーバーとロードバランサーを追加することでスケールアップしていました。 Webソケットの場合、接続はロードバランサーではなく、Webサーバーに直接接続する必要があります。これは、マシンに64kの開いているポートという物理的な制限があり、クライアントがロードバランサーに接続している場合、サポートできないためです。 64k以上の同時ユーザー。 どうやって私は- ページが読み込まれたときに、クライアントを(ロードバランサではなく)Webサーバーに直接接続しますか?ページが最初に要求されるたびに、ノードからJavaScriptをロードするだけで、ロードバランサー(または何でも)がスクリプトのURLをランダムに変更しますか? リップルスタートを処理しますか?ブラウザは、Webサーバーがシャットダウンすると接続が閉じられたことを認識します。JavaScriptコードを記述して接続を再度開こうとすることができますが、ノードはしばらくの間なくなります。したがって、使用する次のノードのアドレスを照会するには、ロードバランサーに戻る必要があると思いますか? ロードバランサーが最初のリクエストでリダイレクトを送信するので、ブラウザーが最初にリクエストwww.mydomain.comしてにリダイレクトされるのではないかと思いましたwww34.mydomain.com。ノードがダウンするまで、それはかなりうまくいきます-そして、Facebookのようなサイトはそれをしません。どうやってやっているの?

6
javax.websocketクライアントの簡単な例
誰かが私にWebSocketクライアントの非常に簡単な使用例を教えてもらえますjavax.websocketか? websocket(ws://socket.example.com:1234)に接続し、メッセージを送信(チャネルを追加)し、メッセージを聞きたいのですが。すべてのメッセージ(送信およびリッスン)はJSON形式です。 そして、このライブラリは単純なWebSocket通信に最適ですか?
104 java  websocket 

3
Faye対Socket.IO(およびJuggernaut)
Socket.IOは、最も人気がありアクティブなWebSocketエミュレーションライブラリのようです。Juggernautはそれを使用して完全なpub / subシステムを作成します。 Fayeも人気がありアクティブであり、独自のJavaScriptライブラリを備えているため、Juggernautに匹敵する完全な機能を備えています。Juggernautはサーバーにノードを使用し、Fayeはノードまたはラックを使用できます。Juggernautは永続化にRedisを使用し(訂正: pub / subにRedisを使用)、Fayeは状態をメモリにのみ保持します。 上記はすべて正確ですか? フェイはバイユーを実装していると言います-私はジャガーノートがこれをしないと思います-それはジャガーノートが低レベルだからです(IE、私はジャガーノートを使ってバイユーを実装できます) Fayeは、必要に応じて、Socket.IOブラウザのJavaScriptライブラリを使用するように切り替えることができますか?または、JavaScriptライブラリは根本的に異なることをしますか? プロジェクト間に他のアーキテクチャ/デザイン/哲学の違いはありますか?

9
REST APIを置き換えるWebsocket API?
主な機能がWebSocketまたはロングポーリングを介してリアルタイムで動作するアプリケーションがあります。 ただし、サイトのほとんどはRESTfulな方法で記述されており、将来のアプリケーションや他のクライアントにとっては便利です。ただし、RESTから離れて、すべてのサイト機能のWebSocket APIへの移行を考えています。これにより、リアルタイム機能をサイトのすべての部分に統合しやすくなります。これにより、アプリケーションやモバイルクライアントの構築が難しくなりますか? 一部の人々はすでにこのようなことをしていることがわかりました:SocketStream

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.