首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用环境变量设置Hystrix超时

使用环境变量设置Hystrix超时
EN

Stack Overflow用户
提问于 2017-02-06 16:26:33
回答 5查看 16.2K关注 0票数 8

为了更改Hystrix的默认请求超时(1000‘s),必须设置以下属性:hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=2000

对应的环境变量是什么?

我想在我最喜欢的云平台上“调优”超时,而不首先触及源代码。我很确定这个不管用:HYSTRIX_COMMAND_DEFAULT_EXECUTION_ISOLATION_THREAD_TIMEOUT_IN_MILLISECONDS=2000

编辑:/SpringBoot1.4发现了问题。

EN

回答 5

Stack Overflow用户

发布于 2017-06-23 21:07:58

VM选项和环境变量可以从应用程序配置中引用,这通常是设置长名称属性的一种更方便的方法。

例如,可以在application.yml中定义以下引用

代码语言:javascript
运行
复制
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: ${service.timeout}

这将从VM选项-Dservice.timeout=10000中解析,将默认的Hystrix命令超时设置为10秒。对于环境变量,它甚至更简单--多亏了松弛结合,其中任何一个都能工作(export示例适用于Linux):

  • export service.timeout=10000
  • export service_timeout=10000
  • export SERVICE.TIMEOUT=10000
  • export SERVICE_TIMEOUT=10000

常用的方法是对VM参数使用lowercase.dot.separated,对环境变量使用ALL_CAPS_WITH_UNDERSCORES

票数 9
EN

Stack Overflow用户

发布于 2017-06-24 21:50:36

您可以尝试使用默认值的表达式:

代码语言:javascript
运行
复制
hystrix.command.default.execution.isolation.thread.timeoutIn‌Milliseconds: ${SERVICE_TIMEOUT:2000}

如果您有SERVICE_TIMEOUT系统变量--它将被应用程序使用,否则,将获取一个默认值。

票数 2
EN

Stack Overflow用户

发布于 2017-03-01 16:18:09

使用JSON环境变量可以找到比解决方案更多的解决方案:

SPRING_APPLICATION_JSON='{ "hystrix" : { "command" : { "default" : { "execution" : { "isolation" : { "thread" : { "timeoutInMilliseconds" : 3000 } } } } } } }'

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42072591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档