Pages: 326 Published: March 2020 ISBN: 9781680507195
In Print
Real-Time Phoenix
Build Highly Scalable Systems with Channels
by Stephen Bussey
Give users the real-time experience they expect, by using Elixir and
Phoenix Channels to build applications that instantly react to changes
and reflect the application’s true state. Learn how Elixir and Phoenix
make it easy and enjoyable to create real-time applications that scale
to a large number of users. Apply system design and development best
practices to create applications that are easy to maintain. Gain
confidence by learning how to break your applications before your users
do. Deploy applications with minimized resource use and maximized
performance.
Real-time applications come with real challenges—persistent
connections, multi-server deployment, and strict performance
requirements are just a few. Don’t try to solve these challenges by
yourself—use a framework that handles them for you. Elixir and Phoenix
Channels provide a solid foundation on which to build stable and
scalable real-time applications. Build applications that thrive for
years to come with the best practices found in this book.
Understand the magic of real-time communication by inspecting the
WebSocket protocol in action. Avoid performance pitfalls early in the
development life cycle with a catalog of common problems and their
solutions. Leverage GenStage to build a data pipeline that improves
scalability. Break your application before your users do and deploy with
confidence. Build a real-world project using solid application design
and testing practices that help make future changes a breeze. Create
distributed apps that can scale to many users with tools like Phoenix
Tracker. Deploy and monitor your application with confidence and reduce
outages.
Deliver an exceptional real-time experience to your users, with easy
maintenance, reduced operational costs, and maximized performance, using
Elixir and Phoenix Channels.
What You Need
You’ll need Elixir 1.9+ and Erlang/OTP 22+ installed on a Mac OS X,
Linux, or Windows machine.
Production is complete. Now it’s on to layout and the printer.
2020/01/25
B8.0
Content-complete and heading to copy edit and indexing.
2020/01/09
B7.0
*We added two new chapters: Chapter 13, Hands-On with Phoenix LiveView, and Chapter 14, Single-Page Apps With React. The beta book is now complete.
*Addressed errata.
Steve Bussey is a software architect at SalesLoft focused on
delivering the best experience possible for sales people and also his
fellow engineers. He has written and led development on real-time Elixir
applications that power critical features of business software. He is
passionate about sharing Elixir due to the positive impact it has had on
how he designs and writes applications.