1. Go to this page and download the library: Download eljam/circuit-breaker library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
eljam / circuit-breaker example snippets
use Doctrine\Common\Cache\FilesystemCache;
use Eljam\CircuitBreaker\Breaker;
use Eljam\CircuitBreaker\Event\CircuitEvents;
use Symfony\Component\EventDispatcher\Event;
_api', ['ignore_exceptions' => true], $fileCache);
$breaker->addListener(CircuitEvents::SUCCESS, function (Event $event) {
$circuit = $event->getCircuit();
echo "Success:".$circuit->getFailures()."\n";
});
$breaker->addListener(CircuitEvents::FAILURE, function (Event $event) {
$circuit = $event->getCircuit();
echo "Increment failure:".$circuit->getFailures()."\n";
});
$breaker->addListener(CircuitEvents::OPEN, function (Event $event) {
$circuit = $event->getCircuit();
echo sprintf("circuit %s is open \n", $circuit->getName());
});
$breaker->addListener(CircuitEvents::CLOSED, function (Event $event) {
$circuit = $event->getCircuit();
echo sprintf("circuit %s is closed \n", $circuit->getName());
});
$breaker->addListener(CircuitEvents::HALF_OPEN, function (Event $event) {
$circuit = $event->getCircuit();
echo sprintf("circuit %s is half-open \n", $circuit->getName());
});
$result = $breaker->protect(function () {
throw new \Exception("An error as occured");
// return 'ok';
});
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.