1

Web アプリケーションのプッシュ通知システムについて調べるためにインターネットで数時間を費やした後、私はいくつかの結論とそれについての好奇心を持っています..

この通知テクノロジを探していると、「websocket」という用語が何度も出てきます。特にこの HTML 5 時代では。

しかし、このデモを見た後: http://www.websocket.org/echo.html

私が気付いたことの1つは、websocketがブラウザーから別のブラウザーに通知をプッシュすることです。ここにはデータベースは含まれていません。

私の場合、(Web ブラウザーではなく) Linux Daemon によって定期的に挿入されるデータベースがあり、それをクライアントの Web ブラウザーにプッシュしたい場合はどうなりますか? Websocketでそれを行う方法は? またはこれは websocket テクノロジの制限ですか? もしそうなら、私の場合の解決策はありますか?

ありがとう。

4

1 に答える 1

2

Websocket リクエストの処理に使用しているサーバーによって異なります。データベースの更新をチェックしてクライアントにプッシュするには、サーバーを開発する必要があります。

What if, in my case, I have a database regularly inserted by Linux Daemon (not a web browser) but I want it to be pushed to client's web browser? how to do that with websocket?

これは websocket では行いません。JavaScript Websockets は、クライアント側の実装です。サーバー上でこれを処理する必要があります (おそらく、挿入デーモンがサーバー アプリケーションにシグナルを送信するようにするか、サーバー コードがデータベースの更新を定期的にチェックするようにします)。

アイデアを得るために mod_pywebsocket をいじってみるとよいでしょう。Web ソケットが必要な理由も参照してください。Websocket が実際に何であるかを理解するのに役立ちます。

Websocket は、サーバーへのオープンな接続です。誰かに電話して「ちょっと待って」と言ってもらうようなものです。接続は開いていますが、話したいことがある場合は、電話をダイヤルして応答を待つ必要はなく、受話器を持ち上げて話し始めます。Websocket も同様です。サーバーでデータの準備ができたら、それをクライアントに送信します (またはその逆)。これにより、サーバーに対して多数の AJAX 呼び出しを行う必要がなくなります。

したがって、websocket は何でもできます。制限は接続ではなく、クライアントとサーバーをどれだけ適切にプログラムするかです。

于 2012-08-12T19:10:13.100 に答える