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:

FeatureDescription
Clean APIA clean, macro-free API that promotes a predictable and functional approach to task handling.
Tower IntegrationTasks are built on tower::Service, giving access to the rich ecosystem of Tower middleware and utilities.
Stream-Based SourcesAny type that implements Stream can act as a task source — queues, channels, or custom pipelines.
Runtime AgnosticWorks with both tokio and async-std, offering flexibility across async runtimes.
High ConcurrencySupports configurable workers, task queues, and thread pools for optimal performance.
ExtensibilityModular and flexible, allowing easy addition of new features or connectors tailored to your needs.
ScalabilityEfficiently handles growing workloads with a multithreaded processing model.
ReliabilityBuilt-in retry strategies and robust error handling ensure consistent task execution.
Integration ReadyOut-of-the-box support for Redis, PostgreSQL, and other common systems.
ObservabilityDetailed 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.