推情势只要供用户揭晓微专时,保存一条微专数据到feeds表中(feeds表能够是一个临时表,只保留短期可承受范畴的数据).用户屡屡盘问feed时城市来盘问feeds表。好比姚朝翻开自己的微专尾页,便发生:SELECT id FROM feeds where uid in(following uid list) ORDER BY id DESC LIMIT n(盘问最新的n条),慢存到memcached
uidlist=>{data:id list,timeline:前次盘问进去的最新的一条数据的时间}
再次革新:SELECT id FROM feeds where uid in(following uid list) AND timeline>(memcached保存的前次的timeline) ORDER BY id DESC LIMIT n
这类情势完毕起去也是比力简朴战简单的,不过正在盘问的时候需要多思考下慢存的构造。可是feeds表会发生很年夜的压力,如何道feeds表也要保留近来十天半个月的数据吧,关于一个年夜面的体系,那会发生比力年夜的数据,假设following的人数比力多,数据库的压力便会十分年夜。并且一般正在线的用户,客户端城市按期扫描,又会增加很年夜的压力,那正在盘问功用上不拉情势的服从下。
这类情势完毕起去也是比力简朴战简单的,不过正在盘问的时候需要多思考下慢存的构造。可是feeds表会发生很年夜的压力,如何道feeds表也要保留近来十天半个月的数据吧,关于一个年夜面的体系,那会发生比力年夜的数据,假设following的人数比力多,数据库的压力便会十分年夜。并且一般正在线的用户,客户端城市按期扫描,又会增加很年夜的压力,那正在盘问功用上不拉情势的服从下。
上面咱们正在对于推情势干一下改良劣化