Bulkhead 屬性配置

您可以在應用程式的配置屬性檔案中配置 ThreadPoolBulkhead 和 SemaphoreBulkhead 例項。屬性配置的優先順序高於 Java Customizer 配置。

resilience4j.thread-pool-bulkhead:
    instances:
        backendA:
            maxThreadPoolSize: 1
            coreThreadPoolSize: 1
resilience4j.bulkhead:
    instances:
        backendB:
            maxConcurrentCalls: 10

您還可以透過 resilience4j.bulkhead.configs.resilience4j.thread-pool-bulkhead.configs. 屬性提供通用配置。這允許您指定一次配置並在多個 bulkheads 之間重用它。

resilience4j.bulkhead:
    configs:
        default:
            queueCapacity: 5
        someShared:
            queueCapacity: 10
    instances:
        backendA:
            baseConfig: default
            maxConcurrentCalls: 10
        backendB:
            baseConfig: someShared

如果您以這種方式配置您的 bulkhead,它將採用最低優先順序。優先順序順序為

  1. resilience4j.thread-pool-bulkhead.instances.resilience4j.bulkhead.instances.

  2. 使用 Resilience4JBulkheadProviderCustomizer 配置。

  3. resilience4j.thread-pool-bulkhead.configs.resilience4j.bulkhead.configs.

有關 Resilience4j 屬性配置的更多資訊,請參閱 Resilience4J Spring Boot 2 配置