
1 geelaw 2017-08-02 18:05:03 +08:00 via iPhone 请先把你的问题描述清楚 |
2 nutting 2017-08-02 18:07:52 +08:00 这种一般都是 key value 的数据吧 |
3 breadenglish 2017-08-02 18:08:59 +08:00 mongoDB 之流 |
4 whatsmyip 2017-08-02 18:29:32 +08:00 redis list 就可以做到吧 |
5 run2 2017-08-02 18:36:14 +08:00 timeline 列表里获取每个点赞的用户是伪需求吧, 只要知道个数就行了 cache 一下点赞数 |
7 klausgao OP |
8 casparchen 2017-08-02 21:23:53 +08:00 graph database 最适合这种了 |
9 ericbize 2017-08-02 21:55:48 +08:00 我就记得 上 Database system 的时候老师说过,当年 FB 被点赞点到数据库挂了。 |
10 owenliang 2017-08-02 22:42:41 +08:00 文章表,点赞表,留言表,根据文章 ID 查出点赞和留言。。。不知道楼主说的循环是什么意思。。 |
11 iyaozhen 2017-08-02 22:51:06 +08:00 via Android [再通过内容的 ID 循环取出各个内容的点赞人和回复的内容,但是这样的效率就很低了。 ] 不慢吧,每个内容的点赞人和评论存 MySQL 的话一把也就差出来了 |
12 iiduce 2017-08-02 22:51:34 +08:00 在 mongodb 中使用 EmbeddedModelField 字段放置点赞信息 model,同时最好添加一个点赞数字段。 如果是 sql 数据库,应该使用存储过程?好些年没用 sql 了,记不清了。 |
15 iiduce 2017-08-02 22:54:54 +08:00 更正:mongodb 应该是放置 ListField(EmbeddedModelField(赞 model), null=True, blank=True) 我的系统中是这样写的: favorites = ListField(EmbeddedModelField(favorite), null=True, blank=True) favorite_num = models.IntegerField(u'喜欢数目', default = 0, db_index=True) |
16 geelaw 2017-08-02 23:43:54 +08:00 via iPhone 可以 join 啊……你把状态的表和评论的表 join 一下咯,这样就会得到状态和每条评论,然后再按状态分组,格式化,返回。 |
17 rootx 2017-08-03 01:43:10 +08:00 via iPhone key-value 形式存 json 数据如何?只要取出当前 ID 的 value 数量和内容就都出来了。 |
21 zacard 2017-08-03 13:46:46 +08:00 这个应该是异构数据存在例如 redis 的系统中,一次就把点赞、留言内容等都取出来 |
22 ty89 2017-08-03 13:59:48 +08:00 《会的太少 想的太多系列》 |
24 run2 2017-08-03 14:59:34 +08:00 @klausgao #23 微信的列表里比你想的更复杂,因为只显示共同好友的回复内容 所以专门为每个用户生成了他浏览的 timeline 可以看看这个 www.infoq.com/cn/presentations/technology-of-weixin-moments InfoQ 首页 演讲 微信朋友圈技术之道 www.infoq.com/cn/articles/three-people-background-team-and-billions-daily-release 摘要 |
25 v9ox 2017-08-03 15:00:39 +08:00 via iPhone 某点赞公司路过 php 端确实是俺楼主所说 先抓 post 然后每个 post 去获取点赞 后端的设计是 graph 和 sql 具体的还没看过 |
27 klausgao OP |
29 klausgao OP @ty89 看看大家的回帖,不是什么人都像你那么自以为是眼高手低的,这个是程序员节点,不是水区,相互学习吧。 |
30 ppwangs 2017-08-03 17:36:16 +08:00 把点赞当成评论的一种 |