0

そのため、SignalR を学んでおり、変更を複数のクライアントにプッシュするというアイデアが気に入っています。学習用の単純な監視サイトを構築しています。10 秒ごとにデータベースをポーリングし、クエリ対象の現在の状態をクライアントにプッシュしたいと考えています。「ハブ」オブジェクトにタイマーを使用すると、すべてのクライアント接続で新しいタイマーが作成されます。これは、最終的にすべてのクライアントが独自の 10 秒タイマーを持ち、ハブが常に 10 秒ごとよりもはるかに頻繁に更新をプッシュすることを意味します。

私は頭の中でさまざまなアイデアを推し進めてきましたが、SignalR や、アプリドメイン。

4

3 に答える 3

4

タイマーを静的にするか、ハブの外に置いてみましたか? 次のようにハブにコールバックできます。

dynamic clients = Hub.GetClients<MyHub>();

詳細については、ページの下部にあるhttps://github.com/SignalR/SignalR/wiki/Hubsを参照してください。

基本的に、リクエストごとのハブを使用して、よりグローバルなものを処理しようとしています。

于 2011-11-18T21:10:02.010 に答える
1

それは良い例だと思います。デモンストレーション中に、サーバーで実行されている時計を示し、サーバーの時刻でクライアントを更新しました。あなたが言っていると思います、サーバー上の何かをチェックし、それが更新されるたびに、クライアントに知らせてください。同じような考え。それが役に立ったら、このGitHubリポジトリをチェックしてください。ここに、これらのデモンストレーションのコードがあります。

于 2011-11-18T21:05:45.490 に答える