こんにちは、
Comet を使用してチャット アプリケーションを実装しました。新しいメッセージが到着するまで、リクエストはサーバー上で「ハング」します。その後、新しいメッセージとともにクライアントに戻り、再びサーバーに移動します。
私の問題は次のとおりです。
新しいメッセージを確認するために、600 ミリ秒ごとにデータベースをポーリングします。簡単なクエリ「select...from messages where messageId > ' + lastMessageId.
さらに、プレゼンスを維持するために、各ユーザー「LastKeepAliveTime」でデータベースを非常に(非常に)頻繁に更新します。
SQL Server のトランザクション ログが大きくなり、ある時点でチャット アプリケーションが動作しなくなりました。
チャット ユーザーは登録ユーザーではなく、いつでもページを離れることができるランダム ユーザーです。
ありがとうヤロン