From 68912b765fad0663373ec2d7f0aa0b7c896bf8cc Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 6 Mar 2025 12:36:58 +0000 Subject: [PATCH 1/3] Rate limiting --- docs/networking.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/networking.md b/docs/networking.md index f7665c9..d553896 100644 --- a/docs/networking.md +++ b/docs/networking.md @@ -120,6 +120,19 @@ with httpx.timeout(3.0) as t: --- +## Rate limiting + +Network rate limiting can be applied using context blocks. + +```python +with httpx.rate_limit("25MB/s"): + ... +``` + +Supported data rates must be specified in bytes per second... `B/s`, `KB/s`, `MB/s`, `GB/s`, `TB/s`. + +--- + ## Sending HTTP requests Let's take a look at how we can work directly with a network backend to send an HTTP request, and recieve an HTTP response. From 4a5483a20277be5f01783c06124bebb70039dda4 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 6 Mar 2025 12:56:29 +0000 Subject: [PATCH 2/3] Include example with upload/download rates --- docs/networking.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/networking.md b/docs/networking.md index d553896..3fe2e10 100644 --- a/docs/networking.md +++ b/docs/networking.md @@ -129,6 +129,13 @@ with httpx.rate_limit("25MB/s"): ... ``` +Differing rate limits for upload and download speeds may be applied. + +```python +with httpx.rate_limit(upload="10MB/s", download="25MB/s"): + ... +``` + Supported data rates must be specified in bytes per second... `B/s`, `KB/s`, `MB/s`, `GB/s`, `TB/s`. --- From 7a6550ebd4efc000ed99da33d873bc507906a3ec Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 6 Mar 2025 13:07:29 +0000 Subject: [PATCH 3/3] Improve phrasing --- docs/networking.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/networking.md b/docs/networking.md index 3fe2e10..ec918aa 100644 --- a/docs/networking.md +++ b/docs/networking.md @@ -136,7 +136,7 @@ with httpx.rate_limit(upload="10MB/s", download="25MB/s"): ... ``` -Supported data rates must be specified in bytes per second... `B/s`, `KB/s`, `MB/s`, `GB/s`, `TB/s`. +Supported data rates must be specified in units of bytes per second... `B/s`, `KB/s`, `MB/s`, `GB/s`, `TB/s`. ---