Elixir进阶实践:构建并发与分布式系统

3星 · 超过75%的资源 需积分: 9 27 下载量 100 浏览量 更新于2024-07-17 收藏 4.57MB PDF 举报
"Elixir in Action, 2nd Edition" 是一本关于Elixir编程语言的实战指南,由Saša Juric撰写。这本书的第二版获得了众多业界专家和读者的高度评价,称赞其对Elixir的分布式计算能力、函数式编程理念以及实际应用提供了深入浅出的讲解。 本书分为13个章节,涵盖了Elixir语言的基础到高级概念: 1. **第一步骤**:介绍Elixir的初步知识,包括安装环境和编写第一个程序,帮助读者快速入门。 2. **构建块**:深入讨论Elixir的基本语法和数据类型,如原子、列表、元组等,以及模式匹配和管道操作。 3. **控制流**:介绍如何在Elixir中控制程序流程,如条件语句、循环和递归。 4. **数据抽象**:讲解Elixir中的模块、函数和宏,以及如何通过它们创建自定义数据结构和行为。 5. **并发原语**:介绍Elixir的轻量级进程(processes)和消息传递机制,这是Elixir并发编程的核心。 6. **通用服务器进程(Generic Server Processes)**:讲解GenServer的行为模式,它是Elixir并发处理和服务管理的标准库。 7. **构建并发系统**:探讨如何设计和实现高效、安全的并发应用程序。 8. **容错基础**:介绍Elixir中的故障恢复策略,如监督树和错误隔离。 9. **隔离错误效应**:详细阐述如何在系统中优雅地处理错误,保持系统的健壮性。 10. **超越GenServer**:探索更高级的并发模式和工具,如Agent、Supervisor、GenEvent等。 11. **与组件工作**:讨论Elixir与其他技术(如Phoenix框架)集成,以及构建可复用的组件。 12. **构建分布式系统**:介绍Elixir如何利用Erlang虚拟机(BEAM)实现分布式计算,包括节点间通信和分布式数据存储。 13. **运行系统**:讲述部署和监控Elixir应用程序的最佳实践,确保生产环境的稳定运行。 此书适合有经验的程序员学习,特别是那些想要了解Elixir语言和函数式编程思维方式的开发者。通过实例和实际项目,读者可以学习到如何利用Elixir的强大功能构建可扩展、容错和并发的系统。同时,书中还强调了Elixir在分布式计算领域的优势,使得它成为构建高可用性和高性能应用的理想选择。
2020-05-07 上传
Table of Contents 第⼀部分:基础 Introduction 基础集合Enum 模块 模式匹配 控制语句 函数管道操作符 模块(Module) Mix 魔符(Sigil) ⽂档模块 测试推导字符串 ⽇期和时间 ⾃定义Mix任务 IEx辅助函数 第⼆部分:⾼级 1 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 2.14 3.1 3.2 3.3 3.4 4.1 4.2 4.3 和Erlang互操作 错误处理 可执⾏⽂件 并发OTP并发 OTP Supervisors OTP 分布式 元编程 Umbrella Projects Specifications and types ⾏为GenStage 协议Nerves 第三部分:ECTO Basics Changesets 关联关系 查询第四部分:专题 Plug 嵌⼊的 Elixir(EEx) Erlang 项式存储(ETS) 2 4.4 4.5 5.1 5.2 5.3 5.4 5.5 5.6 Mnesia 数据库 调试第五部分:程序库 Guardian(基础) Poolboy Benchee Bypass Distillery(基础) StreamData 3 Introduction 绪⾔第⼀部分:基础 基础集合Enum 模块 模式匹配 控制语句 函数管道操作符 模块(Module) Mix 魔符(Sigil) ⽂档模块 测试推导字符串 ⽇期和时间 ⾃定义Mix任务 IEx辅助函数 第⼆部分:⾼级 和Erlang互操作 错误处理 可执⾏⽂件 并发OTP并发 OTP Supervisors 4 Introduction OTP 分布式 元编程 Umbrella Projects Specifications and types ⾏为GenStage 协议Nerves 第三部分:ECTO Basics Changesets 关联关系 查询 第四部分:专题 Plug 嵌⼊的 Elixir(EEx) Erlang 项式存储(ETS) Mnesia 数据库 调试 第五部分:程序库 Guardian(基础) Poolboy Benchee Bypass Distillery(基础) StreamData