Global Timeouts
Global Timeouts set the global server timeouts for HTTP request and response streams.
You can set also set route-level timeouts.
Read Timeout
Read Timeout sets the maximum amount of time for a downstream client to complete a single HTTP request. The time starts when a request is begun and ends either when Pomerium has proxied the entire request body to the upstream service, or when Pomerium has begun sending a response back to the client.
This timeout is disabled if set to 0
. (This is not recommended, as a malicious client could consume significant resources by beginning many incomplete requests.)
How to configure
- Core
- Enterprise
- Kubernetes
Config file keys | Environment variables | Type | Default |
---|---|---|---|
timeout_read | TIMEOUT_READ | Go Duration string | 30s |
Examples
timeout_read: 30s
TIMEOUT_READ=30s
Set Global Timeouts in the Console:
Write Timeout
Write Timeout sets the maximum time for a single HTTP request/response pair to fully complete. This should be greater than the Read Timeout setting as this includes both the request and response time.
This timeout is disabled if set to 0
.
How to configure
- Core
- Enterprise
- Kubernetes
Config file keys | Environment variables | Type | Default |
---|---|---|---|
timeout_write | TIMEOUT_WRITE | Go Duration string | 0 (no timeout) |
Examples
timeout_write: 0
TIMEOUT_WRITE=0
Set Global Timeouts in the Console:
Idle Timeout
Idle Timeout sets the time at which an upstream or downstream connection will be terminated if there are no active requests/responses.
This timeout is disabled if set to 0
.
How to configure
- Core
- Enterprise
- Kubernetes
Config file keys | Environment variables | Type | Default |
---|---|---|---|
timeout_idle | TIMEOUT_IDLE | Go Duration string | 5m |
Examples
timeout_idle: 5m
TIMEOUT_IDLE=5m
Set Global Timeouts in the Console: