1.11.x Release Notes
This page summarizes notable changes in the 1.11 minor series. Patch-level releases are listed below.
1.11 focuses on higher throughput, production-friendly logging, and improved Redis connectivity under load. The foundation has been optimized substantially.
1.11.3
New
- Redis: In‑process account name cache (server.redis.account_local_cache) to reduce repeated lookups for frequently used users. Disabled by default.
- Redis: Client‑side command batching (server.redis.batching) to pipeline small commands and reduce round‑trips under load. Disabled by default.
- HTTP middlewares: Feature switches to enable/disable individual middlewares (server.middlewares), including logging, limit, recovery, trusted_proxies, request_decompression, response_compression, and metrics. Enabled by default unless explicitly set to false.
Documentation
- Server Configuration updated with defaults and YAML examples for the new Redis features.
- Full Configuration Example updated accordingly.
See also
- Configuration → Server Configuration → HTTP Middlewares: /docs/1.11/configuration/server-configuration#servermiddlewares
- Configuration → Server Configuration → Account Local Cache: /docs/1.11/configuration/server-configuration#serverredisaccount_local_cache
- Configuration → Server Configuration → Batching: /docs/1.11/configuration/server-configuration#serverredisbatching
- Full Configuration Example: /docs/1.11/configuration/full-example
Highlights
- New log level: notice
- Emits essential, high-signal events suited for production.
- Redis connection and timeout tuning
- Better pooling defaults and improved behavior under network hiccups; clear guidance for pool sizing.
- Core runtime optimizations
- Significantly reduced overhead in hot paths for higher request throughput.
Configuration changes (New in v1.11.0)
Logging
- server.log.level supports a new level: notice
- Intended for production to keep logs concise while preserving operational visibility.
Example:
server:
log:
level: notice
Redis
- Connection handling tuned for busy deployments.
- Time budget enforcement aligns with server.timeouts.redis_read and server.timeouts.redis_write.
- Guidance for pool tuning added to Server Configuration.
See:
- Configuration → Server Configuration → Redis → Connection and timeout tuning
- Configuration → Server Configuration → Timeouts
Performance
- Internal subsystems refactored to reduce allocations and contention in authentication flows.
- Improved connection reuse and reduced churn for Redis workloads.
Compatibility
- No breaking configuration changes compared to 1.10.
- The new notice level is additive and fully backward compatible.
Lua runtime loading
- The legacy dynamic_loader has been removed. Calls to dynamic_loader are now no-ops and emit a warning to the log if invoked. Use plain
require("<module>")in Lua scripts.
Upgrade notes
- Review your logging configuration and consider using notice in production.
- Revisit Redis pool_size and idle_pool_size if you previously tuned around connection churn.
- Validate timeouts for redis_read and redis_write against your network conditions.