Phoenix Web Development

Phoenix Web Development Book in PDF, ePub and Kindle version is available to download in english. Read online anytime anywhere directly from your device. Click on the download button below to get a free pdf file of Phoenix Web Development book. This book definitely worth reading, it is an incredibly well-written.

Functional Web Development with Elixir, OTP, and Phoenix

Author : Lance Halvorsen
Publisher : Pragmatic Bookshelf
Page : 298 pages
File Size : 54,6 Mb
Release : 2018-01-25
Category : Computers
ISBN : 9781680505443

Get Book

Functional Web Development with Elixir, OTP, and Phoenix by Lance Halvorsen Pdf

Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web applications. For decades OTP has helped developers create incredibly robust, scalable applications with unparalleled uptime. Make the most of them as you build a stateful web app with Elixir, OTP, and Phoenix. Model domain entities without an ORM or a database. Manage server state and keep your code clean with OTP Behaviours. Layer on a Phoenix web interface without coupling it to the business logic. Open doors to powerful new techniques that will get you thinking about web development in fundamentally new ways. Elixir and OTP provide exceptional tools to build rock-solid back-end applications that scale. In this book, you'll build a web application in a radically different way, with a back end that holds application state. You'll use persistent Phoenix Channel connections instead of HTTP's request-response, and create the full application in distinct, decoupled layers. In Part 1, start by building the business logic as a separate application, without Phoenix. Model the application domain with Elixir functions and simple data structures. By keeping state in memory instead of a database, you can reduce latency and simplify your code. In Part 2, add in the GenServer Behaviour to make managing in-memory state a breeze. Create a supervision tree to boost fault tolerance while separating error handling from business logic. Phoenix is a modern web framework you can layer on top of business logic while keeping the two completely decoupled. In Part 3, you'll do exactly that as you build a web interface with Phoenix. Bring in the application from Part 2 as a dependency to a new Phoenix project. Then use ultra-scalable Phoenix Channels to establish persistent connections between the stateful server and a stateful front-end client. You're going to love this way of building web apps! What You Need: You'll need a computer that can run Elixir version 1.5 or higher and Phoenix 1.3 or higher. Some familiarity with Elixir and Phoenix is recommended.

Phoenix Web Development

Author : Mike Voloz,Brandon Richey
Publisher : Packt Publishing Ltd
Page : 398 pages
File Size : 51,7 Mb
Release : 2018-04-30
Category : Computers
ISBN : 9781787284777

Get Book

Phoenix Web Development by Mike Voloz,Brandon Richey Pdf

The Phoenix web development framework is an object-oriented application development tool written in Elixir. With Elixir and Phoenix, you build your application the right way, ready to scale and ready for the increasing demands of real-time web applications. If you have some knowledge of Elixir, have experience with web frameworks in other ...

Programming Phoenix

Author : Chris McCord,Bruce Tate,Jose Valim
Publisher : Pragmatic Bookshelf
Page : 398 pages
File Size : 43,8 Mb
Release : 2016-04-20
Category : Computers
ISBN : 9781680504361

Get Book

Programming Phoenix by Chris McCord,Bruce Tate,Jose Valim Pdf

Don't accept the compromise between fast and beautiful: you can have it all. Phoenix creator Chris McCord, Elixir creator Jose Valim, and award-winning author Bruce Tate walk you through building an application that's fast and reliable. At every step, you'll learn from the Phoenix creators not just what to do, but why. Packed with insider insights, this definitive guide will be your constant companion in your journey from Phoenix novice to expert, as you build the next generation of web applications. Phoenix is the long-awaited web framework based on Elixir, the highly concurrent language that combines a beautiful syntax with rich metaprogramming. The authors, who developed the earliest production Phoenix applications, will show you how to create code that's easier to write, test, understand, and maintain. The best way to learn Phoenix is to code, and you'll get to attack some interesting problems. Start working with controllers, views, and templates within the first few pages. Build an in-memory repository, and then back it with an Ecto database layer. Learn to use change sets and constraints that keep readers informed and your database integrity intact. Craft your own interactive application based on the channels API for the real-time, high-performance applications that this ecosystem made famous. Write your own authentication components called plugs, and even learn to use the OTP layer for monitored, reliable services. Organize your code with umbrella projects so you can keep your applications modular and easy to maintain. This is a book by developers and for developers, and we know how to help you ramp up quickly. Any book can tell you what to do. When you've finished this one, you'll also know why to do it. What You Need: To work through this book, you will need a computer capable of running Erlang 17 or better, Elixir 1.1, or better, Phoenix 1.0 or better, and Ecto 1.0 or better. A rudimentary knowledge of Elixir is also highly recommended.

