
Spring Cloud
in the way
这个作者很懒,什么都没留下…
展开
-
SpringCloud gateway中获取处理请求的服务器ip和端口
ServerWebExchange 中获取处理请求服务器的ip和端口Connection responseClientConnnection = exchange.getAttribute(ServerWebExchangeUtils.CLIENT_RESPONSE_CONN_ATTR);Connection bind = attribute.bind(); SocketAddress socketAddress = bind.channel().remoteAddress();return Obj原创 2021-05-17 11:46:51 · 3217 阅读 · 0 评论 -
fegin超时 ribbot和hystrix配置
feign超时如果hystrix.command.default.execution.timeout.enabled为true,则会有两个执行方法超时的配置,一个就是ribbon的ReadTimeout,一个就是熔断器hystrix的timeoutInMilliseconds, 此时谁的值小谁生效如果hystrix.command.default.execution.timeout.enabled为false,则熔断器不进行超时熔断,而是根据ribbon的ReadTimeout抛出的异常而熔断,也就是原创 2020-10-10 17:36:26 · 224 阅读 · 0 评论 -
Feign 调用文件服务上传文件
feign文件上传报错FileUploadException: the request was rejected because no multipart boundaryfeign-form和spring cloud版本不一致 <dependency> <groupId>io.github.openfeign.form</groupId> <artifactId>feign-form</artifac原创 2020-07-07 17:53:53 · 672 阅读 · 0 评论 -
feign 重试的解决方法
一是,把发短信接口从Get改为Post。其实,这里还有一个API设计问题,有状态的API接口不应该定义为Get。根据HTTP协议的规范,Get请求用于数据查询,而Post才是把数据提交到服务端用于修改或新增。选择Get还是Post的依据,应该是API的行为,而不是参数大小。这里的一个误区是,Get请求的参数包含在Url QueryString中,会受浏览器长度限制,所以一些同学会选择使用JSON以Post提交大参数,使用Get提交小参数。二是,将MaxAutoRetriesNextServer参数配置为原创 2020-07-04 11:12:03 · 4865 阅读 · 0 评论 -
feign调用时出现提供者服务收到多次请求
在debug调试时, 消费者调用一次, 但是提供者收到多次请求, 原因时feign的超时时间, debug时间超过了超时时间,会触发feign的重试功能。 所以在调试时把超时时间设大一点# ribbon超时时间ribbon.ReadTimeout=50000ribbon.ConnectTimeout=50000#hystrix的超时时间hystrix.command.default.execution.timeout.enabled=truehystrix.command.default.ex原创 2020-05-14 09:31:24 · 4935 阅读 · 0 评论 -
Feign调用报错feign.FeignException: status 400 reading xxx 异常
问题描述:feign.FeignException: status 400 reading xxx 异常feign调用时链接过长, 导致请求没有发出去。GET请求有长度限制。解决方案:使用POST请求 + @RequestBody传递参数...原创 2020-05-07 18:49:26 · 2601 阅读 · 0 评论 -
feign 线程池数设置
1, feign默认的线程池大小为10个, 并发请求时, feign调用会报错,需要将线程池调高hystrix.threadpool.default.coreSize=802, 设置从调用线程允许HystrixCommand.getFallback()方法的最大请求数。SEMAPHORE模式有效默认值:10fallback.isolation.semaphore.maxConcurren...原创 2020-04-21 10:38:48 · 7836 阅读 · 0 评论 -
Feign设置超时时间 Ribbon + hystrix
一: 使用Feign调用接口分两层,ribbon的调用和hystrix的调用,所以ribbon的超时时间和Hystrix的超时时间的结合就是Feign的超时时间#hystrix的超时时间hystrix: command: default: execution: timeout: enab...原创 2020-04-16 09:19:06 · 622 阅读 · 0 评论 -
@FeignClient注解 中属性 contextId使用
@FeignClient注解 中属性 contextId比如我们有个user服务,但user服务中有很多个接口,我们不想将所有的调用接口都定义在一个类中,比如:Client 1@FeignClient(name = "optimization-user")public interface UserRemoteClient { @GetMapping("/user/get") publi...原创 2020-04-11 18:57:53 · 55638 阅读 · 0 评论 -
spring cloud config配置
在本地启动config,拉取的git的url与配置的不一样?解决: 查看配置中 basedir 需要配置本地环境支持的目录, window 如 E:/configspring - cloud -server 中配置 application.ymlspring: cloud: config: server: git: uri: ...原创 2020-04-03 13:34:41 · 180 阅读 · 0 评论