Gmail でさえ、クライアントの要求に応じて更新されます。サーバーは新しいアイテムの量を計算し、クライアントはリクエストを開始します (おそらく AJAX を使用)。これに必要なデータ量と処理時間はほとんどないため、おそらく問題なく処理できます。さまざまなキャッシュジェムは、最後のリクエスト以降にデータが変更されていない場合に更新されたページの一部を保存することもできます。これにより、何かが変更された場合にのみ計算するという問題も解決されます。
アップデート:
この問題は、基本的にサーバー側のプッシュとクライアント側のクエリの 2 つの方法で解決できます。プッシュは、さまざまな理由で問題があり、少なくとも私の知る限り、Web 環境ではめったに使用されません。ほとんどのページ (すべてではないにしても) は、時限クエリを使用してそのような情報を更新します。firefox の firebug などの適切なツールで確認できます。サーバーに対して開始された個々のリクエストを確認できます。
AJAX を介してリクエストを送信すると、サーバーから応答が返されます。通常、古いコンテンツを新しいコンテンツに置き換えるためにページ フラグメントが生成されますが、何らかのキャッシュ メカニズムが介入する可能性があり、何も変更されていない場合は、以前に保存されたキャッシュ フラグメントを取得できます。さまざまな宝石については、こちらのチュートリアルを参照してください。そのうちの1つがニーズに合う場合があります。
完全なソリューションを希望する場合は、Faye (チュートリアルはこちら) を確認してください。私はそれを使用していませんが、試してみる価値があるかもしれません。