java本地缓存vs 分布式缓存
现在有并发的用户请求,每个用户有一个userId,假设一个用户每50ms请求代理服务一次,连续请求10分钟。
代理服务需要转发用户的请求,并为每次请求生成一个seqId,这个是递增的+1
需要的是每次来了请求就使用userId作为key从本地缓存或者reids缓存中读取数据,然后+1,然后再回写到缓存中。这种设计是用本地缓存还是redis合适呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
java项目本身就有一个分布式缓存项目
apache ignite
,比redis好用多了。如果你需要用到分布式缓存,我强烈推荐这个。既可以独立部署,也可以嵌入项目中运行redis中不是有自增操作吗?不是挺适合你的需求?
如果网站是单机运行的,做在本地比较方便。
如果网站要做成负载均衡的,就必须用共享式存储了,Redis是一个不错的选择。
考虑到以后服务的扩展伸缩性肯定使用Redis做成分布式缓存
如果你的应用是单机的,没多台部署,可以使用本地缓存(进程内的缓存)比如ehcache,也可以使用redis缓存。
如果你的应用是多台部署,使用类似redis这样的独立缓存吧(进程外的缓存)。