aedart / athenaeum-circuits
适用于Laravel的断路器
8.10.0
2024-09-23 07:54 UTC
Requires
- php: ^8.2
- aedart/athenaeum-contracts: ^8.10
- aedart/athenaeum-support: ^8.10
- aedart/athenaeum-utils: ^8.10
- illuminate/cache: ^v11.23.5
- illuminate/events: ^v11.23.5
- dev-main
- 8.10.0
- 8.9.0
- 8.8.0
- 8.7.0
- 8.6.0
- 8.5.0
- 8.4.0
- 8.3.0
- 8.2.0
- 8.1.0
- 8.0.0
- 7.33.0
- 7.32.0
- 7.31.0
- 7.30.1
- 7.30.0
- 7.29.0
- 7.28.0
- 7.27.0
- 7.26.0
- 7.25.0
- 7.24.0
- 7.23.0
- 7.22.1
- 7.22.0
- 7.21.0
- 7.20.0
- 7.19.0
- 7.18.1
- 7.18.0
- 7.17.0
- 7.16.0
- 7.15.0
- 7.14.0
- 7.13.0
- 7.12.0
- 7.11.3
- 7.11.2
- 7.11.1
- 7.11.0
- 7.10.1
- 7.10.0
- 7.9.1
- 7.9.0
- 7.8.0
- 7.7.2
- 7.7.1
- 7.7.0
- 7.6.0
- 7.5.0
- 7.4.0
- 7.3.0
- 7.2.0
- 7.1.0
- 7.0.1
- 7.0.0
- 7.0.0-alpha.1
- 6.8.1
- 6.8.0
- 6.7.0
- 6.6.0
- 6.5.2
- 6.5.1
- 6.5.0
- 6.4.0
- 6.3.0
- 6.2.1
- 6.2.0
- 6.1.1
- 6.1.0
- 6.0.2
- 6.0.1
- 6.0.0
- 5.27.0
- 5.26.0
- 5.25.0
- 5.24.2
- 5.24.1
- 5.24.0
- 5.23.0
- 5.22.4
- 5.22.3
- 5.22.2
- 5.22.1
- 5.22.0
- 5.21.0
- 5.20.0
- 5.19.0
- 5.18.1
- 5.18.0
- 5.17.0
- 5.16.0
- 5.15.0
- 5.14.1
- 5.14.0
- 5.13.2
- 5.13.1
- 5.13.0
- 5.12.0
- 5.11.0
- 5.10.1
- 5.10.0
- 5.9.0
- 5.8.0
- 5.7.0
- 5.6.0
- 5.5.1
- 5.5.0
- 5.4.0
- 5.3.5
- 5.3.4
- 5.3.3
- 5.3.2
- 5.3.1
- 5.3.0
- 5.2.1
- 5.2.0
- 5.1.0
- 5.0.2
- 5.0.1
- 5.0.0
- 4.2.1
- 4.2.0
This package is auto-updated.
Last update: 2024-09-23 07:55:38 UTC
README
此包提供了一个断路器,可用于“[...] 检测故障并封装防止故障不断重复的逻辑,在维护期间、临时外部系统故障或意外系统困难时[...]” (wiki).
关于断路器模式如何工作的详细解释,可以在 Medium 和 Martin Fowler的博客 上找到
示例
<?php use Aedart\Circuits\Traits\CircuitBreakerManagerTrait; class WeatherService { use CircuitBreakerManagerTrait; public function forecast() { $circuitBreaker = $this->getCircuitBreakerManager() ->create('weather_service'); return $circuitBreaker->attempt(function() { // Perform 3rd party API call... not shown here }, function(){ // Service has failed and is unavailable, do something else... }); } }
文档
请阅读官方文档以获取更多信息。
仓库
单仓库位于 github.com/aedart/athenaeum
版本控制
此包遵循 语义版本控制 2.0.0
许可证
BSD-3-Clause,请阅读包含在此包中的LICENSE文件