Deploy Redis Applications and Modules
Redis client applications deploy as native executables. Custom commands deploy as modules loaded for the lifetime of the Redis server process, with a restart required to replace them. Check the supported configurations and retain a compatible runtime with either artifact.
Client Applications
For a configured native target, run exaloop --target app package --bundle-runtime.
Keep the complete package together and provide Redis credentials and TLS
certificates separately. The runtime-package guide
covers host requirements and additional libraries.
Server Modules
The builder accepts --sdk, --mode debug|release, --numerics py|c, and
--stdlib /absolute/path/to/codon/stdlib. It uses the SDK alongside the script
by default; use --sdk to select a different SDK directory.
The compiled module requires matching Codon runtime libraries and valid dynamic-library search paths. Python is a build-time dependency only. Every Codon module in a Redis process must use the same runtime version. The SDK's static bridge is already linked into the module.
The module remains loaded for the lifetime of the server process. Replacing the file while Redis is using it can corrupt the process; a restart loads the new version.
Execution and Platform Limits
Handlers execute on Redis's command thread, so the duration of a handler affects other clients. Native modules also execute with the server's privileges rather than in a sandbox. Representative traffic and permission checks in staging help establish their operational impact; host requirements are listed in the compatibility reference.
Next Steps
- Review Redis connection options for TLS and authentication.
- Prepare a production deployment, including module replacement and rollback.