問題タブ [websocket]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
8890 参照

html - HTML 5 Websockets は Comet に取って代わりますか?

HTML 5 の Websocket は、サーバー プッシュの新しい標準になるようです。

これは、Comet と呼ばれるサーバー プッシュ ハックが廃止されるということですか?

Websocket が間もなく (1 ~ 2 年) すべての主要なブラウザーで利用可能になるときに、comet の実装方法を学ぶ必要がある理由はありますか?

それまでは、代わりにBeaconpushまたはPusherを使用できますか?

0 投票する
2 に答える
1033 参照

http - Webソケットは、comet longポーリングのような多くのリソースを使用しますか?

Cometのロングポーリングは、接続ごとに1つのスレッドを占有するため、Webサーバーには適していません。したがって、持続的接続を持つ多くのユーザーを持つことはできません。そうしないと、Webサーバーがクラッシュします。

これはHTML5のWebソケットでも同じですか?

持続的接続ごとに1つのスレッドを占有する場合、これでリソースの問題をどのように解決できますか?

0 投票する
1 に答える
1275 参照

javascript - node.JS および Socket.IO を使用したパスおよびその他の問題

Windows がホストする TurnkeyLinux の VirtualBox で node.JS を使用しています。ここの指示に従っていました。node.JS は /root/node にあります。簡単な例をうまく実行できますが、特定のことを理解するのに苦労しています。これは、通常、Linux の専門家ではないためです。私はsocket.ioを使いたかった。

  1. gitを使用してnode.JS自体をインストールし、ExpressとSocket.IOでもそれを試しました。(例: git clone git://github.com/LearnBoost/Socket.IO.git)。うまくいくようですが、どこにもそのようなものが見つかりません!lib-folder の変更を期待して、git を呼び出すときに /root/node にありました...

  2. node.JS は CommonJS モジュール システムを使用しています。Socket.IO の例io = require('../')では、私にはかなり奇妙に見える Socket.IO をインポートするために使用されています。Web 上の他の例では、「./Socket.IO-node」を参照しています。モジュールは特定のルールに従う単なる JS ファイルであるため、/root/node/lib で http.js を見つけたので、そのようなファイルへのパスのような sth を期待します。ところで、server.js の例を見てみましょう: http には var を使用し、残りの変数 (url、fs、io、sys) には使用しない特定の理由がありますか?

  3. クライアント側では、「使用方法」Socket.IO の最初の行は次のとおりio.setPath(...)です。setPath は、ページの他の場所には記載されていません。何に対して、どこを指す必要がありますか?

  4. シェルを使用したノードの停止/再起動に関する情報は見つかりませんでした。おそらく、どこにも言及されていないほど明白です;)

助けてくれてありがとう。

0 投票する
6 に答える
9088 参照

node.js - Node.js ウェブソケット Socket.IO

クライアント側のイベントを発生させることができません。コード/説明を参照してください:

さて、これでうまくいきました(と思います)

クライアント側のコード:

サーバー側コード:

Chrome でページを更新すると、シェルにログが書き込まれていることがわかります。

ここに私が見るものがあります:

現在の唯一の問題は、これらの JavaScript ソケット アラートのいずれかを起動することです。

また、このエラーは Chrome に表示されます。

「悪いヘッダー」を修正する方法についてのアイデアはありますか?

ありがとう、ダン

0 投票する
2 に答える
853 参照

javascript - Node.js Web ソケット サーバー: データ管理のアイデアは安定/スケーラブルですか?

クライアント データ転送用の Web ソケット プラグインを使用して、バックエンドで node.js を実行する html5 ブラウザー マルチプレイヤー RPG を開発しています。私が直面している問題は、ユーザー データへのアクセスと更新です。接続しているユーザーが少ない場合でも、このプロセスが 1 秒間に何度も行われることが想像できます。

いくつかの検索を行ったところ、MySQL 機能を有効にする node.js 用のプラグインが 2 つしか見つかりませんでしたが、どちらも開発の初期段階にあり、ユーザーが行う小さなアクションごとにデータベースにクエリを実行するのは効率的ではないと考えました。

私の考えは、ユーザーが接続し、そのユーザーに関連するすべての情報を取得するときに、PHP を使用して node.js がデータベースにアクセスできるようにすることです。収集された情報は、node.js の JavaScript オブジェクトに保存されます。これは、プレイしているすべてのユーザーに発生します。その後、更新がオブジェクトに適用されます。ユーザーがログオフすると、オブジェクトに保存されたデータはデータベースに更新され、オブジェクトから削除されます。