Programming Phoenix LiveView

Author : Bruce A. Tate,Sophie DeBenedetto
Publisher : Pragmatic Bookshelf
Page : 370 pages
File Size : 54,9 Mb
Release : 2021-09-30
Category : Electronic
ISBN : 1680508210

Get Book

Programming Phoenix LiveView by Bruce A. Tate,Sophie DeBenedetto Pdf

The days of the traditional request-response web application are long gone, but you don't have to wade through oceans of JavaScript to build the interactive applications today's users crave. The innovative Phoenix LiveView library empowers you to build applications that are fast and highly interactive, without sacrificing reliability. This definitive guide to LiveView isn't a reference manual. Learn to think in LiveView. Write your code layer by layer, the way the experts do. Explore techniques with experienced teachers to get the best possible performance. Instead of settling for traditional manuals and tutorials, get insights that can only be learned from experience. Start with the Elixir language techniques that effortlessly marry your client templates and server-side handlers. Design your systems with the right layers in the right places so that your code is easier to understand, change, and support. Explore features like multi-part uploads and learn how to comprehensively test your live views. Roll into advanced techniques to tie your code to other services through the powerful publish-subscribe interface. LiveView brings the most important programming techniques from the popular Elm and JavaScript React frameworks to Elixir. You'll experience firsthand how to harness that power by working side by side with some of the first LiveView users. You will write your programs to change data on the server, and you'll see how LiveView efficiently detects those changes and reflects them on the web page. Start from scratch, use built-in generators, and craft reusable components. Your single-purpose reducers will transform server data that your renderers can turn into efficient client-side diffs. Don't settle for knowing how things work. To get the most out of LiveView, you need to know why they work that way. Co-authored by one of the most prolific authors and teachers in all of Elixir, this book is your perfect guide to one of the most important new frameworks of our generation. What You Need: Programming Phoenix LiveView uses Phoenix version 1.5, and any Elixir version compatible with it. You will also want PostgreSQL and JavaScript Node.

Real-Time Phoenix

Author : Stephen Bussey
Publisher : Pragmatic Bookshelf
Page : 405 pages
File Size : 52,8 Mb
Release : 2020-03-25
Category : Computers
ISBN : 9781680507751

Get Book

Real-Time Phoenix by Stephen Bussey Pdf

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 lifecycle 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 confidently deploy them. 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.

Programming Ecto

Author : Darin Wilson,Eric Meadows-Jonsson
Publisher : Pragmatic Bookshelf
Page : 330 pages
File Size : 46,9 Mb
Release : 2019-04-01
Category : Computers
ISBN : 9781680506938

Get Book

Programming Ecto by Darin Wilson,Eric Meadows-Jonsson Pdf

