0

数秒後に更新されるパブリックチャット/シャウトボックスを作成します(ほとんどIRCなどのように)。

私の計画:

1)HTMLフォーム、

2)JavaScriptを使用すると、通常はそのフォームを送信できなくなります。

3)送信されたメッセージを保存します(ここで問題が発生します)、

4)新しいメッセージを表示します(AJAXを使用すると思います)。

これらのメッセージをどこに保存すればよいかわかりません。それらをデータベースに保存することはできますが、各ユーザーが数秒ごとに新しいメッセージを要求するため、非常に時間がかかる可能性があります。最適化を試みることはできますが、方法がわかりません...たぶん、それらのメッセージを別の場所に保存できますか?

4

1 に答える 1

1

データベースアクセスが遅くなる理由がわかりません(Webサーバーに対してローカルであると仮定します)-データが永続的にアクセスされ、データベースがクエリを効率的に処理するように最適化されている場合、データは確実にRAMに保存されます。

もちろん、データを独自のデータ構造に保存し、それを定期的にデータベースに保存することもできますが、車輪の再発明を行っているため、サーバーがクラッシュするとデータが失われる可能性があります。

私が個人的に行うことは、クライアントにデータをプッシュすることであり、クライアントからデータをプルすることではありません(これはあなたが計画していることのようです)。そうすれば、誰かがログインするか、新しいメッセージが表示されるたびにデータを送信するだけで済みます-両方それほど頻繁には起こらないはずの状況。

于 2011-06-14T17:42:46.037 に答える