沃新书屋 - Akka应用模式:分布式应用程序设计实践指南
本书资料更新时间:2025-05-10 04:21:37

Akka应用模式:分布式应用程序设计实践指南

Akka应用模式:分布式应用程序设计实践指南精美图片

Akka应用模式:分布式应用程序设计实践指南书籍详细信息


内容简介:

对于想要学习Akka的Java 和 Scala 开发者们,有很多技术资源可供参考,但是如要想知道如何去应用这些技术就需要不同的思维方式了。为了帮助你正确地使用Akka,《Akka应用模式:分布式应用程序设计实践指南》这本实用的实践指南提供了若干高级的设计模式,还包括了如何以及何时应用那些模式去解决在大型分布式系统中遇到的实际问题的一些案例。

书籍目录:

前言 .......................................................................................... xvii 第1 章 Actor 模型 ........................................................................1 现实是最终一致的 .................................................................................................1 解构Actor 模型 .....................................................................................................3 所有的计算都在一个actor 中执行 .........................................................................4 actor 之间只能通过消息进行通信 .........................................................................5 actor 可以创建子actor ...........................................................................................6 actor 可以改变自己的状态或行为 .........................................................................8 一切都是actor .......................................................................................................9 Actor 模型的使用 .................................................................................................10 定义清晰的边界 ................................................................................................... 11 何时适合使用Actor 模型 ....................................................................................13 结论 .....................................................................................................................13 第2 章 Akka 简介 .......................................................................15 Akka 是什么......................................................................................................... 15 Akka 是开源的 .............................................................................................. 15 Akka 正在蓬勃发展 .......................................................................................16 Akka 是为分布式设计的 ...............................................................................16 Akka 组件 ............................................................................................................17 Akka actor .....................................................................................................17 子actor .......................................................................................................... 18 remoting :不同JVM 上的actor ....................................................................20 clustering :集群成员的自动化管理 ..............................................................20 Akka HTTP ...................................................................................................24 TestKit ........................................................................................................... 25 contrib ........................................................................................................... 25 Akka OSGi ................................................................................................... 25 Akka HTTP ...................................................................................................26 Akka Streams ................................................................................................26 Akka 实现的Actor 模型 ......................................................................................26 Actor 模型中的Akka actor ..................................................................................26 消息传递 .......................................................................................................27 actor 系统 ...................................................................................................... 28 Akka Typed 项目 .................................................................................................. 28 结论 ....................................................................................................................29 第3 章 分布式领域驱动设计 ........................................................31 DDD 概述 ............................................................................................................31 DDD 的好处 .........................................................................................................32 DDD 组件 ............................................................................................................33 域实体 ..................................................................................................................34 域值对象 .............................................................................................................34 聚合与聚合根 ..................................................................................................... 35 仓储 .....................................................................................................................37 工厂和对象创建 ................................................................................................... 38 域服务 .................................................................................................................. 38 有界上下文 ..........................................................................................................39 结论 ....................................................................................................................41 第4 章 优秀的Actor 设计 ...........................................................43 大系统小做 ..........................................................................................................43 封装actor 中的状态 ............................................................................................44 使用字段封装状态 .......................................................................................44 使用“状态”容器封装状态 ........................................................................47 使用become 封装状态 ................................................................................. 48 将futures 与actors 混合 ............................................................................... 50 Ask 模式和替代方案 ............................................................................................ 54 Ask 模式的问题 ........................................................................................... 55 附带的复杂性 ................................................................................................ 57 Ask 的替代方案 ........................................................................................... 57 命令与事件 .......................................................................................................... 59 构造函数的依赖注入 ....................................................................................61 使用路径查找actor ......................................................................................61 结论 ....................................................................................................................62 第5 章 数据流 ............................................................................63 吞吐量与延迟 ......................................................................................................63 流 .........................................................................................................................64 路由器 ..................................................................................................................66 邮箱 ..................................................................................................................... 68 无界邮箱 ...................................................................................................... 68 有界邮箱 ......................................................................................................69 拉取的工作模式 ..................................................................................................70 背压 .....................................................................................................................73 ack .................................................................................................................73 高水位标记 ...................................................................................................73 队列长度监控 ................................................................................................74 速率监控 ......................................................................................................74 Akka 数据流.........................................................................................................74 源 .................................................................................................................. 75 汇 ..................................................................................................................77 RunnableGraph ............................................................................................. 78 流 ..................................................................................................................79 交叉点 ........................................................................................................... 80 Akka 流中的背压 ......................................................................................... 81 Akka 流的使用 ............................................................................................. 82 结论 .................................................................................................................... 84 第6 章 一致性和可扩展性 ...........................................................85 事务和一致性 ...................................................................................................... 85 强一致性与最终一致性 ....................................................................................... 86 并发性与并行性 ................................................................................................... 86 为什么全局一致的分布式状态影响可扩展性 ...................................................... 86 位置透明性 ......................................................................................................... 87 交付保证 ............................................................................................................. 87 最多投递一次 ................................................................................................ 87 最少投递一次 ................................................................................................ 88 恰好一次交付是不可能的(但可以近似做到) .............................................91 如何近似做到恰好一次交付 .........................................................................91 集群单例 .......................................................................................................92 可扩展性 ..............................................................................................................94 避免全局状态 ............................................................................................... 98 避免共享状态 ............................................................................................... 98 遵循Actor 模型 .............................................................................................99 避免顺序操作 ...............................................................................................99 隔离阻塞型操作 ...........................................................................................99 监控和调优 ..................................................................................................99 集群分片和一致性 ...............................................................................................99 分片 ............................................................................................................. 100 Akka 中的分片 ........................................................................................... 101 分片键的生成 ............................................................................................. 102 分片的分布 ................................................................................................ 103 一致性边界 ................................................................................................. 103 可扩展性边界 ............................................................................................. 104 分片聚合根 ................................................................................................ 105 持久化 ......................................................................................................... 106 钝化 ............................................................................................................. 106 使用集群分片保证一致性 ........................................................................... 107 结论 .................................................................................................................. 109 第7 章 容错 .............................................................................111 故障类型 ........................................................................................................... 112 异常 ............................................................................................................ 112 JVM 中的致命错误 .................................................................................... 113 外部服务故障 ............................................................................................. 113 不符合服务等级协议 .................................................................................. 113 操作系统和硬件级故障 .............................................................................. 114 故障隔离 ........................................................................................................... 114 舱壁模式 .................................................................................................... 114 优雅降级 ..................................................................................................... 117 使用Akka 集群隔离故障 ............................................................................ 119 使用熔断器控制故障 ................................................................................... 119 故障处理 ............................................................................................................ 122 异常处理 ..................................................................................................... 123 外部服务的故障处理 .................................................................................. 128 结论 ................................................................................................................... 131 第8 章 可用性 ..........................................................................133 微服务和单体式应用 ........................................................................................ 133 用有界上下文划分微服务 ................................................................................. 134 细粒度的微服务 ................................................................................................. 135 集群感知路由器 ................................................................................................. 135 分布式数据 ....................................................................................................... 137 优雅降级 ............................................................................................................ 140 部署 ................................................................................................................... 141 分阶段部署/ 滚动重启 ..................................................................................... 142 蓝/ 绿部署 ........................................................................................................ 142 崩溃恢复/ 运维监测 ......................................................................................... 143 健康检查和应用状态页面 .......................................................................... 143 度量 ............................................................................................................ 145 日志 ............................................................................................................. 146 看门狗工具 ................................................................................................. 146 结论 .................................................................................................................. 147 第9 章 性能 ...........................................................................149 隔离瓶颈 ........................................................................................................... 150 优化Akka ......................................................................................................... 150 减少或隔离阻塞型操作 .............................................................................. 150 缩短消息处理时间 ...................................................................................... 151 增加处理消息的actor ................................................................................ 151 派发器 ................................................................................................................ 151 标准派发器 ................................................................................................. 151 固定派发器 ................................................................................................. 153 平衡派发器 ................................................................................................ 154 calling-thread 派发器 .................................................................................. 154 何时使用单独的派发器 .............................................................................. 155 提高并行性 ................................................................................................ 157 结论 .................................................................................................................. 158 后记 ..........................................................................................159 参考文献 ...................................................................................161 关于作者 ...................................................................................162 封面介绍 ...................................................................................163

