一个是 sentinel 用来实现微服务系统中服务熔断、降级等功能。 这点和hystrix 类似
一个是 sentinel dashboard 用来监控微服务系统中流量调用等情况 流控 熔断 降级 配置。 这点和hystrix dashboard类似
java -Dserver.port=9191 -jar sentinel-dashboard-1.7.2.jar4、访问9191端口的web管理页面 5、输入账号密码为sentinel进行登陆 Sentinel的使用 1、停止nacos集群 2、启动nacos单机模式
./nacos/bin/startup.sh -m standalone3、新建一个子模块springcloudAlibaba-sentinel-8998 4、添加相关依赖
5、编写配置文件application.ymlorg.springframework.boot spring-boot-starter-webcom.alibaba.cloud spring-cloud-starter-alibaba-nacos-discoverycom.alibaba.cloud spring-cloud-starter-alibaba-sentinel
server: port: 8998 spring: application: name: SENTINEL #nacos server地址 cloud: nacos: server-addr: localhost:8848 #开启sentinel保护 sentinel: enabled: true #指定sentinel dashboard web管理地址 transport; dashboard: localhost:9191 #指定sentinel组件与sentinel dashboard通信地址 #dashboard端口号默认8719 port: 87196、编写controller
package com.zww.spring.springcloudAlibaba.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoController { @RequestMapping("/demo") public String demo(){ return "demo ok!!!"; } }7、启动项目,调用一次/demo,再去观察sentinel Sentinel中对系统保护的五大规则
一、流控规则:流量控制(flow control
- 其原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。
二、降级规则:熔断降级(Degrade Service)
- 其原理是监控应用中的资源调用请求,达到指定阀值时自动出发熔断降级
三、热点规则:热点参数规则(ParamFlow)
- 其原理是很多时候我们希望统计某个热点数据中访问频次最高的 TOP K 数据,并对其进行限制
四、系统规则:系统自适应限流(SysetmFlow)
- 其原理是 Sentinel 系统自适应限流从整体维度对应用入口流量进行控制
五、授权规则:来源访问控制(黑白名单)规则(AuthorityRule)
- 很多时候,我们需要根据调用来源来判断次该请求是否允许放行,这时候可以使用 Sentinel 的来源访问控制(黑白名单控制)的功能。来源访问控制根据资源的请求(origin)限制资源是否通过,若配置白名单则只有请求来源白名单内时才可通过;若配置黑名单则请求所在黑名单时不通过,其余的请求通过。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)