docs(devops): document valkey-backed extraction throttling

This commit is contained in:
root 2026-03-31 08:09:24 +00:00
parent 81951b173a
commit 2cf557a2c8
2 changed files with 32 additions and 0 deletions

View File

@ -9,6 +9,15 @@
The Azure VM deployment is **partially successful**.
### 2026-03-31 follow-up
The VM moved forward after the original snapshot:
- `prometheus`, `node-exporter`, `cadvisor`, and `valkey` are now running
- `admin-web` and `tracker-web` are healthy again
- `extraction-service` product rate limiting now uses Valkey-backed shared counters
- live verification confirmed a request for `productId=valkey-check-2` created the key `extraction:product-rate-limit:29582406:valkey-check-2` in Valkey with value `1`
### What is working
- all platform and product **backend services** are running and healthy

View File

@ -177,6 +177,27 @@ Notes:
- these services are intended to stay internal-only on the VM
- `prometheus` is provisioned for Grafana automatically through the Grafana datasource directory
- neither `prometheus` nor `valkey` needs a raw public port exposure for normal operation
- `extraction-service` now uses Valkey for shared per-product rate limiting when `PRODUCT_RATE_LIMIT_STORE=valkey`
- `extraction-service` falls back to its in-memory limiter only if Valkey is unavailable at runtime
### Shared limiter env
`extraction-service` can be pointed at Valkey explicitly:
```bash
PRODUCT_RATE_LIMIT_STORE=valkey
VALKEY_URL=redis://valkey:6379
```
Live verification on the VM:
```bash
docker exec learning_ai_common_plat-extraction-service-1 \
wget -qO- 'http://127.0.0.1:4005/api/extract/rate-limits/product?productId=<product-id>'
docker exec learning_ai_common_plat-valkey-1 \
valkey-cli KEYS 'extraction:product-rate-limit:*'
```
## Environment Variables
@ -189,6 +210,8 @@ All optional — defaults work for most setups:
| `GITEA_ADMIN` | `bytelyst-admin` | Gitea admin username |
| `GITEA_PASS` | `ByteLyst2026!` | Gitea admin password |
| `OLLAMA_MODEL` | `llama3.2:3b` | Default LLM model to pull |
| `PRODUCT_RATE_LIMIT_STORE` | `valkey` in compose | Shared product throttling backend for `extraction-service` |
| `VALKEY_URL` | `redis://valkey:6379` | Internal Valkey connection string for shared counters |
| `SKIP_CLONE` | `0` | Set `1` to skip cloning (re-runs) |
| `SKIP_BUILD` | `0` | Set `1` to skip package build+publish (re-runs) |