Akka入门与实践
图书信息
| 作者 | [加]Jason Goodwin(贾森·古德温) |
| 出版社 | 人民邮电出版社 |
| ISBN | 9787115453549 |
| 出版时间 | 2017-06-01 |
| 字数 | 19.6万 |
| 分类 | 科技,计算机,网络,程序设计 |
读书简介
《Akka门与实践》主要面向使用Akka工具集来构建大规模分布式应用程序的Java和Scala发者。Akka门与实践 介绍了分布式系统的基本概念以及如何使用Akka来构建容错性高、可横向扩展的分布式应用程序。 《Akka门与实践》的主要内容包括:Akka工具集、Actor模型、响应式编程、Actor及Future的使用、Akka消息传递模式、Actor生命周期、监督机制、状态与错误处理、Akka并发编程、路由、阻塞IO的处理、Akka Cluster、CAP理论、Akka邮箱问题的处理、Akka Testkit、领域驱动设计等。
目录
内容提要
关于作者
关于译者
技术审核
致谢
前言
本书涉及的内容
阅读本书的前提条件
本书的目标读者
读者反馈
客户支持
下载示例代码
下载本书的彩色图片
电子书、折扣以及其他
问题
第1章 初识Actor
1.1 本章概述
1.2 什么是Akka
1.2.1 Actor模型的起源
1.2.2 什么是Actor
1.2.3 Actor和消息传递
1.3 本书示例系统
1.3.1 示例1:处理分布式状态
1.3.2 示例2:完成更多工作
1.4 配置环境
1.4.1 选择一门语言
1.4.2 安装Java——Oracle JDK8
1.4.3 确认Java环境配置
1.4.4 安装Scala
1.4.5 安装Typesafe Activator
1.4.6 新建项目
1.4.7 安装IDE
1.5 创建第一个Akka应用程序——设置SBT项目
1.5.1 将Akka添加至build.sbt
1.5.2 创建第一个Actor
1.5.3 使用单元测试验证代码
1.5.4 运行测试用例
1.6 课后作业
1.7 小结
第2章 Actor与并发
2.1 响应式系统设计
2.2 响应式四准则
2.2.1 灵敏性
2.2.2 伸缩性
2.2.3 容错性
2.2.4 事件驱动/消息驱动
2.2.5 响应式准则的相关性
2.3 剖析Actor
2.3.1 Java Actor API
2.3.2 Scala Actor API
2.4 Actor的创建
Props
2.5 Promise、Future和事件驱动的编程模型
2.5.1 阻塞与事件驱动API
2.5.2 使用Future进行响应的Actor
2.5.3 理解Future和Promise
2.5.4 在失败情况下执行代码
2.5.5 从失败中恢复
2.5.6 异步地从失败中恢复
2.5.7 链式操作
2.5.8 组合Future
2.5.9 处理Future列表
2.5.10 Future速查表
2.5.11 准备数据库与消息
2.5.12 编写客户端
2.6 课后作业
2.6.1 基本知识
2.6.2 项目作业
2.7 小结
第3章 传递消息
3.1 示例问题
3.1 项目结构
3.2 消息传递
3.2.1 消息是不可变的
3.2.2 Ask消息模式
3.2.3 Tell
3.3 课后作业
3.4 小结
第4章 Actor的生命周期——处理状态与错误
4.1 分布式计算的8个误区
4.1.1 网络是可靠的
4.1.2 没有延迟
4.1.3 带宽是无限的
4.1.4 网络是安全的
4.1.5 网络拓扑不会改变
4.1.6 只有一个管理员
4.1.7 网络传输没有开销
4.1.8 网络是同构的
4.2 错误
4.2.1 隔离错误
4.2.2 监督
4.3 状态
4.3.1 在线/离线状态
4.3.2 条件语句
4.3.3 热交换(Hotswap):Become/Unbecome
4.3.4 通过重启转移状态
4.4 课后作业
4.5 小结
第5章 纵向扩展
5.1 摩尔定律
5.2 多核架构的分布式问题
5.3 选择Future或Actor进行并发编程
5.4 并行编程
5.4.1 使用Future进行并行编程
5.4.2 使用Actor进行并行编程
5.5 使用Dispatcher
5.5.1 Dispatcher解析
5.5.2 Executor
5.5.3 创建Dispatcher
5.5.4 决定何时使用哪种Dispatcher
5.5.5 默认Dispatcher
5.5.6 使用Future的阻塞IO Dispatcher
5.5.7 用于解析文章的Dispatcher
5.5.8 并行最优化
5.6 课后作业
5.7 小结
第6章 横向扩展——集群化
6.1 Akka Cluster介绍
6.2 巨型单体应用vs微服务
6.3 集群的定义
6.3.1 失败检测
6.3.2 通过gossip协议达到最终一致性
6.4 CAP理论
6.4.1 C –一致性(Consistency)
6.4.2 A –可用性(Availability)
6.4.3 P –分区容错性(Partition Tolerance)
6.4.4 CAP理论中的妥协
6.5 使用Akka Cluster构建系统
6.5.1 创建集群
6.5.2 集群成员的状态
6.5.3 通过路由向集群发送消息
6.5.4 编写分布式文章解析服务
6.5.5 用于集群服务的集群客户端
6.5.6 集群设计
6.6 结合分区与冗余
提前分区以及向新节点重新发送key
6.7 远程Actor寻址
使用akka.actor.Identify寻找远程Actor
6.8 课后作业
6.9 小结
第7章 处理邮箱问题
7.1 搞垮最可能出问题的服务
7.1.1 响应时间变长
7.1.2 崩溃
7.2 恢复能力
7.2.1 邮箱
7.3 在高负载情况下保持响应速度
7.3.1 熔断
7.4 课后作业
7.5 小结
第8章 测试与设计
8.1 示例问题
8.2 应用程序设计
架构设计
8.3 设计、构建并测试领域模型
8.3.1 行为说明
8.3.2 设计领域模型
8.3.3 构建并测试领域模型
8.3.4 基于行为说明编写代码
8.4 测试Actor
8.4.1 测试Actor行为及状态
8.4.2 测试消息流
8.5 测试建议
8.6 课后作业
8.7 小结
第9章 尾声
9.1 其他Akka功能及模块
9.1.1 Akka中的日志
9.1.2 消息信道与EventBus
9.1.3 Agent
9.1.4 Akka Persistence
9.1.5 Akka I/O
9.1.6 Akka Streams与HTTP
9.2 部署工具
9.3 监控日志与事件
9.4 下一步
9.4.1 编写一些Actor代码
9.4.2 Coursera课程
9.5 小结
欢迎来到异步社区!
异步社区的来历
社区里都有什么?
购买图书
下载资源
与作译者互动
灵活优惠的购书
纸电图书组合购买
社区里还可以做什么?
提交勘误
写作
会议活动早知道
加入异步
- 做好男人(百读)
- 数字时代的营销战略(曹虎等)
- 00后整顿职场指南(赵雪)
- 《新东方英语》中学生2014年12月号(《新东方英语》编辑部)
- Guía espa?ol-rumana para una comunicación eficaz(Dana Oprică)
- 完美应用Ubuntu(第4版)(何晓龙)
- 间苗(何金银)
- 一本书看懂电影之《公民凯恩》(张帆)
