Designing for Scalability with Erlang/OTP review

Erlang/OTP is an open source cluster system, and maybe one of the fastest and cheapest ways to build reliable clusters of computers. With Erlang/OTP you get a set of libraries that run across many computers having the possibility of scaling horizontally and failing over when a node goes down.

All this power and flexibility takes time to bring under control and it is where I find this kind of practical books helpful. It looks ‘Designing for Scalability with Erlang/OTP’ is the continuation of ‘Erlang Programming’, co-authored by one of the authors too.

To this day, there are several books related to the programming language Erlang, and the Open Telecom Platform (OTP) owns some good stuff too. While those books are a good reference to master the language, I miss a good and solid reference to design robust applications with Erlang/OTP (language + platform). Designing for scalability in Erlang/OTP is fundamentally different of designing with another languages and platforms such as .NET or J2EE. I think this book may fill this gap.

For this book, I am reviewing the early release version. My copy contains the following 8 chapters: ‘1. Introducing Erlang’, ‘2. Behaviours’, ‘3. Generic Servers’, ‘4. Controlling OTP behaviours’, ‘5. Finite State Machines’, ‘6. Event Handlers’, ‘7. Supervisors’ and ‘8. Applications’.

But the chapter 1, one introduction to the language where the authors introduce the mechanisms and concepts used by Erlang (message passing, let it crash, links, monitors, hot upgrades, etc), the rest of the chapters are related to behaviours or ‘Erlang/OTP design patterns’ in the different levels. The book cover the mentioned behaviours in detail though, together with clear pictures adding context.

Personally, I find useful the style of writing of Francesco and Steve. It distills simplicity and experience. They get to introduce more and more complex topics along the chapters, together with the right Erlang/OTP parts to handle them. I found interesting the approach describing the main topic in each chapter and, at the same time, the exploration of the most usual issues behind of them.

In summary, I think ‘Designing for Scalability with Erlang/OTP’ is a good material. The current chapters do a good job explaining the basics of the language and behaviours.

On the other hand, I would love to see some good real use cases/architectures for coming chapters in detail. I am looking forward to read the final book.

I found this book available here:

1 thought on “Designing for Scalability with Erlang/OTP review

Leave a comment