怎么统计帖子的点击量比较好?

直接插到数据库肯定不行,效率太低。
把数据放到缓存,隔一段时间以后同步缓存数据到数据库怎么样?

阅读 8.1k
4 个回答

1.并行
2.异步
3.选择写入性能更好的中间件( redis,mongo)

中间缓存更新策略:write through , write back 具体看业务场景,对于数据实时性,数据完整性的要求

使用Redis的自增计数,设定一个阈值,每当计数整数倍于阈值时,写入数据库

long views = incr article:#articleId:views
long limit = 10
if views > 0 && views % limit == 0 then
    // 入库
end

redis即可, 定期同步数据库(如果需要的话) 按时间比较方便。
可以考虑 Jedis 的方法:

public Set<String> keys(final String pattern) {

checkIsInMultiOrPipeline();
client.keys(pattern);
return BuilderFactory.STRING_SET.build(client.getBinaryMultiBulkReply());

}

使用redis的hash结构,存储帖子的浏览量,回复量等信息,定期做数据库的备份

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题