上一章介紹了grpc斷路器sentinel,spring
可是因爲公司線上系統用的告警與監控組件是prometheus,而sentinel暫時尚未集成prometheus,因此這裏就在部分線上系統仍是用hystrixui
<dependency> <groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-starter-netflix-hystrix</artifactid> </dependency>
@PostMapping("/grpc") @HystrixCommand(fallbackMethod = "fallbackMethod") public BaseResponse doGrpc(@RequestBody ReRequest rr){ ...... ....... } public BaseResponse fallbackMethod(@RequestBody ReRequest rr){ ...... ....... }
feign: hystrix: enabled: true okhttp: enabled: true httpclient: enabled: false compression: request: enabled: true response: enabled: true hystrix: command: default: execution: timeout: enabled: true isolation: thread: timeoutInMilliseconds: 1000 circuitBreaker: requestVolumeThreshold: 50 threadpool: default: coreSize: 60 maxQueueSize: 200 queueSizeRejectionThreshold: 200
須要注意的是grpc也會有超時時間,這裏斷路器設置超時時間應該比grpc超時時間大。.net