皆さんありがとう
皆さんありがとう
プッシュモードとプルモードの選択
プッシュする場合は、上記の 2 つの方法と同様の方法が最も簡単です。データ量は少し大きくなる可能性がありますが、メッセージ テーブルで処理できます。
プルを選択した場合、メッセージ テーブル (msg_id、msg_content) に加えて、別のユーザー メッセージ テーブル (uid、msg_id、status) も存在します。メッセージを送信すると、メッセージは N 人のユーザーに送信されます。 N 個のレコードがあり、メッセージ一覧ページを開いたときに、各ページに表示されているメッセージの数に基づいて、msg_id に基づいてコンテンツを検索して表示します。クリックすると既読とみなされ、ステータスが更新されます。
さらにいくつかのポイント
メッセージユーザーのテーブルを追加します。ユーザーがメッセージページを読んだときに、関連するコンテンツを追加し、ユーザーがその行を持っている場合は、それが読まれたことが証明されます。
これは、データベース IO の負荷を軽減し、反復操作を排除するためにある程度最適化できるシンプルなロジックです
ユーザーがメッセージを読んだときにデータベースにステータス フィールドを追加し、ステータスを 0 から 1 に変更します。
update A set status = 1 where ID = .