Languages may come and go, but the relational database endures. Learn how to use Ecto, the premier database library for Elixir, to connect your Elixir and Phoenix apps to databases. Get a firm handle on Ecto fundamentals with a module-by-module tour of the critical parts of Ecto. Then move on to more advanced topics and advice on best practices with a series of recipes that provide clear, step-by-step instructions on scenarios commonly encountered by app developers. Co-authored by the creator of Ecto, this title provides all the essentials you need to use Ecto effectively. Elixir and Phoenix are taking the application development world by storm, and Ecto, the database library that ships with Phoenix, is going right along with them. There are plenty of examples that show you the basics, but to use Ecto to its full potential, you need to learn the library from the ground up. This definitive guide starts with a tour of the core features of Ecto - repos, queries, schemas, changesets, transactions - gradually building your knowledge with tasks of ever-increasing complexity. Along the way, you'll be learning by doing - a sample application handles all the boilerplate so you can focus on getting Ecto into your fingers. Build on that core knowledge with a series of recipes featuring more advanced topics. Change your pooling strategy to maximize your database's efficiency. Use nested associations to handle complex table relationships. Add streams to handle large result sets with ease. Based on questions from Ecto users, these recipes cover the most common situations developers run into. Whether you're new to Ecto, or already have an app in production, this title will give you a deeper understanding of how Ecto works, and help make your database code cleaner and more efficient. What You Need: To follow along with the book, you should have Erlang/OTP 19+ and Elixir 1.4+ installed. The book will guide you through setting up a sample application that integrates Ecto.

Mastering Elixir

Author : André Albuquerque,Daniel Caixinha
Publisher : Packt Publishing Ltd
Page : 568 pages
File Size : 46,6 Mb
Release : 2018-07-30
Category : Computers
ISBN : 9781788472241

Get Book

Mastering Elixir by André Albuquerque,Daniel Caixinha Pdf

Leverage the power of Elixir programming language to solve practical problems associated with scalability, concurrency, fault tolerance, and high availability. Key Features Enhance your Elixir programming skills using its powerful tools and abstractions Discover how to develop a full-fledged file server Understand how to use Phoenix to create a web interface for your application. Book Description Running concurrent, fault-tolerant applications that scale is a very demanding responsibility. After learning the abstractions that Elixir gives us, developers are able to build such applications with inconceivable low effort. There is a big gap between playing around with Elixir and running it in production, serving live requests. This book will help you fll this gap by going into detail on several aspects of how Elixir works and showing concrete examples of how to apply the concepts learned to a fully fledged application. In this book, you will learn how to build a rock-solid application, beginning by using Mix to create a new project. Then you will learn how the use of Erlang's OTP, along with the Elixir abstractions that run on top of it (such as GenServer and GenStage), that allow you to build applications that are easy to parallelize and distribute. You will also master supervisors (and supervision trees), and comprehend how they are the basis for building fault-tolerant applications. Then you will use Phoenix to create a web interface for your application. Upon fnishing implementation, you will learn how to take your application to the cloud, using Kubernetes to automatically deploy, scale, and manage it. Last, but not least, you will keep your peace of mind by learning how to thoroughly test and then monitor your application. What you will learn Use Elixir tools, including IEx and Mix Find out how an Elixir project is structured and how to create umbrella applications Discover the power of supervision trees, the basis for fault-tolerance Create a Domain-Specifc Language (DSL) that abstracts complexity Create a blazing-fast web interface for your application with Phoenix Set up an automatic deployment process for the cloud Monitor your application and be warned if anything unexpected happens Who this book is for Mastering Elixir is for you if you have experience in Elixir programming and want to take it to the next level. This Elixir book shows you how to build, deploy, and maintain robust applications, allowing you to go from tinkering with Elixir on side projects to using it in a live environment. However, no prior knowledge of Elixir is required to enjoy the complex topics covered in the book.

Phoenix in Action

Author : Geoffrey Lessel
Publisher : Simon and Schuster
Page : 508 pages
File Size : 46,9 Mb
Release : 2019-04-26
Category : Computers
ISBN : 9781638356202

Get Book

Phoenix in Action by Geoffrey Lessel Pdf

