当前位置: 首页 > news >正文

手机自适应网站建设维护汉服网站的建设

手机自适应网站建设维护,汉服网站的建设,宁波百度关键词推广,郑州网站建设 云极SpringCloudAlibaba–Sentinel Sentinel被称为分布式系统的流量防卫兵#xff0c;是阿里开源流量框架#xff0c;从服务限流、降级、熔断等多个纬度保护服务。Sentinel同时提供了简洁易用的控制台#xff0c;可以看到接入应用的秒级数据#xff0c;并可以在控制台设置一些…SpringCloudAlibaba–Sentinel Sentinel被称为分布式系统的流量防卫兵是阿里开源流量框架从服务限流、降级、熔断等多个纬度保护服务。Sentinel同时提供了简洁易用的控制台可以看到接入应用的秒级数据并可以在控制台设置一些规则保护应用。它比Hystrix支持的范围广泛如Spring Cloud、Dubbo、gRPC都可以整合。集成简单只需少量的配置和代码就可以完成容易完成自己定制化的逻辑。 资源是Sentinel最关键的概念遵循Sentinel API的开发规范定义资源就能将应用保护起来。 而规则可以通过控制面板配置也可以和资源联合起来规则可以在控制台修改并且即时生效。 名词解释 限流对某个资源的访问数量做限制不让流量一窝蜂地挤进资源访问降级即使系统出现问题情况下也要尽可能提供服务在可用和完全不可用之间找一个平衡点如返回友好提示。熔断是一种资源访问的状态熔断状态时直接拒绝所有的访问返回友好提示 同类产品对比 基础特性SentinelHystrixResilience4j限流QPS、线程数、调用关系有限的支持Rate Limiter注解支持支持支持支持动态规则配置支持多种数据源支持多种数据源有限支持数据源熔断降级策略平均响应时间、异常比例、异常数异常比例平均响应时间、异常比例控制台配置各种规则简单监控无控制台常用适配框架Servlet、SpringCloud、Dubbo、gRPCServlet、Spring CloudNetflixSpringBoot、Cloud Resilience4j在国外使用较多而Hystrix框架已经停止更新进入维护了。 下载和运行 按照笔者之前的笔记SpringCloudAlibaba是选择的2021.0.4.0版本的那么可以看下它们之间的版本对应关系 https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E 选择这个1.8.5版本即可到sentinel的下载页面选择即可https://github.com/alibaba/Sentinel/releases 下载完毕后的jar包启动即可 java -jar sentinel-dashboard-1.8.5.jar默认的端口是8080如需更改命令行添加即可 java -jar -Dserver.port9090 sentinel-dashboard-1.8.5.jar启动后打开http://localhost:8080/账号和密码都是sentinel 进入后发现没有任何的资源可以进行规则控制。sentinel是采用的懒加载的方式当使用时才会进行加载。 集成Sentinel 生产者 项目中引入依赖 dependencies!-- 服务注册 服务发现需要引入的 --dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId/dependency!--健康监控--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId/dependency!--SpringBoot web--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency!--sentinel依赖--dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-sentinel/artifactId/dependency/dependenciesbootstrap.yml中做配置 server:port: 8002 spring:application:name: provider # 应用名cloud:nacos:discovery:server-addr: localhost:8848 # nacos服务地址sentinel:transport:port: 8719 # 启动http server并且该服务与Sentinel仪表板进行交互使sentinel可以控制应用若端口占用则87191依次扫描dashboard: 127.0.0.1:8080 # 仪表版访问地址java controller做个资源 RestController // RestController注解是ControllerResponseBody public class TestController {RequestMapping(/test)public String test() {return sentinel-provider8002 test() RandomUtils.nextInt(0, 1000);} }消费者 同生产者引入依赖做好配置再到controller做个资源 使用RestTemplateRibbon做远程调用添加依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-loadbalancer/artifactId /dependencyjavaConfig配置 Configuration public class GenericConfiguration { // 常规配置类LoadBalanced // 标注此注解后,RestTemplate就具有了客户端负载均衡能力Beanpublic RestTemplate restTemplate(){ // 创建RestTemplate并交个Spring容器管理return new RestTemplate();} }RestController // RestController注解是ControllerResponseBody public class TestController {private final String SERVER_URL http://provider;Autowiredprivate RestTemplate restTemplate;RequestMapping(/test)public String test() {return restTemplate.getForObject(SERVER_URL /test, String.class);}RequestMapping(/sentinelTest)public String sentinelTest() {return sentinel-consumer9001 sentinelTest RandomUtils.nextInt(0, 1000);}}完成后启动项目调用生产者的test接口然后到sentinel控制台。 curl localhost:9001/testsentinel-provider8002 test()599两个服务都出现在了控制台上。 Sentinel常用控制规则 我们需要对接口进行压测所以使用jmeter吧到jmter官方下载即可。 流控规则 流控主要是设置QPS或线程数等参数保护应用针对某个资源的设置下面操作sentinel控制台设置一些规则。 注意要先调用接口后才能添加规则s加载 QPS–直接–快速失败 QPSQuery Per Second指每秒可处理的请求数 在簇点链路–列表视图–到/sentinelTest资源点击流控阈值选择QPS单机阈值1新增。 打开jmeter压测 查看执行结果 10个请求也就两个成功了其他都被限流了直接blocked QPS–直接–WarmUp 数据预热即初始请求QPS等于阈值/codeFactorcodeFactor默认值3经过预热时长1s后单机阈值变为100 压测数量100 看结果 前期接口正常返回当访问量越来越多时请求QPScodeFactor(3)时其他访问直接回绝经过1s的预热QPS变成了100后后面的的所有请求全部正常访问。 QPS–直接–排队等待 让请求全部均匀访问通过如果请求量超过阈值就等待若等待超时就返回失败。 虽然QPS单机阈值是1但是我们的超时时间为15s所以等得起访问全部成功。 QPS–关联–快速失败 如果访问B接口到达了阈值那么就让A接口返回失败。适用于资源之间有资源竞争或依赖关系。 再写一个接口sentinelTestB RequestMapping(/sentinelTestB) public String sentinelTestB() {return sentinel-consumer9001 sentinelTestB RandomUtils.nextInt(0, 1000); }设置规则要注意当我们重启项目后这些接口需要重新访问一遍才会出现在sentinel的簇点链路中 jmter不停访问/sentinelTestB让B接口超过达阈值然后在去调用/sentinelTest时直接回绝访问 因为sentinelTestB是没有做流控的所以请求都是成功的但是因为访问B接口的请求数是超过QPS阈值的那么A接口则直接失败。 curl localhost:9001/sentinelTest Blocked by Sentinel (flow limiting)线程数–直接 限制处理请求的业务线程数达到阈值就限流 可以看到很多请求都被限流了这个跟服务器的配置有关当服务器的配置较好时可以适当将阈值设置的高一些保证资源的访问情况。 控制台几个关键词 资源名就是接口的资源名称唯一即可针对来源此资源对调用者进行限流默认defatult对所有客户端限流可填写调用者的spring.application.name指定对某个客户端进行限流。阈值类型QPS每秒能接受的请求数量线程数能够使用的业务线程数(服务器内部的线程数)流控模式 直接达到条件直接执行某个流控效果关联如果关联资源达到条件直接限流自身链路记录从入口资源的流量达到条件也只限流入口资源 流控效果 快速失败达到条件直接返回失败WarmUp预热给一个缓冲时间缓慢增加阈值排队等待让系统匀速处理请求其他请求进入等待超时后未被处理的请求直接返回失败
http://www.pierceye.com/news/684081/

