数据结构设计. 站内公告,要求统计阅读数,以及可以指定接收用户,用户量现在大约几万左右,求方案

2015-05-06 16:11:48 +08:00
 kemingcao

公告现在还比较少,会逐渐增加数量,大概一年几百左右。现在想到的方案是用Redis:

# key 随着用户增长会变态增长  2w * 10 = 20w key
# 统计以及特定用户接受什么的比较简单

# key                   => value
notification_id:user_id => is_read


# hash_key         field_key => field_value
notification_id :: user_id   => is_read

主要是需要记录每个用户是否读了公告,脑奔了,求建议 , 拜谢!

2294 次点击
所在节点    程序员
5 条回复
kslr
2015-05-06 16:24:37 +08:00
你也太看不起数据库了
fenzlie
2015-05-06 16:41:16 +08:00
如果你只需要记录站内公告数,在REDIS中记一个 statics:notification_id:readnum=0 然后有新用户访问时做个INCR就可以了。

如果你需要记录每个公告,哪些用户看了,哪些用户没看,这种信息还是存表吧,几万用户,几百公告数,存个表不过百万数据而已。加上索引主键查询妥妥够用。
kemingcao
2015-05-06 16:44:27 +08:00
@fenzlie 谢谢,想在想到怎么处理了!
deepreader
2015-05-07 00:15:18 +08:00
@kemingcao 具体怎么处理?
kemingcao
2015-05-08 18:26:47 +08:00
@deepreader 具体做了一个hash表,用户作为field , 值为公告,先实现,然后在改进。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/188942

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX