地方旅游网站开发,app技术,网站建设合同概念,网站开发哪家公司电话https://github.com/spring-cloud/spring-cloud-openfeign openFeign, fegin #x1f446;open feginopenFegin使用日志打印配置类open fegin Feign是一个声明式的web服务客户端#xff0c;让编写web服务客户端变得非常容易#xff0c;只需创建一个接口并在接口上添加注解即…https://github.com/spring-cloud/spring-cloud-openfeign openFeign, fegin open feginopenFegin使用日志打印配置类open fegin Feign是一个声明式的web服务客户端让编写web服务客户端变得非常容易只需创建一个接口并在接口上添加注解即可。feign简化了spring cloud ribbon 自身集成了ribbon, 可负载均衡。面向接口服务调用.openFegin支持springmvc 注解取代feginfegin out… openFegin使用
pom !-- open-feign demo, based on client~ and get a ribbon~ --!--https://github.com/spring-cloud/spring-cloud-openfeign--dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-openfeign/artifactId/dependency yaml 超时控制和日志记录
server:port: 80# 未暴露服务名属于客户端eureka:client:register-with-eureka: falseservice-url:defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka# 设置feign客户端超时时间OpenFeign支持默认支持ribbon
ribbon:# 建立连接所有的时间适用于网络正常的情况下两端连接所有的时间ReadTimeout: 5000# 指的是建立连接后从服务器读取到可用资源的时间ConnectTimeout: 5000# feign 调用远程服务日志记录
logging:# 需要开启日志的客户端level:top.bitqian.springcloud.service.PaymentFeignService: debug
主启动
EnableFeignClients服务接口, 调用服务提供者
package top.bitqian.springcloud.service;import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import top.bitqian.springcloud.entity.CommonResult;
import top.bitqian.springcloud.entity.Payment;/*** 业务层 feign~* 需要feignClient 和 服务提供者的接口* restTemplate ribbon 是一套~* author echo lovely* date 2020/12/8 22:02*/// 被调用的微服务名称
FeignClient(value CLOUD-PAYMENT-SERVICE)
Component
public interface PaymentFeignService {GetMapping(/payment/get/{id})CommonResultPayment getPaymentById(PathVariable(id) Long id);// 模拟某个业务进行调用feign接口GetMapping(/payment/feign/timeout)String paymentFeignTimeout();
}
日志打印配置类
package top.bitqian.springcloud.config;import feign.Logger;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** 记录调用服务端的日志* 通过调整日志级别从而了解Feign中的http请求细节* 对feign接口调用情况进行监控和输出~* None 默认的不显示任何日志* BASIC 仅记录请求方法url响应状态码及执行时间* HEADERS basic 请求响应的头信息* FULL headers 请求响应的正文数据* author echo lovely* date 2020/12/9 22:26*/Configuration
public class FeignConfig {// 响应请求信息~BeanLogger.Level feignLoggerLevel() {return Logger.Level.FULL;}
}