Summary Phoenix is a modern web framework built for the Elixir programming language. Elegant, fault-tolerant, and performant, Phoenix is as easy to use as Rails and as rock-solid as Elixir's Erlang-based foundation. Phoenix in Action builds on your existing web dev skills, teaching you the unique benefits of Phoenix along with just enough Elixir to get the job done. Foreword by Sasa Juric, author of Elixir in Action, Second Edition. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Modern web applications need to be efficient to develop, lightning fast, and unfailingly reliable. Phoenix, a web framework for the Elixir programming language, delivers on all counts. Elegant and intuitive, Phoenix radically simplifies the dev process. Built for concurrency, Phoenix channels make short work of developing real-time applications. And as for reliability, Phoenix apps run on the battle-tested Erlang VM, so they're rock solid! About the Book Phoenix in Action is an example-based book that teaches you to build production-quality web apps. You'll handle business logic, database interactions, and app designs as you progressively create an online auction site. As you go, you'll build everything from the core components to the real-time user interactions where Phoenix really shines. What's inside Functional programming in a web environment An introduction to Elixir Database interactions with Ecto Real-time communication with channels About the Reader For web developers familiar with a framework like Rails or ASP.NET. No experience with Elixir or Phoenix required. About the Author Geoffrey Lessel is a seasoned web developer who speaks and blogs about Elixir and Phoenix. Table of Contents PART 1 - GETTING STARTED Ride the Phoenix Intro to Elixir A little Phoenix overview PART 2 - DIVING IN DEEP Phoenix is not your application Elixir application structure Bring in Phoenix Making changes with Ecto.Changeset Transforming data in your browser Plugs, assigns, and dealing with session data Associating records and accepting bids PART 3 - THOSE IMPORTANT EXTRAS Using Phoenix channels for real-time communication Building an API Testing in Elixir and Phoenix

The Little Elixir & OTP Guidebook

Author : Benjamin Tan Wei Hao
Publisher : Simon and Schuster
Page : 437 pages
File Size : 41,9 Mb
Release : 2016-09-25
Category : Computers
ISBN : 9781638353454

Get Book

The Little Elixir & OTP Guidebook by Benjamin Tan Wei Hao Pdf

Summary The Little Elixir & OTP Guidebook gets you started programming applications with Elixir and OTP. You begin with a quick overview of the Elixir language syntax, along with just enough functional programming to use it effectively. Then, you'll dive straight into OTP and learn how it helps you build scalable, fault-tolerant and distributed applications through several fun examples. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Elixir is an elegant programming language that combines the expressiveness of Ruby with the concurrency and fault-tolerance of Erlang. It makes full use of Erlang's BEAM VM and OTP library, so you get two decades' worth of maturity and reliability right out of the gate. Elixir's support for functional programming makes it perfect for modern event-driven applications. About the Book The Little Elixir & OTP Guidebook gets you started writing applications with Elixir and OTP. You'll begin with the immediately comfortable Elixir language syntax, along with just enough functional programming to use it effectively. Then, you'll dive straight into several lighthearted examples that teach you to take advantage of the incredible functionality built into the OTP library. What's Inside Covers Elixir 1.2 and 1.3 Introduction to functional concurrency with actors Experience the awesome power of Erlang and OTP About the Reader Written for readers comfortable with a standard programming language like Ruby, Java, or Python. FP experience is helpful but not required. About the Author Benjamin Tan Wei Hao is a software engineer at Pivotal Labs, Singapore. He is also an author, a speaker, and an early adopter of Elixir. Table of Contents GETTING STARTED WITH ELIXIR AND OTP Introduction A whirlwind tour Processes 101 Writing server applications with GenServer FAULT TOLERANCE, SUPERVISION, AND DISTRIBUTION Concurrent error-handling and fault tolerance with links, monitors, and processes Fault tolerance with Supervisors Completing the worker-pool application Distribution and load balancing Distribution and fault tolerance Dialyzer and type specifications Property-based and concurrency testing

Elixir in Action

Author : Sasa Juric
Publisher : Simon and Schuster
Page : 652 pages
File Size : 50,8 Mb
Release : 2019-01-03
Category : Computers
ISBN : 9781638351658

Get Book

Elixir in Action by Sasa Juric Pdf

