当前位置:首页 > 程序设计 >
《Akka实战:快速构建高可用分布式应用》电子书封面

Akka实战:快速构建高可用分布式应用

  • 发布时间:2019年07月11日 14:58:30
  • 作者:杜云飞
  • 大小:137.1 MB
  • 类别:Akka电子书
  • 格式:PDF
  • 版本:影印版
  • 评分:8.7

    Akka实战:快速构建高可用分布式应用 PDF 影印版

      给大家带来的一篇关于Akka相关的电子书资源,介绍了关于Akka实战、分布式应用方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小137.1 MB,杜云飞编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.4。

      内容介绍

      Akka实战:快速构建高可用分布式应用

      Akka实战:快速构建高可用分布式应用

      读者评价

      国人写的难得好书 Actor模型和Akka 特性解释的特别清晰 个人以为比「Akka in Action」说的明白 尤其是有几章写了 Akka Stream 和 Akka HTTP 这些高级扩展 非常受用 美中不足的是 这本书的例子是Java写的 有利有弊吧 对于初学者上手容易些 但是看起来很变扭 瑕不掩瑜!
      作为首版原创Akka书籍,我认为还是OK的,里面以Java版作为基础进行讲解我认为也算是和其他同类书籍的差异化亮点了,因为Scala相关的书籍其实已经有了(貌似是翻译的...)
      这本书不厚,着重实战讲解,对Stream的覆盖不够多(这块儿内容其实可以独立成书),版本的话个人认为是合适的,实际上生产环境并不一定就是用最新的。。。
      总体来说,我觉得已经很好了,另外原创本身值得鼓励,可以为很多人打开了Akka的大门啊

      内容介绍

      本书一共分为10章,全面介绍了Akka的基础架构、Actor模型、常用组件、分布式&集群、微服务等。下面是各个章节的简介及阅读说明。第1章介绍了Akka的技术背景、应用场景及架构体系,为大家日后做技术选型提供参考依据。第2章介绍了Actor的相关概念、常见用法、生命周期、容错处理等。第3章介绍了Dispatcher的用途和常见配置方法。第4章介绍了邮箱的常见类型及配置,同时也给出了一个自定义邮箱类型的简单案例。第5章介绍了消息路由器的基本概念和创建方式(Pool和Group),然后分别演示了几种常见路由策略。第6章介绍了Akka的一些实用工具包,如Future、EventBus等。第7、8章介绍了Akka分布式&集群相关的内容。第9章介绍了如何使用Akka构建HTTP和WebSocket服务,并完整实现了一个图文聊天系统。第10章介绍了一款“全家桶式”的微服务框架Lagom。

      目录

      • 前言
      • 第1章 认识Akka1
      • 1.1 Akka简介1
      • 1.1.1 技术背景1
      • 1.1.2 Akka是什么3
      • 1.2 Akka应用场景4
      • 1.3 Akka架构体系4
      • 1.3.1 Actor模型4
      • 1.3.2 体系结构4
      • 1.4 本章小结7
      • 第2章 走进Actor8
      • 2.1 Actor组件8
      • 2.1.1 Akka中的Actor8
      • 2.1.2 ActorSystem与监管9
      • 2.1.3 生命周期监控9
      • 2.1.4 引用与路径10
      • 2.2 Akka环境搭建10
      • 2.2.1 环境准备11
      • 2.2.2 使用Lightbend Activator平台12
      • 2.3 创建一个Actor14
      • 2.3.1 定义Actor14
      • 2.3.2 创建Actor实例14
      • 2.3.3 工厂模式---Props/Creator15
      • 2.4 发送-接收消息16
      • 2.4.1 tell方法16
      • 2.4.2 ask方法17
      • 2.4.3 消息转发18
      • 2.5 查找一个Actor18
      • 2.6 消息不可变21
      • 2.7 Actor行为切换21
      • 2.8 Actor生命周期25
      • 2.9 停掉一个Actor26
      • 2.10 监督与容错处理29
      • 2.11 Circuit Breaker(熔断)33
      • 2.12 配置相关35
      • 2.13 本章小结36
      • 第3章 线程调度38
      • 3.1 什么是Dispatcher?38
      • 3.2 Executor选择39
      • 3.3 配置Dispatcher39
      • 3.4 使用Dispatcher41
      • 3.5 PinnedDispatcher41
      • 3.6 本章小结42
      • 第4章 邮箱43
      • 4.1 消息处理顺序43
      • 4.2 默认邮箱配置44
      • 4.3 内置邮箱45
      • 4.3.1 内置邮箱说明45
      • 4.3.2 自定义优先级45
      • 4.3.3 控制指令优先48
      • 4.4 Actor使用邮箱的多种方式49
      • 4.4.1 配置Actor邮箱49
      • 4.4.2 配置dispatcher邮箱49
      • 4.4.3 实现RequiresMessageQueue接口50
      • 4.5 自定义邮箱类型50
      • 4.6 本章小结52
      • 第5章 消息路由53
      • 5.1 Router和Routee53
      • 5.2 路由器及路由逻辑53
      • 5.3 路由Actor56
      • 5.3.1 Pool方式56
      • 5.3.2 Group方式58
      • 5.4 常见路由类型59
      • 5.4.1 广播-Broadcast60
      • 5.4.2 最快响应-ScatterGatherFirstCompleted61
      • 5.4.3 随机-最快响应-TailChopping62
      • 5.4.4 创建可修改容量的池62
      • 5.5 特殊消息处理63
      • 5.5.1 Broadcast消息64
      • 5.5.2 PoisonPill消息64
      • 5.5.3 其他管理类消息64
      • 5.6 本章小结65
      • 第6章 实用工具67
      • 6.1 定时调度—Scheduler67
      • 6.2 处理并发结果—Future68
      • 6.2.1 Future常规用法68
      • 6.2.2 函数式Future70
      • 6.3 事件总线72
      • 6.3.1 实现事件总线72
      • 6.3.2 事件流处理74
      • 6.4 日志处理75
      • 6.4.1 基础配置76
      • 6.4.2 使用slf4j76
      • 6.5 Akka扩展78
      • 6.5.1 TypedActor初探78
      • 6.5.2 自定义扩展81
      • 6.5.3 集成Spring83
      • 6.6 Akka I/O87
      • 6.6.1 TCP服务87
      • 6.6.2 UDP服务90
      • 6.7 Akka Streams91
      • 6.7.1 Streams组件91
      • 6.7.2 组合Source、Sink94
      • 6.7.3 案例:日志处理95
      • 6.7.4 错误处理99
      • 6.7.5 关联Actor101
      • 6.8 本章小结102
      • 第7章 远程103
      • 7.1 远程介绍103
      • 7.1.1 Java RPC103
      • 7.1.2 Akka远程106
      • 7.2 创建远程ActorSystem107
      • 7.3 Actor远程访问108
      • 7.4 创建远程Actor109
      • 7.5 远程路由器110
      • 7.6 远程事件113
      • 7.7 序列化114
      • 7.7.1 Protobuf框架114
      • 7.7.2 序列化API115
      • 7.8 本章小结116
      • 第8章 集群117
      • 8.1 Akka集群概述117
      • 8.1.1 种子节点118
      • 8.1.2 领导节点118
      • 8.1.3 节点状态及生命周期118
      • 8.1.4 故障检测119
      • 8.2 创建Akka集群119
      • 8.2.1 代码及集群配置119
      • 8.2.2 启动集群122
      • 8.2.3 加入集群123
      • 8.2.4 akka-cluster集群工具123
      • 8.3 集群示例—实现文章单词统计125
      • 8.3.1 示例分析125
      • 8.3.2 代码实现127
      • 8.4 使用路由133
      • 8.4.1 Group路由133
      • 8.4.2 Pool路由133
      • 8.5 集群指标136
      • 8.5.1 指标收集136
      • 8.5.2 基于指标的负载均衡138
      • 8.6 集群单例139
      • 8.7 集群客户端140
      • 8.7.1 集群客户端概述140
      • 8.7.2 使用 ClusterClient141
      • 8.7.3 事件监听142
      • 8.8 集群分片143
      • 8.8.1 分片概念143
      • 8.8.2 持久化Actor144
      • 8.8.3 分片示例148
      • 8.9 本章小结155
      • 第9章 HTTP服务156
      • 9.1 HTTP协议156
      • 9.1.1 header信息157
      • 9.1.2 状态码159
      • 9.2 Akka HTTP159
      • 9.2.1 配置依赖159
      • 9.2.2 HTTP服务端160
      • 9.2.3 请求和响应160
      • 9.2.4 HTTP客户端163
      • 9.2.5 使用Routing DSL163
      • 9.2.6 常用Directive165
      • 9.3 Akka WebSocket166
      • 9.3.1 WebSocket协议167
      • 9.3.2 Akka WebSocket167
      • 9.3.3 WebSocket应用之聊天室169
      • 9.4 本章小结176
      • 第10章 微服务全家桶之Lagom177
      • 10.1 Lagom简介177
      • 10.2 Lagom初探178
      • 10.3 搭建Lagom服务181
      • 10.3.1 项目结构181
      • 10.3.2 编写Lagom服务182
      • 10.4 持久化实体186
      • 10.4.1 持久化简介186
      • 10.4.2 PersistentEntity API187
      • 10.4.3 持久化示例187
      • 10.4.4 MySQL支持191
      • 10.5 Lagom部署(SandBox)192
      • 10.5.1 安装ConductR SandBox192
      • 10.5.2 部署Maven项目195
      • 10.6 本章小结199

      以上就是本次介绍的Akka电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:30天App开发从0到1 APICloud移动开发实战

      下一篇:产品经理必懂的技术那点事儿

      展开 +

      收起 -

      • 《Akka实战:快速构建高可用分布式应用》PDF下载

      下载地址:百度网盘下载
      读者留言
      网友NO.23561
      网友NO.23561

      业务需要,小组内部搭建了一个基于akka简单的分布式集群,尽量轻量级。
      业务场景,简要说下,目前业务数据量比较大,且还在以每天几十万的数据量递增,现在需要根据这些历史数据,从不同的维度,且维度可能组合,统计相关业务数据,其中包括数据挖掘,数据运营,同时还有可能业务告警,同时还要求数据尽量及时,而且考虑到后续可扩展,可以增加任意其他维度,能够快速响应等,

      从上面的描述中,我们可以提供几个关键字,大数据,实时统计,多维度统计,快速接入等,这些其实公司内部是有些平台和框架可以满足的,用hadoop跑job来解决,但不够实时,且接入还是有点麻烦,所以我们产生了一个想法,自己搭建一个小型集群,毕竟数据量不是很大,而且akka这个框架,宣传还是挺强大的,也比较成熟,但也需要能够驾驭它,引入一种新技术,最好还是能够解决一些问题,并且有足够的驾驭能力,否则发布到线上,有问题的话,那就死翘翘了,这里我将分几个部分,把最近学习的一些akka心得,记录在此,前面我写过的文章可能都虎头蛇尾,但后续会慢慢补上,零碎的时间比较多,没法集中精力和时间来系统学习,只能能够用这种方式来写这些文章了。

      网友NO.43143
      网友NO.43143

      Actor是什么
      曾经看到知乎上有人提过actor就是cpu上的时间片,这种说法非常贴切。Actor之间通过消息进行通讯,一切都是异步的。可以说Actor就像现实生活中的一群人,他们各司其职,互相通过消息进行交流,一个actor收到另外一个actor发来的消息后会按照消息的内容去执行指定的任务,接着再将新任务传递下去或者将执行结果返回给消息发送方。Actor这种模型很好地解决了传统java并发带来的各种问题。
      Actor和线程的区别
      Actor规避了传统多线程中锁的问题,在Actor中是没有共享变量的,一切都是无状态的,尽管我们可以在actor中去调用一个新的线程去进行一些异步操作,但是这并不符合Actor本身的理念,并且会破坏Actor的整体设计。要记住一点,Actor是单线程运行的,一个Actor同时只能处理一条消息,我们可以通过增加Actor的数量来提高系统并行处理的能力。
      Actor是如何执行的
      AKKA中使用dispatcher对actor进行执行,当一个actor启动之后会将自身绑定到一个dispatcher上,我们可以在系统配置中定义自己的dispathcer。Dispatcher本身其实是一个线程池,默认的dispatcher是一个fork-join-executor,读者可以参考下表来了解不通的dispatcher。

      萧曳丶

      萧曳丶 提供上传

      资源
      49
      粉丝
      29
      喜欢
      221
      评论
      19

      Copyright 2018-2020 www.xz577.com 码农之家

      投诉 / 推广 / 赞助:QQ:520161757