I am trying microservices with eureka and zuul. And there is a problem with all requests, which take more then 1 second. As I have understood, 1 second is default hystrix timeout, and for configuring timeouts in Zuul, I have to configure these properties:
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds
ribbon.ConnectTimeout
ribbon.ReadTimeout
but when I set them, there is "Cannot resolve configuration property ..." warning on each of them in the Intelije Idea. And, it seems, they are not applied and don't work.
Setting ribbon readTime in zuul server should solve this problem.
ribbon:
ReadTimeout: 60000
Note: ReadTimeout is case sensitive.
Add the following property in Zuul gateway service
hystrix:
command:
default:
execution:
iso lation:
thread:
timeoutInMilliseconds: 30000
ribbon:
ReadTimeout: 60000
connection-timeout: 3000
eureka:
enabled: true
zuul:
ignoredServices: '*'
host:
time-to-live: -1
connect-timeout-millis: 5000
max-per-route-connections: 10000
max-total-connections: 5000
socket-timeout-millis: 60000
semaphore:
max-semaphores: 500
Answer is edited
This way you will increase Hystrix timeout (globaly):
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 5000
or per service:
hystrix:
command:
<serviceName>:
execution:
isolation:
thread:
timeoutInMilliseconds: 5000
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With