いくつか注意すべき点は、さまざまな種類のデータをさまざまなオブジェクトに分けて、より頻繁にアクセスされるデータがルックアップを遅くするデータと混ざらないようにすることです。理論的には、このプロジェクトが多くのユーザーを獲得した場合、明らかな理由から、一度に 1 台のサーバーにログオンできるユーザー数に上限を設けます。

これが良い考えかどうか知りたいです。大きなオブジェクトを使用すると、node.js サーバーの速度が大幅に低下しますか? 私の状況に対する別の可能な解決策について何かアイデアがあれば、歓迎します。

ありがとう

0 投票する
4 に答える
23090 参照

php - HTML5Websocketはローカルホストでのみ機能します

以下のWebサイトのHTML5Websocketチュートリアルに従いました。

http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/

それはうまくいきました、そして私はクライアント側のページでホスト値を「localhost:8080」から「218.175.192.160:8080」(私のIP)に変更しました、サーバー側はまだ「localhost:8080」を維持しました。

「 http://218.175.192.160:8080/client.html 」などのhttpプロトコルを使用してブラウザ(apache)でページを表示できますが、クライアント側のソケットは「ws」に接続できません。 ://218.175.192.160:8080/daemon.php "。(編集されたタイプミス)

私の質問は次のとおりです。1。クライアント側で、websocketが「ws://218.175.192.160:8080 / daemon.php」ではなく「ws:// localhost:8080/daemon.php」でのみ機能するのはなぜですか。

2. socket_bind($ socket、 "127.0.0.1"、8080)は機能するのに、socket_bind($ socket、 "218.175.192.160"、8080)でエラーが発生するのはなぜですか?システムは「アドレス[0]をバインドできません:要求されたアドレスはそのコンテキストでは無効です」と通知します。IPアドレスは私のサーバーに属していると確信しています。

助けてください、ありがとう。

エラーの理由を見つけました:ルーターにNATサービスを設定したにもかかわらず、ルーターを使用したために間違ったアドレスをバインドしましたが、「218.175.192.160」のアドレスがルーターのインターフェイスに属していることを忘れました。私のサーバーマシン。

サーバーマシンのアドレスは、ローカルアドレスタイプである必要があります。たとえば、「192.168.1.2」は、実際にはLANカードインターフェイス上にあります。

基本的なネットワーク設定を忘れてすみません:(、この投稿が私のようなネットワーク初心者に役立つことを願っています、thx〜:)

0 投票する
3 に答える
14376 参照

node.js - 最小の Websock Nodejs テールの例

websocket を使用してブラウザへのデータ ストリームを作成しようとしています。データはログ ファイルの出力です。(tail -f filename) node js を使用して stdout にログインできましたが、サーバーを作成してクライアント (js/html) コードを作成し、websocket を作成してすべての出力を受け取ることができませんでした。この子プロセス。誰でも私を助けることができますか?

NODE.JS SERVER OUTPUTTING TAIL TO STDOUT ( http://snippets.dzone.com/posts/show/12067に見られるように)

私の目標は、可能な限り単純なストリームを作成することです。これについては、他の単純なソリューションが好評です。ありがとう。

0 投票する
5 に答える
4555 参照

java - HTML5 の GWT サポート

GWT は HTML5 をサポートしていますか? 特に Canvas と WebSockets を意味しますか?

よろしく

0 投票する
2 に答える
1533 参照

javascript - Google Chrome 拡張機能で Socket.IO 接続を開く

ユーザーがGoogle Chrome拡張機能から新しいページにアクセスするたびに、外部Socket.IOサーバーへの接続を開く方法を見つけようとしています。初めての拡張なので、ちょっと大変です。

iframe と history.onVisit イベントを使用してみましたが、今のところうまくいきません。

0 投票する
1 に答える
266 参照

php - pusherappライブラリ

WebSocketアプリを簡単にセットアップできるpusherappサービスを使用しています。

http://pusherapp.com/

ただし、これを行うには、サービスと対話するためのサーバー側コードが必要です。

http://pusherapp.com/docs/libraries

あるlang/libを別のものよりも選択する理由があるのだろうかと思います。現在PHPを使用していますが、node.jsまたはGAEに簡単に切り替えることができます。

ありがとう。