Summary Revised and updated for Elixir 1.7, Elixir in Action, Second Edition teaches you how to apply Elixir to practical problems associated with scalability, fault tolerance, and high availability. Along the way, you'll develop an appreciation for, and considerable skill in, a functional and concurrent style of programming. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology When you're building mission-critical software, fault tolerance matters. The Elixir programming language delivers fast, reliable applications, whether you're building a large-scale distributed system, a set of backend services, or a simple web app. And Elixir's elegant syntax and functional programming mindset make your software easy to write, read, and maintain. About the Book Elixir in Action, Second Edition teaches you how to build production-quality distributed applications using the Elixir programming language. Author Saša Jurić introduces this powerful language using examples that highlight the benefits of Elixir's functional and concurrent programming. You'll discover how the OTP framework can radically reduce tedious low-level coding tasks. You'll also explore practical approaches to concurrency as you learn to distribute a production system over multiple machines. What's inside Updated for Elixir 1.7 Functional and concurrent programming Introduction to distributed system design Creating deployable releases About the Reader You'll need intermediate skills with client/server applications and a language like Java, C#, or Ruby. No previous experience with Elixir required. About the Author Saša Jurić is a developer with extensive experience using Elixir and Erlang in complex server-side systems. Table of Contents First steps Building blocks Control flow Data abstractions Concurrency primitives Generic server processes Building a concurrent system Fault-tolerance basics Isolating error effects Beyond GenServer Working with components Building a distributed system Running the system

Build Your Own Web Framework in Elixir

Author : ADITYA. IYENGAR
Publisher : Unknown
Page : 0 pages
File Size : 49,9 Mb
Release : 2022-05
Category : Elixir (Computer program language)
ISBN : 1801812543

Get Book

Build Your Own Web Framework in Elixir by ADITYA. IYENGAR Pdf

The Phoenix Project

Author : Gene Kim,Kevin Behr,George Spafford
Publisher : IT Revolution
Page : 607 pages
File Size : 40,9 Mb
Release : 2018-02-06
Category : Business & Economics
ISBN : 9781942788300

Get Book

The Phoenix Project by Gene Kim,Kevin Behr,George Spafford Pdf

***Over a half-million sold! And available now, the Wall Street Journal Bestselling sequel The Unicorn Project*** “Every person involved in a failed IT project should be forced to read this book.”—TIM O'REILLY, Founder & CEO of O'Reilly Media “The Phoenix Project is a must read for business and IT executives who are struggling with the growing complexity of IT.”—JIM WHITEHURST, President and CEO, Red Hat, Inc. Five years after this sleeper hit took on the world of IT and flipped it on it's head, the 5th Anniversary Edition of The Phoenix Project continues to guide IT in the DevOps revolution. In this newly updated and expanded edition of the bestselling The Phoenix Project, co-author Gene Kim includes a new afterword and a deeper delve into the Three Ways as described in The DevOps Handbook. Bill, an IT manager at Parts Unlimited, has been tasked with taking on a project critical to the future of the business, code named Phoenix Project. But the project is massively over budget and behind schedule. The CEO demands Bill must fix the mess in ninety days or else Bill's entire department will be outsourced. With the help of a prospective board member and his mysterious philosophy of The Three Ways, Bill starts to see that IT work has more in common with a manufacturing plant work than he ever imagined. With the clock ticking, Bill must organize work flow streamline interdepartmental communications, and effectively serve the other business functions at Parts Unlimited. In a fast-paced and entertaining style, three luminaries of the DevOps movement deliver a story that anyone who works in IT will recognize. Readers will not only learn how to improve their own IT organizations, they'll never view IT the same way again. “This book is a gripping read that captures brilliantly the dilemmas that face companies which depend on IT, and offers real-world solutions.”—JEZ HUMBLE, Co-author of Continuous Delivery, Lean Enterprise, Accelerate, and The DevOps Handbook

Build Your Own Web Framework in Elixir

Author : Aditya Iyengar,Eric Sullivan
Publisher : Packt Publishing Ltd
Page : 275 pages
File Size : 41,5 Mb
Release : 2023-06-16
Category : Computers
ISBN : 9781801815901

Get Book

Build Your Own Web Framework in Elixir by Aditya Iyengar,Eric Sullivan Pdf

