图书介绍

Erlang/OTP并发编程实战【2025|PDF下载-Epub版本|mobi电子书|kindle百度云盘下载】

Erlang/OTP并发编程实战
  • (美)洛根,(美)梅里特,(瑞典)卡尔森著;连城译 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115285591
  • 出版时间:2012
  • 标注页数:333页
  • 文件大小:99MB
  • 文件页数:357页
  • 主题词:程序语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Erlang/OTP并发编程实战PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分Erlang起步:OTP基础2

第1章Erlang/OTP平台2

1.1基于进程的并发编程3

1.1.1理解并发3

1.1.2 Erlang的进程模型4

1.1.3 4种进程通信范式5

1.1.4用Erlang进程编程8

1.2 Erlang的容错架构10

1.2.1进程链接如何工作10

1.2.2监督与退出信号捕捉10

1.2.3进程的分层容错12

1.3分布式Erlang13

1.4 Erlang运行时系统和虚拟机13

1.4.1调度器14

1.4.2 I/O与调度15

1.4.3进程隔离与垃圾回收器15

1.5函数式编程:Erlang的处世之道16

1.6小结16

第2章Erlang语言精要18

2.1 Erlang shell19

2.1.1启动shell19

2.1.2输入表达式20

2.1.3 shell函数21

2.1.4退出shell21

2.1.5任务控制基础22

2.2 Erlang的数据类型23

2.2.1数值与算术运算24

2.2.2二进制串与位串25

2.2.3原子26

2.2.4元组27

2.2.5列表27

2.2.6字符串28

2.2.7 pid、端口和引用29

2.2.8将函数视作数据:fun函数30

2.2.9项式的比较30

2.2.10解读列表31

2.3模块和函数33

2.3.1调用其他模块中的函数(远程调用)33

2.3.2不同元数的函数34

2.3.3内置函数和标准库模块34

2.3.4创建模块35

2.3.5模块的编译和加载36

2.3.6独立编译器erlc37

2.3.7已编译模块与在shell中求值37

2.4变量与模式匹配38

2.4.1变量的语法39

2.4.2单次赋值39

2.4.3模式匹配:加强版的赋值41

2.4.4解读模式42

2.5函数与子句44

2.5.1带副作用的函数:文本打印44

2.5.2用模式匹配在多个子句中进行选择45

2.5.3保护式46

2.5.4模式、子句和变量作用域47

2.6 Case和if表达式48

2.6.1 Erlang的布尔型if-then-else分支选择48

2.6.2If表达式49

2.7 fun函数49

2.7.1作为现有函数别名的fun函数49

2.7.2匿名fun函数50

2.8异常与try/catch52

2.8.1抛出(触发)异常52

2.8.2运用try…catch53

2.8.3 try…of…catch53

2.8.4 after54

2.8.5获取栈轨迹54

2.8.6重抛异常55

2.8.7传统的 catch55

2.9列表速构56

2.9.1列表速构记法56

2.9.2映射、过滤和模式匹配56

2.10比特位语法与位串速构57

2.10.1构造位串57

2.10.2比特位语法中的模式匹配58

2.10.3位串速构59

2.11记录语法59

2.11.1 记录声明60

2.11.2创建记录60

2.11.3记录的字段以及模式匹配60

2.11.4更新记录字段60

2.11.5记录声明应该放在哪儿61

2.12预处理与文件包含61

2.12.1宏的定义和使用61

2.12.2文件包含62

2.12.3条件编译63

2.13进程64

2.13.1操纵进程64

2.13.2消息接收与选择性接收65

2.13.3注册进程66

2.13.4消息投递与信号67

2.13.5进程字典67

2.14 ETS表68

2.14.1为何ETS表被设计成这样68

2.14.2 ETS表的基本用法68

2.15 以递归代替循环69

2.15.1从迭代到递归69

2.15.2理解尾递归71

2.15.3累加器参数72

2.15.4谈谈效率72

2.15.5编写递归函数的窍门73

2.16 Erlang编程资源78

2.16.1图书78

2.16.2在线资料79

2.17小结79

第3章 开发基于TCP的RPC服务80

3.1你所创建的是什么81

3.1.1基础知识提醒82

3.1.2行为模式基础82

3.2实现RPC服务器85

3.2.1行为模式实现模块的典型布局85

3.2.2模块首部85

3.2.3 API段88

3.2.4回调函数段92

3.3运行RPC服务器98

3.4浅谈测试99

3.5小结100

第4章OTP应用与监督机制101

4.1 OTP应用101

4.1.1 OTP应用的组织形式102

4.1.2为应用添加元数据103

4.1.3应用行为模式104

4.1.4应用结构小结105

4.2用监督者实现容错105

4.2.1实现监督者106

4.2.2监督者重启策略107

4.2.3编写子进程规范108

4.3启动应用109

4.4生成EDoc文档110

4.5小结110

第5章 主要图形化监测工具的使用112

5.1 Appmon112

5.1.1 Appmon GUI112

5.1.2 WebTool版Appmon115

5.2 Pman116

5.3调试器118

5.4表查看器TV121

5.5工具栏123

5.6小结123

第二部分 构建生产系统126

第6章 打造一套缓存系统126

6.1故事背景126

6.2缓存的设计127

6.3创建OTP应用的基本骨架130

6.3.1应用目录结构的布局130

6.3.2创建应用元数据130

