缓存穿透就是指:
用户访问–>页面,先去redis,redis没有,去mysql,两个都没有,就穿透了
解决:
缓存空数据:把传来的缓存到redis,设置过期时间
布隆:用户–>布隆,布隆去判断,没有数据就拒绝
布隆的原理就是数组,把mysql的数据进行hash算法弄成二进制值,保存到布隆,去布隆查的时,就去判断位置是0还是1
缺点:
空数据:内存消耗,可能造成短期不一致
布隆:实现复杂,可能存在误判
java里面,||或者,&&并且
!Strings.isNullOrEmpty,意思是:!=null且不是“”
StringBuilder拼接sql语句比使用String更省内存,因为String会重复创建一个新的字符串对象,系统会频繁进行垃圾回收,StringBuilder只进行一次,因为它是可变
判断实体类ObjectUtils.isEmpty也可以!=null
想换台运行内存大一点的电脑
MQ发送对象:JSON.toJSONString(taskEntity)
接受:JSON.parseObject(msg,TaskHisEntity.class);
总把简单的东西看复杂化,导致啥都记不住,有点迷茫
修复了前端文章里面,文章目录无法跳转的问题
RabbitMQ原生写起来真的头大,感谢Spring团队整合到框架里面
记录情感点滴,生活随笔