PHP client for shopify/toxiproxy
Installs: 1 446
Open Issues: 1
- guzzlehttp/guzzle: ^6.0
- php-coveralls/php-coveralls: ^2.0
- phpdocumentor/phpdocumentor: ^v2.9.0
- phpunit/phpunit: ^6.5.5
- react/socket: ^v0.8.2
- react/socket-client: ^v0.7.0
- squizlabs/php_codesniffer: ^3.2.2
This package is not auto-updated.
Last update: 2023-03-18 08:52:35 UTC
Toxiproxy makes it easy and trivial to test network conditions, for example low-bandwidth and high-latency situations.
toxiproxy-php-client includes everything needed to get started with configuring Toxiproxy upstream connection and listen endpoints.
toxiproxy-php-client is currently compatible with
Installing via Composer
The recommended way to install
toxiproxy-php-client is through Composer.
Once that is installed and you have added
ihsw/toxiproxy-php-client to your
composer.json configuration, you can require the autoloader and start using the library.
Here is an example for creating a proxy that limits a Redis connection to 1000KB/s.
<?php require("./vendor/autoload.php"); use Ihsw\Toxiproxy\Toxiproxy; use Ihsw\Toxiproxy\ToxicTypes; use Ihsw\Toxiproxy\StreamDirections; $toxiproxy = new Toxiproxy("http://toxiproxy:8474"); $proxy = $toxiproxy->create("ihsw_example_redis_master", "127.0.0.1:6379"); $toxic = $proxy->create(ToxicTypes::BANDWIDTH, StreamDirections::UPSTREAM, 1.0, [ "rate" => 1000 ]); printf( "Listening on IP %s and port %s on behalf of 6379, with a connection that's limited to 1000KB/s\n", $proxy->getListenIp(), $proxy->getListenPort() ); $toxiproxy->delete($proxy);
Additional examples can be found in the
examples directory for expected usage.