PragmaticBookshelf

PragmaticBookshelf

Forum Sponsor

Svilen Gospodinov

edited by Jacquelyn Carter @jkcarter

Learn different ways of writing concurrent code in Elixir and increase your application’s performance, without sacrificing scalability or fault-tolerance. Most projects benefit from running background tasks and processing data concurrently, but the world of OTP and various libraries can be challenging. Which Supervisor and what strategy to use? What about GenServer? Maybe you need back-pressure, but is GenStage, Flow, or Broadway a better choice? You will learn everything you need to know to answer these questions, start building highly concurrent applications in no time, and write code that’s not only fast, but also resilient to errors and easy to scale.

Whether you are building a high-frequency stock trading application or a consumer web app, you need to know how to leverage concurrency to build applications that are fast and efficient. Elixir and the OTP offer a range of powerful tools, and this guide will show you how to choose the best tool for each job, and use it effectively to quickly start building highly concurrent applications.

Learn about Tasks, supervision trees, and the different types of Supervisors available to you. Understand why processes and process linking are the building blocks of concurrency in Elixir. Get comfortable with the OTP and use the GenServer behaviour to maintain process state for long-running jobs. Easily scale the number of running processes using the Registry. Handle large volumes of data and traffic spikes with GenStage, using back-pressure to your advantage. Create your first multi-stage data processing pipeline using producer, consumer, and producer-consumer stages. Process large collections with Flow, using MapReduce and more in parallel. Thanks to Broadway, you will see how easy it is to integrate with popular message broker systems, or even existing GenStage producers.

Start building the high-performance and fault-tolerant applications Elixir is famous for today.


Don’t forget you can get 35% off with your Devtalk discount! Just use the coupon code “devtalk.com" at checkout :+1:


Posted via Devtalk (see this thread for details).

First 9 of 9 Posts Switch mode

quaint

quaint

Great news!
Does anyone know why mentioned coupon code is reported as invalid?

stefanluptak

stefanluptak

Same thing is happening to me. Hopefully, it’ll be fixed soon, so we can read the beta version of this book. :slight_smile:

kodepett

kodepett

Had the same challenge, waiting patiently for a valid code.

herminiotorres

herminiotorres

by the way, the discount coupon is valid right now.

AstonJ

AstonJ

As mentioned by @herminiotorres this should now be fixed :003:

raymondsiu

raymondsiu

Is the book still in Beta as the website mentions?

AstonJ

AstonJ

Yes… it’s one of the things many of us love about PragProg books - we get them hot off the press so the content is fresh and current and we get updates as the book progresses - so you could buy it now and you will receive updates right through until its finished for print (and usually some time after too!) :003:

kpanic

kpanic

Hello, someone bought the beta book? care to share your impressions about this book?
Looks interesting

stevensonmt

stevensonmt

I just finished this book. It was fantastic. I won’t claim to have a thorough grasp of the subject matter because of my lack of experience with real world applications where the topics covered would be used. That said, I found the pacing and style to be perfect for me. The organization of concepts building one to the next was very nicely done. I am excited to find some projects where I can put these concepts to use. Highly recommend.

— All posts loaded —

Where Next? Top

Trending in Books Top

akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New

We're in Beta

About us Mission Statement