-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
design proposalRequires a design document for discussionRequires a design document for discussionenhancementNew feature or requestNew feature or request
Description
When configured for injecting delays, the HTTP protocol proxy works like the following:
- Make a request upstream
- If it errors, return immediately
- If it does not error, sleep for the duration of the fault
- After that, copy the body to the client.
This approach has the advantage of allowing adjusting the delay to consider the duration of the upstream request. For example, if the delay defined in the fault injection is 500ms and the upstream takes 200ms, the proxy could then wait 300ms. Presently, this is not implemented but would be trivial.
On the other hand, it has the downside of stalling the connection upstream for the duration of the delay. This may have unwanted consequences, such as:
- Stealing resources from upstream, potentially causing it to behave differently than usual
- Causing upstream to abort the stalled connection with
HTTP 408, which would then be forwarded to the client.
Alternatively, the proxy could sleep before making the requests, but in this case, it would add the delay on top of the delay of the request
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
design proposalRequires a design document for discussionRequires a design document for discussionenhancementNew feature or requestNew feature or request