mixiにある日記やつぶやきにレスがついた際、通知がくると思うのですがこれと似たような仕組みを開発したいと考えています。


開発しているサービスは
・スレッドをユーザーが立てる
・スレッドにユーザがコメントをする
・コメント内容に別のユーザーがイイネ、などをつけれる
ざっくりですがこんな感じです。

通知は
・スレッドにコメントがついたらスレッドを立てたユーザにのみ通知をする
・コメントにイイネ、などがついたらコメントしたユーザのみに通知をする
・通知用table内に大量のデータを保持しないようにしたい。
(何件、などは不要でそのコメントやスレッドにレスがついたということだけ知らせられればOK)
という形を考えています。

また、通知が毎回きてもうっとおしくなってしまうため
バッチを4時間でセットし、データがあれば該当ユーザに通知をする、という処理にしようと思っています。

tableなど、そもそも通知の仕組みをうまく?作るにはどういう構成がいいのかよくわかっていません。。
大変ざっくりな質問で申し訳ないのですがご知見のある方がいらっしゃいましたらどうぞよろしくお願いいたします。

回答の条件
  • 1人10回まで
  • 登録:
  • 終了:2011/12/15 22:40:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:kodairabase No.1

回答回数661ベストアンサー獲得回数80

ポイント100pt

テーブル 'thread'

フィールド名データ型内容
threadint,主キースレッドID
uservarcharユーザーID
contentstextスレッドの内容
tivarchar作成日時
new_commentint新規コメント数
delflagbool削除フラグ

テーブル 'comment'

フィールド名データ型内容
commentint,主キーコメントID
threadint親スレッドのID
uservarcharユーザーID
contentstextコメントの内容
tivarchar作成日時
new_iineint新規イイネ数
delflagbool削除フラグ

おおまかな動作

  1. スレッド作成時
    1. テーブル 'thread' にレコード追加。
    2. new_commentを0クリア。
    3. その他のフィールドにも値を代入。
  2. コメント書き込み時
    1. テーブル 'comment' にレコード追加。
    2. new_commentを0クリア。
    3. new_iineを0クリア。
    4. threadにコメントが紐づくスレッドのIDを記入。
    5. その他のフィールドにも値を代入。
  3. バッチ処理時の動作
    1. テーブル 'thread' のnew_commentをチェック。
    2. 1以上ならuserにお知らせを送る。
    3. new_commentを0クリア。
    4. テーブル 'comment' のnew_iineをチェック。
    5. 1以上ならuserにお知らせを送る。
    6. new_iineを0クリア。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません