java本地缓存vs 分布式缓存

现在有并发的用户请求,每个用户有一个userId,假设一个用户每50ms请求代理服务一次,连续请求10分钟。

代理服务需要转发用户的请求,并为每次请求生成一个seqId,这个是递增的+1

需要的是每次来了请求就使用userId作为key从本地缓存或者reids缓存中读取数据,然后+1,然后再回写到缓存中。这种设计是用本地缓存还是redis合适呢?

阅读 6.1k
5 个回答

java项目本身就有一个分布式缓存项目apache ignite,比redis好用多了。如果你需要用到分布式缓存,我强烈推荐这个。既可以独立部署,也可以嵌入项目中运行

新手上路,请多包涵

redis中不是有自增操作吗?不是挺适合你的需求?

如果网站是单机运行的,做在本地比较方便。

如果网站要做成负载均衡的,就必须用共享式存储了,Redis是一个不错的选择。

考虑到以后服务的扩展伸缩性肯定使用Redis做成分布式缓存

如果你的应用是单机的,没多台部署,可以使用本地缓存(进程内的缓存)比如ehcache,也可以使用redis缓存。
如果你的应用是多台部署,使用类似redis这样的独立缓存吧(进程外的缓存)。

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