Ribbon饥饿加载导致超时问题
问题:
之前在项目中出现一个问题,使用Feign调用其他模块时第一次出现超时并且做了降级操作,之后就正常了。
原因分析:
开始认为时是因为Hystrix配置的超时时间没有生效,所以更改了Hystrix配置,但是还是会出现这种情况;
之后又对Ribbon超时时间做了设置,但是有时候还是会出现这种问题(服务器资源很紧张时,正好做第一次请求操作-当然点很背。。。)
通过阅读资料知道Feign第一次Http请求的时候需要初始化Ribbon和发送Http请求,因此会出现耗时比较长的情况。
解决:
开启Ribbon的懒惰加载模式即可
ribbon.eager-load.enabled=true #开启Ribbon的饥饿加载模式 ribbon.eager-load.clients=uerClinet #指定需要饥饿加载的服务名
                    
                
                
            
        
浙公网安备 33010602011771号