-   [](https://platform.exaloop.io/)
-   Databases
-   [Redis](https://platform.exaloop.io/db/redis/)
-   Deployment

# 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](https://platform.exaloop.io/db/reference/#compatibility) 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](https://platform.exaloop.io/start/distribution/#runtime-only-packages) 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.

Restart Redis when replacing a 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](https://platform.exaloop.io/db/reference/#compatibility).

## Next Steps

-   [Review Redis connection options](https://platform.exaloop.io/db/reference/#redis) for TLS and authentication.
-   [Prepare a production deployment](https://platform.exaloop.io/production/), including module replacement and rollback.

Source: https://platform.exaloop.io/db/redis/deployment/
