0

イベント ストリームと HTML5 SSE のクライアント側を使用して、クライアントのリアルタイム イベントにフィードする作業を行っています。

しかし、私のイベントの一部は、実際には他のクライアントによるフォーム送信から発生します。

これらのフォーム送信を (イベントストリームスクリプトに追加するために) できるだけ早く (発生後に) 検出するための最良の方法は何ですか?

したがって、本質的に、異なるクライアントによってインスタンス化された異なるスクリプトの複数のインスタンス間で、リアルタイムのクロススクリプト メッセージングが必要です。これは、JS の X-doc メッセージングに似ていますが、PHP の場合です。

私が思いつく最善の方法は/tmp、通知ファイルのサブディレクトリを繰り返しポーリングすることですが、これはひどい解決策です。

4

2 に答える 2

0

多くの場合、MYSQL を使用して、話していた tmp ディレクトリの役割を果たすことができます。これを行うために同じサーバー上にある必要がなく、データが分離されているため、移植性が高くなります。ただし、スクリプトは mysql の場所を手動でチェックして、他の場所がこれを処理しているかどうかを確認する必要があります。もう1つのオプションは、ソケットを開いてリアルタイムでやり取りするか、この目的のために事前に構築されたツールを使用することです。

于 2012-06-21T05:41:15.653 に答える
0

イベントをほぼリアルタイムでトリガーしたい場合は、それらを同期的に処理する必要があります。つまり、デーモンを実行します。また、クライアント接続間でデータを同期できるデーモンを実装する最も簡単な方法は、イベント ベースのサーバーを使用することです。PHP を使用した後者の優れた実装がここにあります。インターネット上で PHP プロセスをデーモン化する方法の例がたくさんあります。次に、PHP コードからサーバーへのブロッキング接続を開き、comet 経由でアクセスします。

于 2012-06-21T09:25:25.337 に答える