## Hystrix 默认加载的配置文件 - 限流、 熔断示例
#
## 线程池大小
#hystrix.threadpool.default.coreSize=1
## 缓冲区大小， 如果为-1，则不缓冲，直接进行降级 fallback
#hystrix.threadpool.default.maxQueueSize=200
## 缓冲区大小超限的阈值，超限就直接降级
#hystrix.threadpool.default.queueSizeRejectionThreshold=2
#
## 执行策略
## 资源隔离模式，默认thread。 还有一种叫信号量
#hystrix.command.default.execution.isolation.strategy=THREAD
## 是否打开超时
#hystrix.command.default.execution.timeout.enabled=true
## 超时时间，默认1000毫秒
#hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=15000
## 超时时中断线程
#hystrix.command.default.execution.isolation.thread.interruptOnTimeout=true
## 取消时候中断线程
#hystrix.command.default.execution.isolation.thread.interruptOnFutureCancel=false
## 信号量模式下，最大并发量
#hystrix.command.default.execution.isolation.semaphore.maxConcurrentRequests=2
#
## 降级策略
## 是否开启服务降级
#hystrix.command.default.fallback.enabled=true
## fallback执行并发量
#hystrix.command.default.fallback.isolation.semaphore.maxConcurrentRequests=100
#
## 熔断策略
## 启用/禁用熔断机制
#hystrix.command.default.circuitBreaker.enabled=true
## 强制开启熔断
#hystrix.command.default.circuitBreaker.forceOpen=false
## 强制关闭熔断
#hystrix.command.default.circuitBreaker.forceClosed=false
## 前提条件，一定时间内发起一定数量的请求。  也就是5秒钟内(这个5秒对应下面的滚动窗口长度)至少请求4次，熔断器才发挥起作用。  默认20
#hystrix.command.default.circuitBreaker.requestVolumeThreshold=4
## 错误百分比。达到或超过这个百分比，熔断器打开。  比如：5秒内有4个请求，2个请求超时或者失败，就会自动开启熔断
#hystrix.command.default.circuitBreaker.errorThresholdPercentage=50
## 10秒后，进入半打开状态（熔断开启，间隔一段时间后，会让一部分的命令去请求服务提供者，如果结果依旧是失败，则又会进入熔断状态，如果成功，就关闭熔断）。 默认5秒
#hystrix.command.default.circuitBreaker.sleepWindowInMilliseconds=10000
#
#
## 度量策略
## 5秒为一次统计周期，术语描述：滚动窗口的长度为5秒
#hystrix.command.default.metrics.rollingStats.timeInMilliseconds=5000
## 统计周期内 度量桶的数量，必须被timeInMilliseconds整除。作用：
#hystrix.command.default.metrics.rollingStats.numBuckets=10
## 是否收集执行时间，并计算各个时间段的百分比
#hystrix.command.default.metrics.rollingPercentile.enabled=true
## 设置执行时间统计周期为多久，用来计算百分比
#hystrix.command.default.metrics.rollingPercentile.timeInMilliseconds=60000
## 执行时间统计周期内，度量桶的数量
#hystrix.command.default.metrics.rollingPercentile.numBuckets=6
## 执行时间统计周期内，每个度量桶最多统计多少条记录。设置为50，有100次请求，则只会统计最近的10次
#hystrix.command.default.metrics.rollingPercentile.bucketSize=100
## 数据取样时间间隔
#hystrix.command.default.metrics.healthSnapshot.intervalInMilliseconds=500
#
## 设置是否缓存请求，request-scope内缓存
#hystrix.command.default.requestCache.enabled=false
## 设置HystrixCommand执行和事件是否打印到HystrixRequestLog中
#hystrix.command.default.requestLog.enabled=false
#
#
#
## 限流策略
#
##如果没有定义HystrixThreadPoolKey，HystrixThreadPoolKey会默认定义为HystrixCommandGroupKey的值
#hystrix.threadpool.userGroup.coreSize=1
#hystrix.threadpool.userGroup.maxQueueSize=-1
#hystrix.threadpool.userGroup.queueSizeRejectionThreshold=800
#
#
#hystrix.threadpool.userThreadPool.coreSize=1
#hystrix.threadpool.userThreadPool.maxQueueSize=-1
#hystrix.threadpool.userThreadPool.queueSizeRejectionThreshold=800
#hystrix.command.userCommandKey.execution.isolation.thread.timeoutInMilliseconds=5000
