书籍详情
《包邮Akka实战南+Akka入门与实践 Akka应用模式 并发编程教程书籍》[37M]百度网盘|亲测有效|pdf下载
  • 包邮Akka实战南+Akka入门与实践 Akka应用模式 并发编程教程书籍

  • 出版时间:2017-09
  • 热度:9156
  • 上架时间:2024-06-30 08:52:20
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍



Akka实战

定价 89元

ISBN9787111613428

出版社 机械工业出版社

出版时间 2018.12

本书是关于Akka语言开发的一本实战型图书

从实战角度介绍了Akka工具及其重要模块,入门+手册的内容安排,代码测试贯穿全书,实例丰富、内容实用,上手容易、起点较低


蓝墨水图书专营店


目录

序I

译者序II

致谢III

关于本书IV

第1章 Akka简介1

1.1 什么是Akka?3

1.2 Actor简介4

1.3 两种扩展方法:建立我们的实例4

1.4 传统扩展5

1.4.1 传统扩展和持久性:一切移入数据库6

1.4.2 传统扩展和交互应用:轮询8

1.4.3 传统扩展和交互应用:Web服务9

1.5 用Akka进行扩展10

1.5.1 用Akka扩展和持久化:发送和接收消息11

1.5.2 用Akka扩展和交互应用:消息推送13

1.5.3 用Akka扩展和容错:异步解耦14

1.5.4 Akka方式:发送和接收消息15

1.6 Actor:向上和向外扩展的编程模型16

1.6.1 异步模型16

1.6.2 Actor操作17

1.7 Akka Actor20

1.7.1 ActorSystem20

1.7.2 ActorRef、邮箱和Actor21

1.7.3 分发器21

1.7.4 Actor和网络24

1.8 总结24

第2章 搭建和运行25

2.1 克隆、构建和测试接口25

2.1.1 用sbt进行构建26

2.1.2快进到GoTicks.com REST服务器28

2.2 探索应用中的app32

2.2.1 app结构32

2.2.2 处理销售的Actor:TicketSeller39

2.2.3 BoxOffice Actor40

2.2.4 RestApi43

2.3 部署到云上46

2.3.1 在Heroku上创建app46

2.3.2 在Heroku上部署并运行48

2.4 总结49

第3章 Actor测试驱动开发50

3.1 测试Actor50

3.2 单向消息52

3.2.1 SilentActor实例52

3.2.2 SendingActor实例57

3.2.3 SideEffectingActor实例63

3.3 双向消息66

3.4 总结68

第4章 容错69

4.1 容错是什么(不是什么)?69

4.1.1 普通对象与异常70

4.1.2 Let it crash73

4.2 Actor生命周期76

4.2.1 启动事件77

4.2.2 停止事件78

4.2.3 重启事件78

4.2.4 生命周期综合80

4.2.5 生命周期监控82

4.3 监视83

4.3.1 监视器层次结构83

4.3.2 预定义策略85

4.3.3 自定义策略87

4.4 总结94

第5章 Futures95

5.1 Future的应用实例95

5.2 Future无阻塞99

5.3 Future错误处理106

5.4 Future组合111

5.5 Future组合Actor122

5.6 总结123

第6章 个分布式Akka app125

6.1 向外扩展125

6.1.1 通用网络术语125

6.1.2 采用分布式编程模型的原因126

6.2 远程扩展127

6.2.1 把GoTicks.com app改造成分布式应用128

6.2.2 远程REPL活动129

6.2.3 远程查找135

6.2.4 远程部署143

6.2.5 多JVM测试149

6.3 总结156

第7 章 配置、日志和部署158

7.1 配置158

7.1.1 尝试Akka配置158

7.1.2 使用默认值162

7.1.3 Akka配置165

7.1.4 多系统166

7.2 日志168

7.2.1 Akka中的日志记录168

7.2.2 使用日志170

