javaweb 开发的电商项目,如何在系统中使用缓存?
电商项目将常用数据缓存起来,比如,移动端首页的数据,商品分类等这些不经常变化的数据,目的是为了 增强 移动端Android、iOS 响应速度。
1.我记得有一种项目一启动时,放入的全局共享缓存数据 : 这是什么缓存?
2.网上有人数说都用readis,这个需要集成到项目中吗
3.还有其他实现方式吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(12)
redis
我有个项目也是这么做的,用的EhCache,不过我觉得在Service层做处理比较方便,如果数据有更新也可以同时更新缓存。
回复
一般都用redis
你这是使用场景, 我问的放缓存如何处理好,比如上面的人说用redis, 但有些小项目估计用不到,一般采用静态成员变量的方式存储缓存了;
在系统中架设redis集群,然后读取数据,从redis服务器集群中读。
数据库服务器的数据需要同步到redis服务器上。
恩,谢谢; 这里有新提问,有空可以看看啊,https://www.oschina.net/question/1995134_2233438; 不是很懂;
我有个项目是这么用的,你可以试试:
在controller 收到用户请求后判断 ehcache中有没有缓存这个数据,没有就加载这个资源(数据库或者文件中)然后丢到缓存中,如果调用了这些数据的添加修改删除方法就删除这个缓存
你说的是CMS吧。。。通过后台提前设置好,加入缓存,前端显示直接读缓存
恩,谢谢, 上午了解了下redis,可以实现了,但有两种实现方式,jedisPool 与 RedisTemplate, 他们有什么不同呢? 可以看我最新提问:https://www.oschina.net/question/1995134_2233438
redis,现在比较流行
第一种我找到了源码: 就是直接类,然后public static Map属性,在系统启动的时候,直接访问数据库,插入出并put进去,这种全局属性,放多了是不是不好?
memcached或者redis,两者推荐使用redis,支持数据持久化,性能更佳!搭建redis集群,使用JEDIS操作redis与java代码结合,每次查询先查redis,如果为空,则去数据库加载数据,之后直接去redis缓存中查询数据即可。