Back-Pressure

Get an overview of what back-pressure is and how we can avoid it by using data processing pipelines through the GenStage library in Elixir.

Execute data asynchronously

We have covered several approaches to execute data asynchronously. Although different in their own way, these approaches have one thing in common: we decide the amount of work that has to be done, and Elixir then processes the work to give us the result.

The limitations of processing data

This has some potential drawbacks. For example, we have a finite amount of memory and CPU power available. This means that our server may become overwhelmed by the amount of work it needs to do and become slow or unresponsive. We often rely on third-party API services, which have rate limiting in place and fixed quotas for the number of requests we can make. If we go over this quota, requests are blocked, and our application stops working as expected.

Get hands-on with 1200+ tech skills courses.