Wrapping Up

If you’re building an app, you will eventually need a solution to execute asynchronous jobs. There are many tasks that become simplified when executing them asynchronously, such as delivering emails, syncing data to other systems, or building a data pipeline to process your data. Reach for a job system if a piece of code has a high chance of failure, could be slow due to external factors, or benefits from concurrency.

Elixir provides all of the building blocks you need to write highly parallel systems, so you may be tempted to build your own solution to async jobs. For example, you could use Task or GenServer to process jobs in an async manner. Unless you have a really good reason not to, use an off-the-shelf library that provides ...

Get From Ruby to Elixir now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.