本来以为很简单的,但是如果是一个 timeline 列表,有很多的各个 up 主的点赞内容,难不成是循环 sql 取出点赞列表?效率那么低也不对吧?
|
geelawAug 2, 2017 via iPhone
1
请先把你的问题描述清楚
|
|
nuttingAug 2, 2017
2
这种一般都是 key value 的数据吧
|
|
breadenglishAug 2, 2017
3
mongoDB 之流
|
|
whatsmyipAug 2, 2017
4
redis list 就可以做到吧
|
|
run2Aug 2, 2017
5
timeline 列表里获取每个点赞的用户是伪需求吧, 只要知道个数就行了 cache 一下点赞数
|
|
7
|
|
casparchenAug 2, 2017
8
graph database 最适合这种了
|
|
ericbizeAug 2, 2017
9
我就记得 上 Database system 的时候老师说过,当年 FB 被点赞点到数据库挂了。
|
|
owenliangAug 2, 2017
10
文章表,点赞表,留言表,根据文章 ID 查出点赞和留言。。。不知道楼主说的循环是什么意思。。
|
|
iyaozhenAug 2, 2017 via Android
11
[再通过内容的 ID 循环取出各个内容的点赞人和回复的内容,但是这样的效率就很低了。 ]
不慢吧,每个内容的点赞人和评论存 MySQL 的话一把也就差出来了 |
|
iiduceAug 2, 2017
12
在 mongodb 中使用 EmbeddedModelField 字段放置点赞信息 model,同时最好添加一个点赞数字段。
如果是 sql 数据库,应该使用存储过程?好些年没用 sql 了,记不清了。 |
|
iiduceAug 2, 2017
15
更正: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) |
|
geelawAug 2, 2017 via iPhone
16
可以 join 啊……你把状态的表和评论的表 join 一下咯,这样就会得到状态和每条评论,然后再按状态分组,格式化,返回。
|
|
rootxAug 3, 2017 via iPhone
17
key-value 形式存 json 数据如何?只要取出当前 ID 的 value 数量和内容就都出来了。
|
|
zacardAug 3, 2017
21
这个应该是异构数据存在例如 redis 的系统中,一次就把点赞、留言内容等都取出来
|
|
ty89Aug 3, 2017
22
《会的太少 想的太多系列》
|
|
run2Aug 3, 2017
24
@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 摘要 |
|
v9oxAug 3, 2017 via iPhone
25
某点赞公司路过
php 端确实是俺楼主所说 先抓 post 然后每个 post 去获取点赞 后端的设计是 graph 和 sql 具体的还没看过 |
|
27
|
|
ppwangsAug 3, 2017
30
把点赞当成评论的一种
|