Skip to content

Commit d9bd064

Browse files
committed
docs(readme): document inflight limits and backend-isolated timeout pools
1 parent 1656210 commit d9bd064

1 file changed

Lines changed: 13 additions & 0 deletions

File tree

README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,18 @@ Variáveis:
156156
* `BACKEND_TIMEOUT_SECONDS` (default: `8`)
157157
* `PUBLICATION_AFFILIATIONS_TIMEOUT_SECONDS` (default: `4`)
158158
* `PUBLICATION_AFFILIATIONS_TIMEOUT_POOL_SIZE` (default: `8`)
159+
* `PUBLICATION_AFFILIATIONS_MAX_INFLIGHT` (default: valor de `PUBLICATION_AFFILIATIONS_TIMEOUT_POOL_SIZE`)
159160
* `USAGE_REPORT_TIMEOUT_SECONDS` (default: `4`)
160161
* `USAGE_YEARLY_TIMEOUT_SECONDS` (default: usa valor de `USAGE_REPORT_TIMEOUT_SECONDS`)
162+
* `USAGE_TIMEOUT_POOL_SIZE` (default: `8`)
163+
* `USAGE_TIMEOUT_MAX_INFLIGHT` (default: valor de `USAGE_TIMEOUT_POOL_SIZE`)
164+
165+
Detalhes de comportamento:
166+
167+
* Endpoints de usage usam fallback de período por sessão (`range_start`/`range_end`) quando os parâmetros não são enviados.
168+
* Os pools são isolados por backend (`usage` e `publication`) para evitar contenção cruzada.
169+
* O limite de inflight aplica backpressure: quando saturado, retorna fallback sem disparar nova chamada de backend.
170+
* Em timeout, a requisição em background recebe `cancel()` (best effort), mantendo o retorno rápido ao usuário.
161171

162172
### 4. Circuit breaker para Usage API
163173

@@ -182,8 +192,11 @@ PREWARM_DELAY_SECONDS=2
182192
BACKEND_TIMEOUT_SECONDS=8
183193
PUBLICATION_AFFILIATIONS_TIMEOUT_SECONDS=4
184194
PUBLICATION_AFFILIATIONS_TIMEOUT_POOL_SIZE=8
195+
PUBLICATION_AFFILIATIONS_MAX_INFLIGHT=8
185196
USAGE_REPORT_TIMEOUT_SECONDS=4
186197
USAGE_YEARLY_TIMEOUT_SECONDS=4
198+
USAGE_TIMEOUT_POOL_SIZE=8
199+
USAGE_TIMEOUT_MAX_INFLIGHT=8
187200

188201
USAGE_CIRCUIT_BREAKER_HOST=usage.apis.scielo.org
189202
USAGE_CIRCUIT_BREAKER_FAILURE_THRESHOLD=3

0 commit comments

Comments
 (0)