设计分为三个表
信息发送 --- MESSAGE_SEND
Name Code Data Type Primary
信息编号 MID integer TRUE
发件人 SENDID integer
标题 TITLE varchar(64)
发送时间 SENDTIME datetime
类型 TYPE tinyint --普通,公告,订阅
状态 STATUS tinyint --收藏,垃圾,删除
信息主体 -- MESSAGE_CONTENT
Name Code Data Type Primary
信息编号 MID integer TRUE
信息内容 CONTENT varchar(1024)
信息接收-- MESSAGE_RECEIVE
Name Code Data Type Primary
信息编号 MID integer TRUE
收信人 RID integer TRUE
读取标示 READ boolean
状态 STATUS tinyint --收藏,垃圾,删除
读取时间 READTIME datetime
优点:
没有冗余数据.
缺点:
当群发信息时,发给多少人MESSAGE_RECEIVE就会新增多少记录.
[color=red]还请各位指点设计站内信的迷津,不胜感激.[/color]
想过有ActiveMq实现,后来感觉没有什么必要,因为还是要持久化到DB.ActiveMq只是提高了消息的发送效率,不是实时的.利用程序自己也可以写一个缓冲容器.
信息发送 --- MESSAGE_SEND
Name Code Data Type Primary
信息编号 MID integer TRUE
发件人 SENDID integer
标题 TITLE varchar(64)
发送时间 SENDTIME datetime
类型 TYPE tinyint --普通,公告,订阅
状态 STATUS tinyint --收藏,垃圾,删除
信息主体 -- MESSAGE_CONTENT
Name Code Data Type Primary
信息编号 MID integer TRUE
信息内容 CONTENT varchar(1024)
信息接收-- MESSAGE_RECEIVE
Name Code Data Type Primary
信息编号 MID integer TRUE
收信人 RID integer TRUE
读取标示 READ boolean
状态 STATUS tinyint --收藏,垃圾,删除
读取时间 READTIME datetime
优点:
没有冗余数据.
缺点:
当群发信息时,发给多少人MESSAGE_RECEIVE就会新增多少记录.
[color=red]还请各位指点设计站内信的迷津,不胜感激.[/color]
想过有ActiveMq实现,后来感觉没有什么必要,因为还是要持久化到DB.ActiveMq只是提高了消息的发送效率,不是实时的.利用程序自己也可以写一个缓冲容器.
7217

被折叠的 条评论
为什么被折叠?



