summaryrefslogtreecommitdiff
path: root/vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst')
-rw-r--r--vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst22
1 files changed, 22 insertions, 0 deletions
diff --git a/vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst b/vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst
new file mode 100644
index 0000000..5a76941
--- /dev/null
+++ b/vendor/guzzle/guzzle/docs/plugins/backoff-plugin.rst
@@ -0,0 +1,22 @@
+====================
+Backoff retry plugin
+====================
+
+The ``Guzzle\Plugin\Backoff\BackoffPlugin`` automatically retries failed HTTP requests using custom backoff strategies:
+
+.. code-block:: php
+
+ use Guzzle\Http\Client;
+ use Guzzle\Plugin\Backoff\BackoffPlugin;
+
+ $client = new Client('http://www.test.com/');
+ // Use a static factory method to get a backoff plugin using the exponential backoff strategy
+ $backoffPlugin = BackoffPlugin::getExponentialBackoff();
+
+ // Add the backoff plugin to the client object
+ $client->addSubscriber($backoffPlugin);
+
+The BackoffPlugin's constructor accepts a ``Guzzle\Plugin\Backoff\BackoffStrategyInterface`` object that is used to
+determine when a retry should be issued and how long to delay between retries. The above code example shows how to
+attach a BackoffPlugin to a client that is pre-configured to retry failed 500 and 503 responses using truncated
+exponential backoff (emulating the behavior of Guzzle 2's ExponentialBackoffPlugin).