Overview
Last edited 4 minutes ago.
On this page
apalis — Scalable background task processing in Rust, made simple and extensible.
What is apalis?
Apalis is a simple yet powerful Rust library for building reliable, scalable, and multithreaded background task and message processing systems.
Core Features
Some of the main apalis features include:
| Feature | Description |
|---|---|
| Clean API | A clean, macro-free API that promotes a predictable and functional approach to task handling. |
| Tower Integration | Tasks are built on tower::Service, giving access to the rich ecosystem of Tower middleware and utilities. |
| Stream-Based Sources | Any type that implements Stream can act as a task source — queues, channels, or custom pipelines. |
| Runtime Agnostic | Works with both tokio and async-std, offering flexibility across async runtimes. |
| High Concurrency | Supports configurable workers, task queues, and thread pools for optimal performance. |
| Extensibility | Modular and flexible, allowing easy addition of new features or connectors tailored to your needs. |
| Scalability | Efficiently handles growing workloads with a multithreaded processing model. |
| Reliability | Built-in retry strategies and robust error handling ensure consistent task execution. |
| Integration Ready | Out-of-the-box support for Redis, PostgreSQL, and other common systems. |
| Observability | Detailed logging, metrics, and tracing help you monitor and debug task workflows. |
How to Use These Docs
The documentation is organized to guide you from the basics to advanced topics, enabling you to build your apalis-powered applications step-by-step. However, feel free to explore topics in any order based on your needs.
For easy navigation, a table of contents is available on the right side of each page, helping you quickly jump to different sections.
Join our Community
If you have any questions or need assistance with apalis, you can connect with our community on Discord.