如何在没有 Eureka 的情况下配置 zuul 和 ribbon 以实现负载平衡和故障转移
How to configure zuul and ribbon for load balance and failover without Eureka
Spring 引导版本:1.5.7.Release
Spring云版本:Dalston.SR4
我正在用 ribbon 测试 zuul 服务器,我不想 Eureka
我在zuul服务器添加了如下配置
#application.properties
spring.application.name= gateway
server.port=8089
eureka.client.enabled=false
ribbon.eureka.enabled=false
zuul.ignored-services= "*"
zuul.routes.sample-service.path=/samples/**
zuul.routes.sample-service.serviceId=sample-service
zuul.routes.sample-service.stripPrefix=false
zuul.routes.sample-service.retryable=true
zuul.routes.retryable=true
zuul.retryable=true
sample-service.ribbon.listOfServers= localhost:8081,localhost:8085
sample-service.ribbon.eureka.enabled= false
sample-service.ribbon.ServerListRefreshInterval= 100
sample-service.ribbon.retryableStatusCodes= 500
sample-service.ribbon.MaxAutoRetries= 0
sample-service.ribbon.MaxAutoRetriesNextServer= 1
sample-service.ribbon.OkToRetryOnAllOperations= true
sample-service.ribbon.ReadTimeout= 10000
sample-service.ribbon.ConnectTimeout= 10000
sample-service.ribbon.EnablePrimeConnections= true
zuul.ribbon-isolation-strategy=thread
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds= 30000
问题
通常 zuul 服务器运行良好,但其中一台服务器正在关闭
响应返回如下消息。
这种情况下的调试点是什么?
{
"timestamp": 1510040524144,
"status": 500,
"error": "Internal Server Error",
"exception": "com.netflix.zuul.exception.ZuulException",
"message": "TIMEOUT"
}
我在 application.properties 中添加了以下代码,它正在运行。
hystrix.command.sample-service.execution.isolation.thread.timeoutInMilliseconds= 60000
谢谢。
Spring 引导版本:1.5.7.Release Spring云版本:Dalston.SR4
我正在用 ribbon 测试 zuul 服务器,我不想 Eureka
我在zuul服务器添加了如下配置
#application.properties
spring.application.name= gateway
server.port=8089
eureka.client.enabled=false
ribbon.eureka.enabled=false
zuul.ignored-services= "*"
zuul.routes.sample-service.path=/samples/**
zuul.routes.sample-service.serviceId=sample-service
zuul.routes.sample-service.stripPrefix=false
zuul.routes.sample-service.retryable=true
zuul.routes.retryable=true
zuul.retryable=true
sample-service.ribbon.listOfServers= localhost:8081,localhost:8085
sample-service.ribbon.eureka.enabled= false
sample-service.ribbon.ServerListRefreshInterval= 100
sample-service.ribbon.retryableStatusCodes= 500
sample-service.ribbon.MaxAutoRetries= 0
sample-service.ribbon.MaxAutoRetriesNextServer= 1
sample-service.ribbon.OkToRetryOnAllOperations= true
sample-service.ribbon.ReadTimeout= 10000
sample-service.ribbon.ConnectTimeout= 10000
sample-service.ribbon.EnablePrimeConnections= true
zuul.ribbon-isolation-strategy=thread
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds= 30000
问题
通常 zuul 服务器运行良好,但其中一台服务器正在关闭 响应返回如下消息。 这种情况下的调试点是什么?
{
"timestamp": 1510040524144,
"status": 500,
"error": "Internal Server Error",
"exception": "com.netflix.zuul.exception.ZuulException",
"message": "TIMEOUT"
}
我在 application.properties 中添加了以下代码,它正在运行。
hystrix.command.sample-service.execution.isolation.thread.timeoutInMilliseconds= 60000
谢谢。