Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(http): allow http client configuration to vary by endpoint #2935

Merged
merged 1 commit into from
Apr 30, 2024

Conversation

olix0r
Copy link
Member

@olix0r olix0r commented Apr 30, 2024

Currently all HTTP client configuration is derived from the configuration loaded at startup.

We'd like to allow this configuration to vary by endpoint so that, for example, we can enable keepalives when communicating with other proxies. These keepalives allow load balancers to eagerly detect connections that are in a bad state (i.e. before attempting to write a request to that connection).

To setup this kind of per-endpoint configuration, this change modifies the HTTP client to extract its configuration from the per-endpoint target so that calling stacks can provide this configuration.

The inbound and outbound stacks continue to set these configurations based on process-wide defaults, but we now have obvious places where we can set these parameters based on discovery results.

There are no user-facing functional changes in this commit.

@olix0r olix0r requested a review from a team as a code owner April 30, 2024 00:58
Currently all HTTP client configuration is derived from the configuration loaded
at startup.

We'd like to allow this configuration to vary by endpoint so that, for example,
we can enable keepalives when communicating with other proxies. These keepalives
allow load balancers to eagerly detect connections that are in a bad state (i.e.
before attempting to write a request to that connection).

To setup this kind of per-endpoint configuration, this change modifies the HTTP
client to extract its configuration from the per-endpoint target so that calling
stacks can provide this configuration.

The inbound and outbound stacks continue to set these configurations based on
process-wide defaults, but we now have obvious places where we can set these
parameters based on discovery results.

There are no user-facing functional changes in this commit.
@olix0r olix0r force-pushed the ver/h2-keepalives-endpoint branch from c82d8b0 to 7f08fb5 Compare April 30, 2024 01:36
@olix0r olix0r merged commit b3abab1 into main Apr 30, 2024
18 checks passed
@olix0r olix0r deleted the ver/h2-keepalives-endpoint branch April 30, 2024 01:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant