zoukankan      html  css  js  c++  java
  • Feign

    Feign

    假设有一个java的json接口,Feign可以将其声明它是以HTTP方式调用。

     

    需要服务组件(SAO):

    1.注册中心(Eureka):服务发现和注册

    应用名称:spring-cloud-eureka-server

    服务端口:12345

    2.Feign声明接口(锲约):定义一种java强类型接口

    例如:person-api

    Interface PersonService

    3.Feign客户端(服务消费):调用Feign申明接口

    创建Controller实现PersonService接口

    4.Feign服务端(服务提供):不一定强制实现Feign申明接口

     

    整合Netflix Ribbon

    1.关闭Eureka注册

    调整person-client:取消@EurekaClient 或者 ribbon.eureka.enable = false

    2.定义服务ribbon的服务列表

    调整person-service:person-service.ribbon.listofservers:http://localhost:9090

     

    Ribbon

    规则IRule

    • 随机 RandomRule

    • 高可用 BestAvailableRule

    • 轮巡 RoundRobinRule

    • 重试实现 RetryRule

    • 客户端配置 ClientConfigEnableRoundRobinRule

    • 可用性过滤规则 AvailabilityFilteringRule

    • RT权重规则 WeightedResponseTimeRule

    • 规避区域规则 ZoneAvoidanceRule

    实现IRule接口

     

    整合Netflix Hystrix

    1.新类newClass实现PersonService接口,重写方法

    2.@feignClient(value = "person-service",fallback="newClass")

  • 相关阅读:
    控件右键菜单的实现以及选中后勾选
    DataGridView控件使用
    return,continue,break的区别
    break和continue的区别 循环终止办法
    事件
    跨线程改变控件属性 线程调用带参数方法
    XML配置文件相关
    抽象类及与接口的区别
    字典
    Oracle学习第一天
  • 原文地址:https://www.cnblogs.com/kinglead/p/10979898.html
Copyright © 2011-2022 走看看