U6: Valkey tuning#7
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the Valkey (Redis-compatible) service configuration in docker-compose.yml to run as an aggressive, cache-first instance tuned for heavy cache workloads per the U6 plan.
Changes:
- Increase Valkey memory limit to 1GB and switch eviction policy to
allkeys-lru. - Disable AOF and RDB snapshot scheduling, and tune TCP settings (backlog/keepalive).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - --tcp-keepalive | ||
| - "60" | ||
| volumes: | ||
| - bcproxyai-redis:/data |
There was a problem hiding this comment.
--save "" and --appendonly no stop new RDB/AOF writes, but the service still mounts a persistent volume at /data. If a dump.rdb already exists in that volume, Valkey can still load it on startup, which conflicts with the “no persistence” goal. Consider removing the named volume (or switching to tmpfs: /data) and ensuring /data is empty on deploy to make the cache truly ephemeral.
| - --tcp-backlog | ||
| - "2048" |
There was a problem hiding this comment.
--tcp-backlog 2048 may not take effect if the kernel net.core.somaxconn is lower (Valkey will cap the effective backlog). If you rely on 2048 for connection spikes, consider also setting an appropriate sysctl for the container/host so the backlog setting is actually honored.
Summary
Tune Valkey for cache-heavy usage per U6 plan: 1GB maxmemory, allkeys-lru, no RDB/AOF persistence, tcp-backlog 2048, tcp-keepalive 60.
Test plan