チャット機能を備えた iOS 用のアプリケーションがあります。現在、ロングポールで動作します。そして今、ソケットで動作するように変更しようとしています。ソケットに関しては、調査を開始しましたが、最良のオプションの 1 つは、socket.io で nodejs を使用することです。次に、redis pub/sub を使用してメッセージの配信と保存を管理しました。
redis についていくつか調査した結果、推奨される使用方法は、保存されたデータがメモリに収まる必要があることを示唆しています。しかし、少し大きなデータベースがあります。チャット履歴全体を保存したいと思います。そのため、redis をキャッシュ データベースとして使用する計画を立て始めました。これは、オンライン ユーザーのチャット履歴 (すべてではない可能性があります) を保存し、redis からオフラインになった後に実際の会話を mongodb/simpledb (または即座に両方) に書き込みます。 )。
要約すると、nodejs と redis pub/sub を使用してメッセージを配信し、redis をキャッシュ データベースとして使用し、mongodb を使用して会話全体を保存することを決定しようとしています。
デザインについてどう思いますか?これは受け入れられますか?または、より良い方法を提案できる場合は、もう少し説明していただけますか?
前もって感謝します。