- 博客(3)
- 收藏
- 关注
原创 Redis 缓存穿透、缓存击穿、缓存雪崩
1、缓存穿透描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。解决方案:接口层增加校验,如用户鉴权校验,id做基础校验,id<=0的直接拦截;从缓存取不到的数据,在数据库中也没有取到,这时也可以将key-value对写为key-null,缓存有效时间可以设置短点,如30秒(设置太长会导致正常情况也没法使用)。这样可以防止攻击用户反复用同一个id暴力攻击2、缓存
2020-06-11 09:20:51 58
原创 Java面试基础
Java基础1、ArrayList和LinkedList区别ArrayList是实现了基于动态数组的数据结构,LinkedList是基于链表结构。对于随机访问的get和set方法,ArrayList要优于LinkedList,因为LinkedList要移动指针。对于新增和删除操作add和remove,LinkedList比较占优势,因为ArrayList要移动数据。2、ArrayList和LinkedList的应用场景如下:ArrayList使用在查询比较多,但是插入和删除比较少的情况,而Lin
2020-05-21 10:44:42 69 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人