Engineering Elixir Applications: Navigate Each Stage of Software Delivery with Confidence (工程化 Elixir 應用:自信掌握軟體交付的每個階段)
Fairholm, Ellie, D'Lacoste, Josep Giralt
- 出版商: Pragmatic Bookshelf
- 出版日期: 2025-01-21
- 售價: $2,530
- 貴賓價: 9.5 折 $2,404
- 語言: 英文
- 頁數: 375
- 裝訂: Quality Paper - also called trade paper
- ISBN: 9798888650677
- ISBN-13: 9798888650677
-
相關分類:
Functional-programming
海外代購書籍(需單獨結帳)
相關主題
商品描述
The days of separate dev and ops teams are over - knowledge silos and the "throw it over the fence" culture they create are the enemy of progress. As an engineer or developer, you need to confidently own each stage of the software delivery process. This book introduces a new paradigm, BEAMOps, that helps you build, test, deploy, and debug BEAM applications. Create effective development and deployment strategies; leverage continuous improvement pipelines; and ensure environment integrity. Combine operational orchestrators such as Docker Swarm with the distribution, fault tolerance, and scalability of the BEAM, to create robust and reliable applications.
BEAMOps starts by building a solid foundation for your project. On the infrastructure side, see how to use Terraform before you even start coding to automate your deployment and operations. On the project management side, we show you how to use issues and milestones to simplify tracking; you'll use this foundation as you go through the book, implementing each of the steps required to deploy a scalable Elixir application.
Now that you have a foundation, you can start building. Create a Phoenix LiveView application and explore mix releases. Make your deployments reliable with Docker. Continuously improve your codebase by implementing an efficient continuous deployment/integration pipeline with GitHub Actions. Scale the Phoenix LiveView application and operate a distributed BEAM system in production using AWS EC2 nodes, AWS load balancers, and a remote Docker swarm. Recognize which application metrics should be collected and monitored, and set alerts when certain thresholds are met to ensure that your application auto-scales. Ship less code more often, and ensure it works!
The pragmatic BEAMOps approach that we teach in this book - an extension of the well-known DevOps paradigm - will help you become a multidisciplinary developer who is empowered to own each stage of the software delivery process. After reading this book, you'll understand how to apply the BEAMOps principles in your daily work, creating reliable, scalable, and easy to understand applications in a cooperative team environment.
What You Need:
商品描述(中文翻譯)
分開的開發和運營團隊的時代已經結束——知識孤島和「把它扔過去」的文化是進步的敵人。作為一名工程師或開發者,您需要自信地掌握軟體交付過程的每個階段。本書介紹了一種新的範式,BEAMOps,幫助您構建、測試、部署和調試 BEAM 應用程式。創建有效的開發和部署策略;利用持續改進管道;並確保環境的完整性。將 Docker Swarm 等運營協調器與 BEAM 的分佈性、容錯性和可擴展性相結合,以創建穩健且可靠的應用程式。
BEAMOps 從為您的專案建立堅實的基礎開始。在基礎設施方面,了解如何在開始編碼之前使用 Terraform 來自動化您的部署和運營。在專案管理方面,我們將向您展示如何使用問題和里程碑來簡化追蹤;您將在閱讀本書的過程中使用這一基礎,實施部署可擴展 Elixir 應用程式所需的每個步驟。
現在您已經有了基礎,可以開始構建了。創建一個 Phoenix LiveView 應用程式並探索 mix releases。使用 Docker 使您的部署可靠。通過實施高效的持續部署/集成管道,利用 GitHub Actions 持續改進您的程式碼庫。擴展 Phoenix LiveView 應用程式,並使用 AWS EC2 節點、AWS 負載均衡器和遠端 Docker swarm 在生產環境中運行分佈式 BEAM 系統。識別應收集和監控的應用程式指標,並在達到某些閾值時設置警報,以確保您的應用程式自動擴展。更頻繁地發佈更少的程式碼,並確保其正常運作!
我們在本書中教授的務實 BEAMOps 方法——這是知名 DevOps 範式的延伸——將幫助您成為一名多學科的開發者,能夠掌握軟體交付過程的每個階段。閱讀完本書後,您將了解如何在日常工作中應用 BEAMOps 原則,創建可靠、可擴展且易於理解的應用程式,並在合作的團隊環境中工作。
您需要的工具:
- Elixir 1.16.0(與 Erlang/OTP 26 編譯)
- Phoenix framework 1.7.0
- Erlang 26.2.1
- Terraform v1.7.1
- Docker v20.10.22
- Packer v1.9.0
- Docker Compose v2.21.0
- SOPS 3.8.1
- Age 1.1.1
- 一個 AWS 帳戶
- AWS CLI v2.15.15
- 一個 GitHub 帳戶
- GitHub CLI v2.42.1
- jq v1.7