6.3.3实现应用行为模式131

6.3.4实现监督者131

6.4从应用骨架到五脏俱全的缓存133

6.4.1编写sc element进程134

6.4.2实现sc store模块138

6.4.3打造应用层API模块142

6.5小结144

第7章Erlang/OTP中的日志与事件处理145

7.1 Erlang/OTP中的日志146

7.1.1日志概述146

7.1.2 Erlang/OTP内置的日志设施147

7.1.3标准日志函数147

7.1.4 SASL与崩溃报告149

7.2用gen_event编写自定义事件处理器153

7.2.1 gen_event行为模式简介153

7.2.2事件处理器示例154

7.2.3处理错误事件155

7.3为Simple Cache添加自定义事件流157

7.3.1事件流API157

7.3.2将处理器整合进Simple Cach159

7.3.3订阅自定义事件流161

7.4小结162

第8章 分布式Erlang/OTP简介163

8.1 Erlang分布式基础163

8.1.1复制式进程间通信164

8.1.2位置透明性165

8.2节点与集群166

8.2.1节点的启动166

8.2.2节点的互联167

8.2.3 Erlang节点如何定位其他节点并与之建立通信169

8.2.4 magic cookie安全系统170

8.2.5互联节点间的消息传递171

8.2.6使用远程shell173

8.3资源探测攻略175

8.3.1术语175

8.3.2算法176

8.3.3实现资源探测应用177

8.4小结182

第9章用Mnesia为cache增加分布式支持183

9.1分布式缓存184

9.1.1选取通信策略184

9.1.2同步缓存和异步缓存186

9.1.3分布式表188

9.2用Mnesia实现分布式数据存储189

9.2.1建立项目数据库189

9.2.2初始化数据库191

9.2.3建表192

9.2.4向表中录入数据195

9.2.5执行基本查询197

9.3基于Mnesia的分布式缓存199

9.3.1用Mnesia取代ETS199

9.3.2让缓存识别出其他节点202

9.3.3用资源探测定位其他缓存实例205

9.3.4动态复制Mnesia表206

9.4小结209

第10章 打包、服务和部署210

10.1从系统的角度看应用210

10.1.1结构211

10.1.2元数据211

10.1.3系统如何管理运行中的应用212

10.2制作发布镜像213

10.2.1发布镜像213

10.2.2准备发布代码214

10.2.3发布镜像的元数据文件214

10.2.4脚本与启动文件216

10.2.5系统配置217

10.2.6启动目标系统218

10.3发布镜像打包219

10.3.1创建发布镜像包219

10.3.2发布镜像包的内容220

10.3.3定制发布镜像包222

10.4安装发布镜像223

10.5小结223

第三部分 集成与完善226

第11章 为缓存添加HTTP接口226

11.1实现TCP服务器226

11.1.1高效TCP服务器的设计模式227

11.1.2搭建tcp interface应用的骨架228

11.1.3填充TCP服务器的实现逻辑228

11.1.4简单文本协议231

11.1.5文本接口实现232

11.2打造一套全新的Web接口234

11.2.1 HTTP简介234

11.2.2实现一套通用的Web服务器行为模式237

11.2.3初识REST248

11.2.4用gen_web_ server实现REST式协议249

11.3小结252

第12章 用端口和NIF集成外围代码253

12.1端口和NIF254

12.1.1普通端口255

12.1.2链入式端口驱动256

12.1.3原生函数(NIF)257

12.2用端口来集成解析器257

12.2.1 Erlang方面的端口257

12.2.2 C方面的端口260

12.2.3编译运行271

12.3开发链入式驱动272

12.3.1初识链入式驱动273

12.3.2驱动的C语言部分274

12.3.3编译驱动代码278

12.3.4驱动的Erlang部分279

12.4将解析器实现为NIF280

12.4.1 NIF的Erlang部分280

12.4.2 NIF的C代码部分281

12.4.3编译与运行代码287

12.5小结288

第13章用Jinterface实现Erlang和Java间的通信289

13.1利用Jinterface在Erlang中集成Java290

13.1.1 OtpNode类290

13.1.2 OtpMbox类291

13.1.3 Erlang数据结构的Java映射291

13.1.4示例:Java中的消息处理292

13.1.5在Erlang中与Java节点通信294

13.2安装和配置HBase296

13.2.1下载和安装296

13.2.2配置HBase296

13.3为Simple Cache和HBase牵线搭桥297

13.3.1 Erlang方面:sc_ hbase.erl298

13.3.2 HBaseConnector类299

13.3.3 Java中的消息处理301

13.3.4 HBaseTask类304

13.4在Simple Cache中整合HBase306

13.4.1查询306

13.4.2插入307

13.4.3删除307

13.5运行集成系统308

13.6小结310

第14章 优化与性能311

14.1如何进行性能调优312

14.1.1设定性能目标312

14.1.2设定基线313

14.1.3系统性能分析313

14.1.4确定需要解决的问题313

14.1.5测定优化成果313

14.2 Erlang代码性能分析314

14.2.1用cprof计算调用次数314

14.2.2用fprof测定执行时间316

14.3 Erlang编程语言的缺陷320

14.3.1基本数据类型的性能特点321

14.3.2内置函数和运算符的性能324

14.3.3函数325

14.3.4进程327

14.4小结329

附录A安装Erlang330

附录B 列表与引用透明性332

热门推荐