2015-10-13 187 views
1

我正在做一個由zuul代理服務支持的簡單spring雲應用程序的一些壓力測試 由於Zuul和服務之間的陳舊連接,零星地發生了一個斷開的管道異常。 我配置Zuul與diferent配置選項沒有成功:在先進的Spring Cloud:Zuul Broken Pipe錯誤

hystrix: 
    command: 
    default: 
     execution: 
     isolation: 
      strategy: THREAD 
      thread: 
      timeoutInMilliseconds: 61000 


ribbon: 
    ReadTimeout: 60000 
    ConnectTimeout: 6000 

zuul: 
    host: 
    socket-timeout-millis: 60000 
    connect-timeout-millis: 60000 

感謝任何線索,這個解決。 例外如下: '

com.netflix.zuul.exception.ZuulException:轉發錯誤 在org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter.forward(RibbonRoutingFilter.java :151)〜[router.jar!/:0.0.1] at org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter.run(RibbonRoutingFilter.java:114)〜[router.jar!/:0.0 0.1] 在com.netflix.zuul.ZuulFilter.runFilter(ZuulFilter.java:112)〜[zuul核-1.0.28.jar /:com.netflix.hystrix:NA]

所致。 exception.HystrixRuntimeException:query-serviceRibbonCo失敗並且沒有可用的後備。 at com.netflix.hystrix.AbstractCommand $ 20.call(AbstractCommand.java:816)〜[hystrix-core-1.4.0-RC6.jar!/:na] at com.netflix.hystrix.AbstractCommand $ 20.call( rx.internal.operators.OperatorOnErrorResumeNextViaFunction $ 1.onError(OperatorOnErrorResumeNextViaFunction.java:77)〜[rxjava-1.0.4]中的[hystrix-core-1.4.0-RC6.jar!/:na] !的.jar /:1.0.4] 在rx.internal.operators.OperatorDoOnEach $ 1.onError(OperatorDoOnEach.java:70)〜[rxjava-1.0.4.jar /:1.0.4]

引起:java.net.SocketException:在java.net.SocketOutputStream.socketWrite0(本地方法)〜[na:1.8.0_45] 在java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)〜[na: 1.8.0_45] 01 (AbstractSessionOutputBuffer.java:159)〜[httpcore- 4.3.3.jar!/:4.3.3] ... at rx.internal.operators.OperatorMap $ 1.onNext(OperatorMap.java:55)〜[rxjava-1.0.4.jar!/:1.0.4 ] at com.netflix.loadbalancer.reactive.LoadBalancerCommand $ 1.call(LoadBalancerCommand.java:185)〜[ribbon-loadbalancer-2.0-RC13.jar!/:na] at com.netflix.loadbalancer.reactive.LoadBalancerCommand $ 1 .call(LoadBalancerCommand.java:180

+0

你有沒有設法這裏解決這些問題,我們正在運行到類似的問題。 – berlinguyinca

回答

2

我已經用完了相同的問題:我已經解決了它通過添加zuul執行超時zuul服務器的application.yml

# Increase the Hystrix timeout to 60s (globally) 
hystrix: 
    command: 
    default: 
     execution: 
     isolation: 
      thread: 
      timeoutInMilliseconds: 60000 

請參閱本線程Netflix的問題:https://github.com/spring-cloud/spring-cloud-netflix/issues/321

+0

我也嘗試過hystrix配置,但將策略更改爲THREAD您運行的是哪個版本的Spring雲?謝謝 –

+0

我在春天雲Angel.SR6上運行(使用春季雲啓動父項)。 – Rafik

相關問題