こんにちは、私は春と休止状態に取り組んでいます。データベースで変更が行われたときにメソッドを呼び出したい状況があります。新しい通知が来るたびに通知のような手段を意味し、私のページには通知の番号が自動的に表示されます。これを行いましたタイマーを使用して動作しますが、繰り返し呼び出してサーバーの負荷が異常に増加するため、良くありません。データベースをリッスンし、新しいエントリが完了したとき、またはデータに変更が加えられたときにのみメソッドを呼び出す方法があるか教えてくださいベース
2 に答える
私があなたの質問を正しく理解していれば、新しい DB エントリがある場合に通知を表示する Web インターフェイスがありますか?
次に、サーバー側で通知を受け取るために、最初に Jose Luis Martin の提案の 1 つを選択する必要があります。そして、この通知をクライアントに転送する必要があります。これにはいくつかの可能性があります:
(既に行ったこと): ポーリングを使用する (x 秒ごとにクライアントからサーバーに要求を送信し、新しいエントリを要求する): http://en.wikipedia.org/wiki/Polling_(computer_science)
サーバーがデータをクライアントにプッシュするようにします。これは、より「現代的な」ソリューションです: http://en.wikipedia.org/wiki/Push_technology
Atmosphere のようなフレームワークと組み合わせて 2 番目のアプローチを使用することをお勧めします: https://github.com/Atmosphere/atmosphere
このフレームワークは、フォールバックなど、いくつかの異なる通信方法をサポートしています。
編集:
サーバーメソッド内の情報が本当に必要で、情報が100%正確である必要がない場合は、サーバーでタイマーを使用して30秒ごとに新しいアイテムをカウントし、クライアントリクエストの結果をキャッシュすることもできます.