微服务保护sentiel 小记
这里使用的是sentiel 和Hystrix的对比图
因为微服务中关系复杂,服务之间可能存在着复杂的依赖关系,如果某个被访问的服务挂掉,可能会引起一大系列的问题--雪崩,最后导致整个服务瘫痪.
预防雪崩的方案有四种:超时处理、舱壁、断路器、限流
超时:设定一定的时间,请求超过一定的时间没有响应就返回错误信息,不会无休止的等待(就比如5秒去重试5秒重试...)
舱壁:顾名思义和船舱一样,每个船舱之间都是独立的
断路器:断路器统计业务执行的异常比例,如果超过阈值就会熔断该业务,拦截该业务的所有请求(类似电路保护空开)
限流:限制业务访问的QPS(家中水龙头,即使自来水管道的水流再大,水龙头很好的对水进行了流量控制)
我使用的是阿里的的Sentinel,相比网飞公司的Hystrix的对比图

使用Sentinel流程:
将sentinel-dashboard-000.jar 运行起来 (可以到官网pull)
先写一个测试的小domo
导入阿里整合cloud的依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
修改yml配置
server:
port: 8088
spring:
cloud:
sentinel:
transport:
dashboard: localhost:8080
访问小demo的端点
然后到端口8080的sentinel控制台可以看到(得先访问端点,控制台才可以看到哟)....

针对每个访问的簇点链路,有各种操作

各种操作,,,,,
sentiel 对服务的各种详细操作,得细心摸索,,,,,
2021年12月5日22:20:08 因为jmeter.bat面板跑不出来,不知道是怎么回事,,,就没有做详细的测试 ,,,,.,,,,,,,,
随笔记上两个linux命令
nohup java -jar **** & 后台运行jar
netstat -apn | grep 8888 查看占用的端口 ,然后kill-9干掉进程
在l中运行jar包时候 在etc\profile中把JAVAHOME配好.然后其他的环境以个人目前的认知, 好像都可在dock中跑

浙公网安备 33010602011771号