Rails 独一无二的动态页面如何设计高性能?

suupic · 2012年03月26日 · 最后由 huacnlee 回复于 2012年03月27日 · 3003 次阅读

微博/twitter 的 timeline,对每个用户来说都独一无二的,并且这是页面的主要内容 在这种场景下,不管用碎片缓存、页面缓存还是 action 缓存,都相当有局限性

大家来讨论一下吧: 如果用 rails 开发这样一个产品,在面对这种个性化输出请求时,有什么方法可以用来实现高性能?

不一定要局限于页面的缓存,可以对动态数据进行缓存,如 memcache。

将 ids 查询足够的快,其他的过滤条件想法设法的简化为 id 列表,如 tweet_ids, follower_ids, block_user_ids ...一步一步拆解,到的细化的地方很多东西就可以 cache,那个时候命中率高

比如:

  • 单个 Tweet 的数据 cache
  • 用户的 follower_ids
  • 用户的 block_user_ids
需要 登录 后方可回复, 如果你还没有账号请 注册新账号