教程微服务保护day01.pptx

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

微服务保护Sentinel

初识Sentinel流量控制隔离和降级授权规则规则持久化

初识Sentinel雪崩问题及解决方案服务保护技术对比Sentinel介绍和安装微服务整合Sentinel01

雪崩问题服务A服务B服务C服务D......tomcat资源耗尽服务A服务B服务C服务D服务服务服务服务服务服务服务服务服务服务服务服务服务服务微服务调用链路中的某个服务故障,引起整个链路中的所有微服务都不可用,这就是雪崩。

雪崩问题解决雪崩问题的常见方式有四种:超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待服务A服务B服务C等待1秒

雪崩问题解决雪崩问题的常见方式有四种:超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待舱壁模式:限定每个业务能使用的线程数,避免耗尽整个tomcat的资源,因此也叫线程隔离。服务A服务B服务C业务1线程:10业务2线程:10

雪崩问题解决雪崩问题的常见方式有四种:超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待舱壁模式:限定每个业务能使用的线程数,避免耗尽整个tomcat的资源,因此也叫线程隔离。熔断降级:由断路器统计业务执行的异常比例,如果超出阈值则会熔断该业务,拦截访问该业务的一切请求。服务A服务B服务C服务D......tomcat资源耗尽服务A服务B服务C服务D熔断

雪崩问题解决雪崩问题的常见方式有四种:超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待舱壁模式:限定每个业务能使用的线程数,避免耗尽整个tomcat的资源,因此也叫线程隔离。流量控制:限制业务访问的QPS,避免服务因流量的突增而故障。Sentinel请求请求请求受保护的服务熔断降级:由断路器统计业务执行的异常比例,如果超出阈值则会熔断该业务,拦截访问该业务的一切请求。

什么是雪崩问题?微服务之间相互调用,因为调用链中的一个服务故障,引起整个链路都无法访问的情况。如何避免因瞬间高并发流量而导致服务故障?流量控制如何避免因服务故障引起的雪崩问题?超时处理线程隔离降级熔断

服务保护技术对比SentinelHystrix隔离策略信号量隔离线程池隔离/信号量隔离熔断降级策略基于慢调用比例或异常比例基于失败比率实时指标实现滑动窗口滑动窗口(基于RxJava)规则配置支持多种数据源支持多种数据源扩展性多个扩展点插件的形式基于注解的支持支持支持限流基于QPS,支持基于调用关系的限流有限的支持流量整形支持慢启动、匀速排队模式不支持系统自适应保护支持不支持控制台开箱即用,可配置规则、查看秒级监控、机器发现等不完善常见框架的适配Servlet、SpringCloud、Dubbo、gRPC等Servlet、SpringCloudNetflix

认识SentinelSentinel是阿里巴巴开源的一款微服务流量控制组件。官网地址:Sentinel具有以下特征:丰富的应用场景:Sentinel承接了阿里巴巴近10年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。完备的实时监控:Sentinel同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至500台以下规模的集群的汇总运行情况。广泛的开源生态:Sentinel提供开箱即用的与其它开源框架/库的整合模块,例如与SpringCloud、Dubbo、gRPC的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入Sentinel。完善的SPI扩展点:Sentinel提供简单易用、完善的SPI扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。

安装Sentinel控制台sentinel官方提供了UI控制台,方便我们对系统做限流设置。大家可以在GitHub下载。课前资料提供了下载好的jar包:将其拷贝到一个你能记住的非中文目录,然后运行命令:然后访问:localhost:8080即可看到控制台页面,默认的账户和密码都是sentineljava-jarsentinel-dashboard-1.8.1.jar

安装Sentinel控制台如果要修改Sentinel的默认端口、账户、密码,可以通过下列配置:配置项默认值说明server.port8080服务端口sentinel.dashboard.auth.usernamesentinel默认用户名sentinel.dashboard.auth.passwordsentinel默认密码举例说明java-jarsentinel-dashboard-1.

文档评论(0)

152****0921 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档