自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 sentinel执行流程

一,规则的创建 FlowRuleManager.loadRules(rules) 流控 DegradeRuleManager.loadRules(rules);降级 AuthorityRuleManager.loadRules(rules);校验 二,核心业务的入口 entry = SphU.entry(KEY);key 为资源名称 三,加载spi扩展接口,进行环境初始化逻辑 List<InitFunc> initFuncs = SpiLoader.of(InitFunc.class)./

2021-06-24 16:49:29 386

原创 sentinel中得设计模式-责任链模式

2021-06-23 10:56:25 247

原创 synchronzied+AQS

synchronized 锁状态:根据对象头中的markword来进行标记, 状态:无锁,偏向锁,轻量级,重量级 同步原理:同步方法->使用方法常量池中的标志位ACC_SYNCHRONIZED 同步代码块->使用monitor_enter moniter_exit两个指令来完成,(编译器会保证即使在执行异常的情况下这两个指令也会成堆出现,从而避免了锁无法释放的场景) jvm 源码 void ATTR ObjectMonitor::enter(TRAPS) { // The follow

2021-05-26 18:00:19 191

原创 jvm的调优尝试

对象的内存布局 对象的内存布局 Markword:内存布局 ClassPointer:jdk 1.8默认开启了指针压缩功能,对于实例对象中指向方法区中的ClassPointer占用大小为4字节。可以使用如下库进行内存布局查看 <dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</artifactId>

2021-05-25 19:41:36 117

原创 mysql

MOUTH(date):取出date中的月份 YEAR(date): DAY(date); MOD()模板函数, MONTH(birth) = MONTH(DATE_ADD(CURDATE(),INTERVAL 1 MONTH));//生日日期在下个月的查询条件

2021-05-19 17:50:44 102

原创 Java内存模型

缓存一致性协议 MESI四种状态 M:修改 E:独占 S:共享 I:无效 假如现在有CPU1和CPU2,主内存有变量X= 1 。现在要做 x+1的操作。 如果在变量 x = 1 上加上volatile,则就会触发MESI 当CPU1从主内存中读取到X=1时,CPU1会把此变量标记成独享状态 并监听总线,是否有其它CPU去读取此变量 当CPU2从主内存中读取X=1变量时,CPU1会通过嗅探机制监听到。 此时CPU1的X变量会变成共享状态。继续进行计算,计算完变成X=2。 此时要回写到主内存之前。先锁住缓..

2021-05-19 15:38:12 69

原创 计算机体系结构+Java内存模型

冯诺依曼计算机结构与原理 #冯诺依曼计算机结构原理 1,程序即是指令序列,指令能够被计算机运行 2,指令以二进制编码形式表示,存放在存储器中 3,存储器中的指令和数据按照地址进行存取 4,指令由cpu进行读取执行 指令:指令通常由操作码+操作数地址两部分构成 操作码:加,减,乘,除,取数,存数,锁等构成 操作数地址:代表了所要操做的数据所在的位置 指令执行过程 1,取指令:CPU控制器从存储器中读取一条指令并放入指令寄存器, 2,指令译码:指令寄存器中的指令经过译码,解析出该指令的操作码和操作数地址

2021-05-19 11:55:31 111

原创 nginx 高可用搭建

centos7 +nginx +keepalived 记录keepalived 踩坑记录 1,yum方式安装的keepalived 配置文件路径 /etc/keepalived/keepalived.config keepalived默认的日志路径:/var/log/messages 观察日志的追加内容:tail -f logPath ! Configuration File for keepalived global_defs { notification_email {#这些配置作用于当kee

2021-05-18 15:22:45 93

原创 Centos6.5安装mysql

https://blog.youkuaiyun.com/qq_42339484/article/details/81914221 链接: link.

2021-05-10 19:41:25 91

原创 2021-04-22

springclould seata nacos feign集成 版本: <springboot.version>2.3.6.RELEASE</springboot.version> <springclould.version>Hoxton.SR9</springclould.version> <springcloud.alibaba.version>2.2.3.RELEASE</springcloud.alibaba.version>

2021-04-22 15:31:07 126

原创 alibaba_sentinel_study

sentinel 集成到springcloud所需依赖 <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-core</artifactId> <version>1.7.0</version> </dependency> sentinel源码解读 sentinel使用责任链模式,使用了诸如 NodeSelec

2020-10-28 21:00:37 225

原创 Docker入门

Docker 环境linux centos7 Docker就是一个资源之间隔离的容器。 术名: Docker主机:安装了Docker的机器 Docker镜像:打包好的文件 Docker容器:软件运行起来就是一个容器 Docker仓库:放置Docker镜像的仓库 Docker客户端:用来操作Docker的软件 centos7 下安装docker过程 1,Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 2,通过 uname

2020-09-16 21:22:43 179

原创 springboot学习

1. springboot配置文件的加载位置 配置文件application.properties 加载位置 1, file:/config 2,file:/ 3,classpath:/config 4,classpath:/ 5,classpath:/resourcevc 2. 向容器中添加组件并赋值 2.1 @Component添加组件 @ConfigurationProperties(prefix = " 自定义前缀") 通过该前缀我们就可以在默认的springboot配置文件中,对自己的be

2020-09-15 21:48:40 106

原创 springboot学习

SpringBoot入门 视频学习地址:url:https://www.bilibili.com/video/BV1Et411Y7tQ?p=1 链接: link 1,pom文件 //该文件作为版本仲裁中心,对于我们未来使用的各种场景下的各个jar包的版本进行了约束,当我们在没有显示的声明我们的版本号的时候,就会使用springBoot为我们默认的版本号 <parent> <groupId>org.springframework.boot</groupId&gt

2020-09-13 18:26:34 157

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除