7.2.3 Akka的日志控制171

7.3 部署基于Actor的应用173

7.4 总结178

第8章 Actor的结构模式179

8.1 管道和过滤器179

.....................



《Akka入门与实践》主要面向使用Akka工具集来构建大规模分布式应用程序的Java和Scala开发者。Akka入门与实践 介绍了分布式系统的基本概念以及如何使用Akka来构建容错性高、可横向扩展的分布式应用程序。
《Akka入门与实践》的主要内容包括:Akka工具集、Actor模型、响应式编程、Actor及Future的使用、Akka消息传递模式、Actor生命周期、监督机制、状态与错误处理、Akka并发编程、路由、阻塞IO的处理、Akka Cluster、CAP理论、Akka邮箱问题的处理、Akka Testkit、领域驱动设计等。

《Akka入门与实践》贯穿使用了分布式键值存储以及文章解析服务两个实例,将原理与实践结合,介绍了使用Akka设计并实现分布式应用程序的方法。

Jason Goodwin,自学成才的开发者,从15岁起就开始学习编程,并且一直对技术保持着浓厚的兴趣。他在mDialog公司初次接触到Akka项目,这家公司zui终被Google收购。他同时还是一名很有影响力的“技术控”,将Akka引入加拿大一家主要的电信公司,帮助该公司为客户提供容错性更高、响应更及时的软件。现在他主要从事大规模分布式系统的开发。在业余时间,他喜欢自己原创电子音乐。译者简介诸豪文,网名clasnake,毕业于清华大学,现为全职软件开发工程师,常用的开发语言有Java、Scala、和Python。其个人博客地址为http://clasnake.net。他也是开源项目Swagger的贡献者,并译有《Python网络编程》(第3版)一书。

1章 初识Actor 1
1.1 本章概述 1
1.2 什么是Akka 1
1.2.1 Actor模型的起源 1
1.2.2 什么是Actor 2
1.2.3 Actor和消息传递 2
1.3 本书示例系统 7
1.3.1 示例1:处理分布式状态 7
1.3.2 示例2:完成更多工作 8
1.4 配置环境 8
1.4.1 选择一门语言 9
1.4.2 安装Java——Oracle JDK8 9
1.4.3 确认Java环境配置 10
1.4.4 安装Scala 10
1.4.5 安装Typesafe Activator 10
1.4.6 新建项目 11
1.4.7 安装IDE 12
1.5 创建,个Akka应用程序——设置SBT项目 15
1.5.1 将Akka添加至build.sbt 16
1.5.2 创建,个Actor 17
1.5.3 使用单元测试验证代码 21
1.5.4 运行测试用例 24
1.6 课后作业 25
1.7 小结 26

第2章 Actor与并发 27
2.1 响应式系统设计 27
2.2 响应式四准则 28
2.2.1 灵敏性 28
2.2.2 伸缩性 28
2.2.3 容错性 28
2.2.4 事件驱动/消息驱动 28
2.2.5 响应式准则的相关性 29
2.3 剖析Actor 29
2.3.1 Java Actor API 29
2.3.2 Scala Actor API 32
2.4 Actor的创建 33
2.5 Promise、Future和事件驱动的编程模型 36
2.5.1 阻塞与事件驱动API 36
2.5.2 使用Future进行响应的Actor 40
2.5.3 理解Future和Promise 45
2.5.4 在失败情况下执行代码 49
2.5.5 从失败中恢复 49
2.5.6 异步地从失败中恢复 50
2.5.7 链式操作 51
2.5.8 组合Future 51
2.5.9 处理Future列表 52
2.5.10 Future速查表 53
2.5.11 准备数据库与消息 54
2.5.12 编写客户端 59
2.6 课后作业 62
2.6.1 基本知识 62
2.6.2 项目作业 62
2.7 小结 63

