问题
在项目中经常需要将某些数据暂存起来便于后续使用,有哪些方法可以完成,他们之间又有什么不同呢?
解决1 —— redis(推荐)
使用redis做缓存,将暂存的数据放入redis中。速度快,但可能会有缓存击穿等问题,同时要注意及时删除无用缓存,避免redis中含有太多无用数据。
解决2 —— 数据库(不推荐)
直接创建一张用于存储暂存数据的表格,数据查找有保证,但如果数据会频繁更新,数据库的读写压力会大大增加。数据的写入与查找也会增加时间成本。
解决3 —— 全局变量(zz的想法)
java中的全局变量是由public修饰的static成员变量,放在静态方法区,所有的实例对象会共享同一份全局变量。所以一旦对某个类实例化后对其中的全局变量做出修改,那么其他的实例其中的全局变量值也相应的会被修改。
这样看来是不是也很适合用于数据暂存呢?但是他有一个大问题
服务宕机重启之后这个全局变量就没啦。。。