相关文章:

  • 手机网站设计通用尺寸上海外贸人才网
  • 智慧团建网站密码格式高端终端网站设计类网站
  • 福田网站设计网站建设平台方案
  • 荆州企业网站建设天津网站优化步骤
  • 网站怎么怎么做关键字长沙网站建设q.479185700強
  • 网站备案万网excel做网站
  • 十堰网站建设怎么做桐乡网站设计
  • 织梦商城网站模板网站设计的逻辑结构
  • 网站编辑器福建省工程建设信息官方网站
  • 网站的域名能修改么做设计网站的工作
  • 珠海选车牌号网站系统icp对网站内容
  • 东莞购物网站如何建立免费个人网站
  • 网站个别页面做seo建立有效的什么机制
  • 学校网站建设模板wordpress 年月归档
  • 凡科做的网站行不行京东慧采入驻条件及费用2023年
  • 汽车网站建设页面网站建设营销公司
  • 可以写代码的网站有哪些问题微信公众号的推广
  • 网站建设项目怎么写新网站一般多久收录
  • 什么网站可以免费发广告合肥做网站一般多少钱
  • 企业网站优化的方式大安市网站
  • 镇江专业网站建设制作wordpress调查插件
  • 桂林网站制作多少钱最好的网站开发公司
  • 广州网站开发公司排名广州从化建设网站官网
  • 网站备案在杭州注册公司需要什么条件
  • 购买域名做销售网站可以吗河北邢台刚刚发布的紧急通知
  • 安溪建设局网站政务网站建设信息
  • 如何做公司自己的网站首页网站建设的钱计入什么科目
  • 网站建设公司行业免费下载网站模版
  • 海外做淘宝网站网站有关于我们的好处
  • 给别人做网站挣钱吗怎么建设推广网站