Introduction to the Boundary Layer

An overview of the boundary layer and how we'll be using it alongside OTP.

Boundaries are the “B” for “big” in the sentence “Do fun things with big, loud worker-bees.” We’ve handled the first half of that sentence, as we built and tested the functional core that serves to isolate as much code as possible from processes. Remember, many projects will not need any layers beyond these three.

The rest of this course deals with “big, loud worker-bees,” the outer layers. These layers form the heart of concurrency in Elixir systems with the following:

  • Process machinery

  • Message passing

  • Recursion

The boundary cleanly executes core code in a process and wraps it in a generic API. The lifecycle layer provides tools to start and stop the boundary layer, even in a larger project. Workers divide work for performance, isolation, or reliability. We can see all of these layers in the following figure:

Get hands-on with 1200+ tech skills courses.