读书人

微博关注是根据什么来知道你关注小弟我

发布时间: 2013-01-21 10:15:39 作者: rapoo

微博关注是根据什么来知道你关注我,我关注你了?数据库怎么设计?
如题,我想做个微博,但是关注这快 该怎么操作 用php写。。
[解决办法]
你们想的太复杂了,确实如此而已:

引用:
建一张表,两个字段:
关注者id
被关注者id

------解决方案--------------------


引用:
我觉得这个真正难的地方是服务器架构设计,而不是实现方法。再优秀的方法,也无法应对日益增大的数据量,只有调整服务器架构,将压力均衡开,才是长期发展之路。


ShadowSniper 你说了一个用户一个消息表,这可能吗?据说新浪有5000万用户,5000万个表是多么庞大的数量阿。
[解决办法]
引用:
引用:我觉得这个真正难的地方是服务器架构设计,而不是实现方法。再优秀的方法,也无法应对日益增大的数据量,只有调整服务器架构,将压力均衡开,才是长期发展之路。

ShadowSniper 你说了一个用户一个消息表,这可能吗?据说新浪有5000万用户,5000万个表是多么庞大的数量阿。


我说的时redis的list或sets结构,不是说mysql的表。建5000万个list和一个list 5000万数据所占内存差别不大。
如果是mysql,建5000万个表不现实,mysql单库也有数量限制。不过根据分表策略肯定要用上。根据用户id算出一个hash值,将5000万用户分别存在n张表,这n张表可能在不同的db服务器上,这也是很常见的策略。
[解决办法]
引用:
你们想的太复杂了,确实如此而已:
引用:建一张表,两个字段:
关注者id
被关注者id


要mysql的话确实是这样建表。
但对于新浪微博这么大的并发量,能实时读写mysql嘛?对于这种热数据,肯定是直接读写内存,然后定期更新至mysql、mongo这些持久化存储引擎。

读书人网 >PHP

热点推荐