zoukankan      html  css  js  c++  java
  • java架构师学习路线-SpringCloud微服务中如何进行Feign相关配置?

    图灵学院 java架构师学习路线

    Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

    1、【microcloud-c umer-feign】Feign之中最为核心的作用就是将Rest服务的信息转换为接口调用,但是在实际的使用过程也需要考虑到一些配置情况,例如数据压缩,Rest的核心本质在于:JSON数据传输(xml、文本),于是就必须思考一种情况,用户发送的数据很大呢?所以这个时候可以考虑修改application.yml配置文件,对传输数据进行压缩。server: port: 80eureka: client: #客户端进行Eureka注册的配置 service-url: defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka,http://eureka:eureka@eureka-7002.com:7002/eureka,http://eureka:eureka@eureka-7003.com:7003/eureka register-with-eureka: falsefeign: compression: request: mime-types: - text/xml - application/xml - application/json min-request-size: 2048 #超过2048的字节进行压缩

    2、【microcloud-c umer-feign】如果有需要则可以在项目之中开启feign的相关日志信息(默认不开启),修改application.yml配置文件,追加日志追踪:server: port: 80eureka: client: #客户端进行Eureka注册的配置 service-url: defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka,http://eureka:eureka@eureka-7002.com:7002/eureka,http://eureka:eureka@eureka-7003.com:7003/eureka register-with-eureka: falsefeign: compression: request: mime-types: - text/xml - application/xml - application/json min-request-size: 2048 #超过2048的字节进行压缩logging: level: com.gwolf.service: DEBUG

    3、【microcloud-c umer-service】修改FeignClientConfig,开启日志的输出。@Configurationpublic class FeignClientConfig { @Bean public Logger.Level getFeignLoggerLevel() { return Logger.Level.FULL; } @Bean public BasicAuthRequestInterceptor getBasicAuthRequestInterceptor() { return new BasicAuthRequestInterceptor("gwolf","gwolf"); }}

    4、访问地址:http://client.com/c umer/dept/list查看日志输出。

    5、可以观察到如下流程:1、当使用Feign要通过接口的方法访问Rest服务的时候会根据设置的服务类型发出请求,这个请求是发送给Eureka的,“http://MICROCLOUD-PROVIDER-DEPT/dept/list”

    6、随后由于配置了授权处理,所以继续发送授权信息“Authorization”在随后服务调用的时候Feign融合了Ribbon技术,所以也支持负载均衡的处理。

    7、总结:Feign=RestTemplate + HttpHeader + Ribbon + Eureka 综合体=业务接口的自动实例化。

    尽管Java架构师学习路线已经分享给大家,但有多少人能认真的去践行,这个就难说了。互联网寒冬已经到来,作为程序员,更应在此时提高自己,有着更高远的追求。

    篇幅有限,如果需要更详细的java架构师学习路线资料可加博主qq:1993712276,或者去图灵官网查看

  • 相关阅读:
    在CentOS7上安装MySQL5.7-YUM源方式
    自动重建索引
    Oracle EM12c 安装
    CentOS 7 安装oracle 11G
    oracle 11.2.0.4 dbca创建数据库时 报错ORA-12532
    CentOS 7 安装oracle 11.2.0.4 Error in invoking target 'agent nmhs' of makefile
    Oracle db file parallel write 和 log file parallel write 等待事件
    转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38
    笔记:Memory Notification: Library Cache Object loaded into SGA
    Oracle补全日志(Supplemental logging)
  • 原文地址:https://www.cnblogs.com/tulingxueyuan/p/13504337.html
Copyright © 2011-2022 走看看