- 博客(5)
- 收藏
- 关注
原创 【笔记】java设计模式之代理模式
静态代理接口:public interface SomeService { String doFirst(); void doSecond();}实现类:public class SomeServiceImpl implements SomeService { public String doFirst() { System.out.println("doFirst..."); return "abc"; } p
2020-06-09 23:02:47 138
转载 缓存穿透、雪崩、击穿
缓存穿透:故意去请求缓存中不存在的数据,从而去数据库中查,数据库中也没有,所以无法加到缓存,下次还是直接怼到数据库,所以高并发的时候就导致数据库崩了。解决方案:1)利用互斥锁,缓存失效的时候,先去获得锁,得到锁了,再去请求数据库。没得到锁,则休眠一段时间重试。2)数据库没查到数据,也往缓存中写入一个空值,但是设置失效时间短一点,防止恶意攻击。缓存雪崩:即缓存同一时间大面积的失效,这个时候又来了一波请求,结果请求都怼到数据库上,从而导致数据库连接异常。解决方案:1)给缓存失效时间,加上
2020-06-07 21:53:15 122
原创 Redis之字符串
字符串键值结构:key value hello world counter 1 bits 10111101 json { "product": { "id": "2951", "name": "testing 01", "quantity": 4 } } 字符串的value的大小限制为512M字符串命令set、get、del自增incr...
2020-06-07 18:35:42 210 1
原创 Redis之通用命令
1.keys 查询所有的键支持正则表达式:keys一般不在生产环境中使用,因为在生产环境中,key会特别多(上百万),keys是一个很重的命令那么keys怎么用呢???热备从节点:从节点不执行业务,可以在从节点上执行一些比较重的命令 scan命令,后面会学习2.dbsize 计算key的总数3.exists key 检查key是否存在4.del key [key ...] 删除key删除多个值:5.expire key seconds ...
2020-06-07 17:33:05 209
原创 Redis安装及基本使用
1.安装gccyum install gcc-c++2.下载redis:wget http://download.redis.io/releases/redis-5.0.5.tar.gz3.解压:tar -zxvf redis-5.0.5.tar.gz4.编译:cd redis-5.0.5make5.安装:make PREFIX=/usr/local/redis install安装目录是:/usr/local/redis install6.配置文件:将安装
2020-06-07 11:00:13 130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人