Discover the secrets of building high-performing and scalable web applications with clean code using Elixir's metaprogramming Purchase of the print or Kindle book includes a free PDF eBook Key Features Explore the various web servers available to build robust web applications Leverage Elixir's powerful Plug module to build a request-response pipeline Explore advanced techniques of Elixir to create Domain-Specific languages and build scalable, maintainable web products Book Description Elixir's functional nature and metaprogramming capabilities make it an ideal language for building web frameworks, with Phoenix being the most ubiquitous framework in the Elixir ecosystem and a popular choice for companies seeking scalable web-based products. With an ever-increasing demand for Elixir engineers, developers can accelerate their careers by learning Elixir and the Phoenix web framework. With Build Your Own Web Framework in Elixir, you'll start by exploring the fundamental concepts of web development using Elixir. You'll learn how to build a robust web server and create a router to direct incoming requests to the correct controller. Then, you'll learn to dispatch requests to controllers to respond with clean, semantic HTML, and explore the power of Domain-Specific Languages (DSL) and metaprogramming in Elixir. You'll develop a deep understanding of Elixir's unique syntax and semantics, allowing you to optimize your code for performance and maintainability. Finally, you'll discover how to effectively test each component of your application for accuracy and performance. By the end of this book, you'll have a thorough understanding of how Elixir components are implemented within Phoenix, and how to leverage its powerful features to build robust web applications. What you will learn Get a comprehensive understanding of the Phoenix framework built on Elixir Use metaprogramming to optimize your Elixir code and create high-performance web applications Explore web development fundamentals including the principles of HTTP and HTML Employ Elixir's templating engine to dispatch requests to a controller and respond with dynamically generated HTML Improve the scalability and responsiveness of your web server by using OTP constructs Streamline your routing logic using error handling Who this book is for This book is for web developers seeking to deepen their understanding of Elixir's role in the Phoenix framework. Basic familiarity with Elixir is a must.

Adopting Elixir

Author : Ben Marx,Jose Valim,Bruce Tate
Publisher : Pragmatic Bookshelf
Page : 334 pages
File Size : 55,5 Mb
Release : 2018-03-14
Category : Computers
ISBN : 9781680505849

Get Book

Adopting Elixir by Ben Marx,Jose Valim,Bruce Tate Pdf

Adoption is more than programming. Elixir is an exciting new language, but to successfully get your application from start to finish, you're going to need to know more than just the language. The case studies and strategies in this book will get you there. Learn the best practices for the whole life of your application, from design and team-building, to managing stakeholders, to deployment and monitoring. Go beyond the syntax and the tools to learn the techniques you need to develop your Elixir application from concept to production. Learn real-life strategies from the people who built Elixir and use it successfully at scale. See how Ben Marx and Bleacher Report maintain one of the highest-traffic Elixir applications by selling the concept to management and delivering on that promise. Find out how Bruce Tate and icanmakeitbetter hire and train Elixir engineers, and the techniques they've employed to design and ensure code consistency since Elixir's early days. Explore customer challenges in deploying and monitoring distributed applications with Elixir creator Jose Valim and Plataformatec. Make a business case and build a team before you finish your first prototype. Once you're in development, form strategies for organizing your code and learning the constraints of the runtime and ecosystem. Convince stakeholders, both business and technical, about the value they can expect. Prepare to make the critical early decisions that will shape your application for years to come. Manage your deployment with all of the knobs and gauges that good DevOps teams demand. Decide between the many options available for deployment, and how to best prepare yourself for the challenges of running a production application. This book picks up where most Elixir books leave off. It won't teach you to program Elixir, or any of its tools. Instead, it guides you through the broader landscape and shows you a holistic approach to adopting the language. What You Need: This book works with any version of Elixir.

Concurrent Data Processing in Elixir

Author : Svilen Gospodinov
Publisher : Pragmatic Bookshelf
Page : 221 pages
File Size : 47,6 Mb
Release : 2021-07-25
Category : Computers
ISBN : 9781680508963

Get Book

Concurrent Data Processing in Elixir by Svilen Gospodinov Pdf

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. What You Need: You'll need Elixir 1.9+ and Erlang/OTP 22+ installed on a Mac OS X, Linux, or Windows machine.