第3章 传递消息 64
3.1 示例问题 64
3.2 消息传递 65
3.2.1 消息是不可变的 66
3.2.2 Ask消息模式 69
3.2.3 Tell 78
3.3 课后作业 88
3.4 小结 88

第4章 Actor的生命周期——处理状态与错误 90
4.1 分布式计算的8个误区 90
4.1.1 网络是可靠的 90
4.1.2 没有延迟 91
4.1.3 带宽是无限的 91
4.1.4 网络是安全的 92
4.1.5 网络拓扑不会改变 92
4.1.6 只有一个管理员 92
4.1.7 网络传输没有开销 93
4.1.8 网络是同构的 93
4.2 错误 93
4.2.1 隔离错误 94
4.2.2 监督 95
4.3 状态 102
4.3.1 在线/离线状态 103
4.3.2 条件语句 104
4.3.3 热交换(Hotswap):Become/Unbecome 105
4.3.4 通过重启转移状态 113
4.4 课后作业 113
4.5 小结 114

第5章 纵向扩展 115
5.1 摩尔定律 115
5.2 多核架构的分布式问题 116
5.3 选择Future或Actor进行并发编程 117
5.4 并行编程 117
5.4.1 使用Future进行并行编程 118
5.4.2 使用Actor进行并行编程 119
5.5 使用Dispatcher 123
5.5.1 Dispatcher解析 123
5.5.2 Executor 124
5.5.3 创建Dispatcher 124
5.5.4 决定何时使用哪种Dispatcher 126
5.5.5 默认Dispatcher 128
5.5.6 使用Future的阻塞IO Dispatcher 130
5.5.7 用于解析文章的Dispatcher 132
5.5.8 并行·优化 135
5.6 课后作业 135
5.7 小结 136

第6章 横向扩展——集群化 137
6.1 Akka Cluster介绍 137
6.2 巨型单体应用vs微服务 137
6.3 集群的定义 138
6.3.1 失败检测 139
6.3.2 通过gossip协议达到·终一致性 139
6.4 CAP理论 140
6.4.1 C –一致性(Consistency) 140
6.4.2 A –可用性(Availability) 140
6.4.3 P –分区容错性(Partition Tolerance) 140
6.4.4 CAP理论中的妥协 141
6.5 使用Akka Cluster构建系统 143
6.5.1 创建集群 143
6.5.2 集群成员的状态 150
6.5.3 通过路由向集群发送消息 151
6.5.4 编写分布式文章解析服务 151
6.5.5 用于集群服务的集群客户端 153
6.5.6 集群设计 159
6.6 结合分区与冗余 164
6.7 远程Actor寻址 166
6.8 课后作业 167
6.9 小结 167

第7章 处理邮箱问题 169
7.1 搞垮·可能出问题的服务 169
7.1.1 响应时间变长 170
7.1.2 崩溃 171
7.2 恢复能力 171
7.3 在高负载情况下保持响应速度 175
7.4 课后作业 181
7.5 小结 182

第8章 测试与设计 183
8.1 示例问题 183
8.2 应用程序设计 184
8.3 设计、构建并测试领域模型 186
8.3.1 行为说明 186
8.3.2 设计领域模型 187
8.3.3 构建并测试领域模型 188
8.3.4 基于行为说明编写代码 190
8.4 测试Actor 192
8.4.1 测试Actor行为及状态 192
8.4.2 测试消息流 195
8.5 测试建议 198
8.6 课后作业 199
8.7 小结 200

第9章 尾声 201
9.1 其他Akka功能及模块 201
9.1.1 Akka中的日志 202
9.1.2 消息信道与EventBus 204
9.1.3 Agent 206
9.1.4 Akka Persistence 209
9.1.5 Akka I/O 210
9.1.6 Akka Streams与HTTP 210
9.2 部署工具 210
9.3 监控日志与事件 212
9.4 下一步 212
9.4.1 编写一些Actor代码 213
9.4.2 Coursera课程 213