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

友链网站降权WordPress管理员邮件

友链网站降权,WordPress管理员邮件,dedecms 如何关闭网站,一个微信可以做两个网站支付宝吗微服务系统中为了防止服务雪崩问题#xff0c;服务之间相互调用的时候一般需要开启熔断与降级#xff0c;下面就来看下feign如何集成hystrix来做熔断与降级。 依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-c…微服务系统中为了防止服务雪崩问题服务之间相互调用的时候一般需要开启熔断与降级下面就来看下feign如何集成hystrix来做熔断与降级。 依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-openfeign/artifactId /dependency !--高版本才需要单独引入-- dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-hystrix/artifactIdversion2.2.10.RELEASE/version /dependency需要说明的是低版本的feign默认已经依赖了hystrix不需要添加额外的依赖但是高版本的feign默认并没有依赖hystrix因此需要额外导入hystrix的依赖。 降级 所谓的降级就是在服务之间相互调用的时候如果提供者抛出了异常消费者并不会同步的也抛出异常而是给客户端返回一个降级以后的结果我们可以给FeignClient添加fallbackFactory来指定降级以后的处理逻辑。 1让feign开启降级 feign:hystrix:enabled: true2给FeingClient添加fallbackFactory 比如我们有一个UserClient FeignClient(value userservice,url http://localhost:8081,fallbackFactory UserFallbackFactory.class,configuration FeignConfig.class) public interface UserClient {GetMapping(/user/{id})public User queryById(PathVariable(id) Long id); }3实现UserFallbackFactory自定义降级逻辑 public class UserFallbackFactory implements FallbackFactoryUserClient {Overridepublic UserClient create(Throwable cause) {return new UserClient(){Overridepublic User queryById(Long id) {return new User(0L, fallback user, fallback address);}};} }4UserFallbackFactory配置到FeignConfig中 UserClient会引用这个配置从而找到UserFallbackFactory这个bean。 public class FeignConfig {Beanpublic UserFallbackFactory userFallbackFactory(){return new UserFallbackFactory();} }测试一下 如果userservice接口异常浏览器并不会抛出异常而是返回将降级以后的结果 熔断 所谓的熔断就是说假如服务提供者现在已经异常了消费者就没有必要继续去调用了反正调用也是失败干错直接走降级逻辑。那么hystrix是如何来判断应该是直接走降级逻辑还是应该发起远程调用这里边主要有以下几个参数 配置 hystrix:command:default:metrics:rollingStats:timeInMilliseconds: 5000circuitBreaker:requestVolumeThreshold: 2errorThresholdPercentage: 50sleepWindowInMilliseconds: 10000以上几个参数的含义是 5秒timeInMilliseconds以内请求次数达到2个requestVolumeThreshold以上失败率达到50%errorThresholdPercentage以上则开启熔断10秒sleepWindowInMilliseconds。 测试一下 连续访问10次接口order-service的输出 2023-09-08 09:32:44.144 INFO 4364 --- [nio-8080-exec-1] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:44.806 INFO 4364 --- [nio-8080-exec-2] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:45.408 INFO 4364 --- [nio-8080-exec-3] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:45.781 INFO 4364 --- [nio-8080-exec-4] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:45.981 INFO 4364 --- [nio-8080-exec-5] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:46.261 INFO 4364 --- [nio-8080-exec-6] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:46.541 INFO 4364 --- [nio-8080-exec-7] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:46.792 INFO 4364 --- [nio-8080-exec-8] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:47.029 INFO 4364 --- [nio-8080-exec-9] com.github.xjs.web.OrderController : OrderController.queryById(), id1 2023-09-08 09:32:47.258 INFO 4364 --- [io-8080-exec-10] com.github.xjs.web.OrderController : OrderController.queryById(), id1user-service的输出 2023-09-08 09:32:44.358 ERROR 9788 --- [nio-8081-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.RuntimeException: 查询用户异常] with root cause 2023-09-08 09:32:44.812 ERROR 9788 --- [nio-8081-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.RuntimeException: 查询用户异常] with root cause很显然前面2次调用失败以后开启了熔断后面的8个请求都是直接走的降级逻辑请求并没有到后端的user-service。 熔断器的工作原理 背后的原理就是AOPhystrix会拦截并统计远程调用的结果如果达到熔断的条件就开启熔断开启熔断以后请求就不会到后端的微服务了。当然也不能一直熔断sleepWindowInMilliseconds时间以后如果再有新的调用hystrix会放行一个请求到后端的微服务如果请求还是失败的则继续保持熔断走降级逻辑如果请求是成功的则关闭熔断正常调用后端的微服务。 断路器控制熔断和放行是通过状态机来完成的 完整的源码下载https://github.com/xjs1919/enumdemo
http://www.sadfv.cn/news/195188/

相关文章:

  • 15年做那些网站能致富中国风电商网站建设
  • 写作挣钱的网站公司简介模板word
  • 会所网站模板网站基础三要素
  • 沈阳网站建设 房小二网站建设的会计分录
  • 手机自助建站平台免费wordpress 提交插件
  • wordpress开启自定义字段青岛网站建设优化
  • 做网站的电话网站建设工具哪家好
  • 做图片推广的网站有哪些石家庄站内换乘示意图
  • 酒店专业培训网站建设百度登陆
  • 北京模板网站建站英文医疗网站建设
  • 网页网站开发项目设计湖南网站seo营销多少费用
  • 安康市城市建设局网站网站的首页怎么做
  • 做招投标应该了解的网站技术外包
  • 免费做网站推广引擎搜索器
  • 有名的淘宝客网站网页网站原型图占位符怎么做
  • 上传宝贝网站建设属于什么类目乐陵seo外包信德
  • 网站可以制作ios做住宿的有几个网站
  • 深圳龙华新区网站建设室内设计接单网站
  • 毕设代做网站大气宽屏网站模板
  • 加密的网站使用jmeter做压测c2c定义
  • 网站建设 微盘下载益阳营销网站建设
  • 做1688网站运营工资怎么样网站开发天津网站开发
  • 网站页头尺寸网站建设主持词
  • 网站logo是什么吉林刷关键词排名优化软件
  • 电影院网站建设方案网站制作的重要流程
  • 做时时的网站html5教程百度云
  • wordpress任务网站无线网络管理平台
  • 网站建设公司广告语自己做的美食分享到网站
  • 随州程力网站建设莱阳网站开发
  • 上海住房城乡建设厅网站开发一个超市app需要多少钱