作者简介:

Michael Nash是Lightbend 的总监。过去30 多年间,他为各种规模的公司及客户设计、开发、发布了很多软件项目。作为项目管理和架构实践的软件工艺倡导者,他是“安全堆栈”最早的实践者之一,在Scala、Akka 和Spray 方面有五年以上的工作经验。他大部分业余时间致力于“安全响应式平台”的相关工作,在会议中发表主题演讲,以及在软件相关领域撰写书籍。
Wade Waldron是Lightbend 的高级顾问。他现在针对Lightbend 响应式平台提供培训和咨询服务。在Lightbend 之外,Wade 在过去9 年中一直在建立坚实的软件和游戏,重点是设计测试驱动、设计域驱动、设计面向服务的架构、设计事件驱动架构以及敏捷开发。

其它内容:

暂无其它内容!


下载点评

  • 扫描(482+)
  • 可搜索(548+)
  • 一键(991+)
  • 如获至宝(954+)
  • 中规中矩(647+)
  • 可打印(1314+)
  • 朗读(930+)
  • 经典(937+)
  • 带书签(353+)
  • 必下(460+)
  • 学者(232+)
  • 干货(262+)
  • 优质(453+)
  • 秒传(274+)
  • 破损(753+)
  • 分卷(925+)
  • 原版(536+)
  • 适配(220+)

下载评论

  • 用户1740655761: ( 2025-02-27 19:29:21 )

    秒传下载EPUB/AZW3文件,完整小说推荐收藏,推荐下载。

  • 用户1714753232: ( 2024-05-04 00:20:32 )

    无损版本报告资源,PDF/TXT格式适配各种阅读设备,体验良好。

  • 用户1718433821: ( 2024-06-15 14:43:41 )

    图文功能搭配EPUB/TXT格式,完整数字阅读体验,推荐下载。

  • 用户1733691494: ( 2024-12-09 04:58:14 )

    极速下载MOBI/AZW3文件,无损期刊推荐收藏,推荐下载。

  • 用户1739808660: ( 2025-02-18 00:11:00 )

    文件太大,加载很慢,建议压缩优化。


相关书评

暂时还没有人为这本书评论!