书籍详情
Serverless工程实践:从入门到进阶
作者:刘宇 著
出版社:机械工业出版社
出版时间:2021-07-01
ISBN:9787111686231
定价:¥129.00
购买这本书可以去
内容简介
本书是一本关于Serverless架构从原理、入门到实战的技术书籍,本书通过多个开源项目(包括不限于Knative、OpenWhisk、Kubeless等)、多个云厂商的多款云产品(包括不限于阿里云函数计算、阿里云Serverless工作流、腾讯云云函数、华为云函数工作流、百度智能云函数计算、AWS Lambda、Google Cloud Platform Functions等),通过多种途径向读者介绍什么是Serverless架构、如何上手Serverless架构、不同领域中Serverless架构的应用以及如何从零开发一个Serverless应用等,希望读者通过对本书的阅读,可以对Serverless架构有一个更加全面、直观地了解,可以通过本书的抛砖引玉,帮助读者将Serverless项目真实落地,将Serverless架构融入到自己所在的领域,获得Serverless架构带来的技术红利。
作者简介
刘宇(花名:江昱) 国防科技大学电子信息专业博士,阿里云Serverless产品体验侧负责人,从事Serverless相关的工作多年,负责阿里云函数计算(FC)、Serverless工作流(FNF)等产品的体验工作,有丰富的实践经验。 阿里云战略级开源项目Serverless Devs发起人和负责人,Serverless Framework、Kubevela等开源项目贡献者,社区项目Anycodes在线编程负责人。 阿里云Serverless云布道师,CIO学院特聘讲师。畅销书《Serverless架构:从原理、设计到项目实战》作者,电子书《架构师特刊:人人都能学会的 Serverless 实践》(InfoQ出品)作者。
目录
序一
序二
序三
序四
序五
序六
序七
序八
前言
第0章 从云计算到Serverless 1
第一部分 概念与产品
第1章 什么是Serverless 8
11 Serverless的定义 8
111 广义定义探索 8
112 Serverless工作流程 10
12 Serverless规范 12
121 FaaS解决方案模型 12
122 函数的规范与定义 12
123 函数生命周期 15
124 其他规范 20
13 Serverless的特点 35
131 优势与特点 35
132 面临的挑战 38
14 典型应用场景 43
141 实时文件处理 44
142 数据ETL处理 44
143 实时数据处理 44
144 AI推理预测 45
145 IoT后端 45
146 Web应用/移动应用后端 46
147 音视频转码 46
15 未来可期 47
第2章 主流Serverless平台和产品 48
21 工业FaaS平台 48
211 AWS Lambda 48
212 Google Cloud Functions 50
213 Azure Functions 52
214 阿里云函数计算 54
215 华为云函数工作流 57
216 腾讯云云函数 59
22 开源FaaS平台 60
221 Knative 61
222 Apache OpenWhisk 65
223 Fission 69
224 Kubeless 76
第二部分 开发入门
第3章 从零入门Serverless 84
31 创建函数 84
311 AWS Lambda 84
312 Google Cloud Functions 87
313 阿里云函数计算 89
314 华为云函数工作流 91
315 腾讯云云函数 94
32 开发一个Serverless应用 97
321 知识准备 98
322 项目开发 101
323 举一反三 105
33 触发器 106
331 定时触发器 108
332 对象存储触发器 108
333 API网关触发器 108
34 传统Web框架迁移 113
341 请求集成方案 114
342 其他方案 117
第4章 Serverless应用开发、调试与优化 120
41 Serverless应用开发观念的转变 120
411 文件上传方法 120
412 文件读写与持久化方法 124
413 慎用部分Web框架的特性 125
414 要注意应用组成结构 125
42 Serverless应用调试秘诀 126
421 在线调试 126
422 本地调试 129
423 其他调试方案 130
43 细数Serverless的配套服务 132
431 开发者工具 132
432 Serverless Workflow 138
433 可观测性 139
44 Serverless应用优化 141
441 资源评估依旧重要 141
442 合理的代码包规格 141
443 合理复用实例 142
444 善于利用函数特性 143
第5章 从零搭建FaaS平台 146
51 零基础上手Knative应用 146
511 Knative简介 146
512 Knative部署 147
513 体验测试 150
52 自建Apache OpenWhisk平台 152
521 OpenWhisk简介 152
522 OpenWhisk部署 152
523 开发者工具 156
524 体验测试 157
53 快速搭建Kubeless平台 157
531 Kubeless简介 157
532 Kubeless部署 158
533 下载命令行工具 159
534 体验测试 160
第三部分 工程实践
第6章 Serverless与监控告警、自动化运维 164
61 通过Serverless架构实现监控告警功能 164
611 Web服务监控告警 164
612 云服务监控告警 172
613 总结 175
62 钉钉/企业微信机器人:GitHub触发器与Issue机器人 176
621 GitHub触发器的实现 176
622 GitHub Issue的识别 179
623 钉钉机器人/企业微信机器人的实现 181
624 Issue机器人的实现 183
625 总结 185
63 触发器和函数赋能自动化运维 186
631 云盘自动快照 186
632 服务器定时重启 188
633 总结 190
64 Serverless CI/CD实践案例 191
641 CI/CD实践 191
642 总结 196
第7章 Serverless在图像、音视频处理中的应用 197
71 Serverless架构下的图片压缩与加水印 197
711 Serverless的图片压缩方案 197
712 Serverless的图片加水印方案 204
713 项目部署与测试 205
714 总结 208
72 Serverless架构下的音视频处理 209
721 准备ffmpeg 210
722 音视频处理 212
723 总结 222
73 Serverless:让图像合成更简单 222
731 为头像增加圣诞帽 222
732 为头像增加固定装饰 230
733 总结 233
第8章 Serverless架构下的人工智能与大数据实战 235
81 20行代码:Serverless架构下用Python轻松实现图像分类和预测 235
811 ImageAI与图像识别 235
812 项目Serverless化 237
813 项目部署与测试 241
814 项目优化 242
815 总结 244
82 Serverless与NLP:让我们的博客更有趣 244
821 赋能网站SEO 244
822 “为你写诗”小工具 251
823 总结 258
83 基于Serverless架构的验证码识别功能 258
831 浅谈验证码 258
832 验证码识别 260
833 基于Serverless架构的验证码识别 266
834 总结 272
84 函数计算与对象存储实现WordCount 272
841 理论基础 273
842 功能实现 274
843 测试体验 279
844 总结 281
第9章 Serverless架构在前端领域的应用 282
91 初识Serverless SSR 282
911 Serverless与SSR 283
912 总结 285
92 Serverless架构下的前后端一体化 286
921 前后端一体化的发展 286
922 Serverless与前后端一体化 288
923 总结 291
第10章 Serverless架构在IoT等其他领域的应用 292
101 基于Serverless架构与WebSocket技术的聊天工具 292
1011 原理解析 292
1012 匿名聊天室 295
1013 体验与测试 302
1014 总结 305
102 Serverless与IoT:为智能音箱赋能 305
1021 天猫精灵 306
1022 小爱同学 310
1023 总结 313
103 用手机写代码:基于Serverless的在线编程能力探索 313
1031 在线编程功能开发 314
1032 更贴近本地的代码执行器 318
1033 总结 328
第11章 Serverless工程化项目实践 330
111 基于Serverless架构的博客系统 330
1111 项目背景 330
1112 需求分析 331
1113 整体设计 331
1114 项目开发 335
1115 项目预览 346
1116 思路拓展 350
1117 总结 355
112 基于Serverless架构的人工智能相册小程序 355
1121 项目背景 355
1122 需求分析 356
1123 整体设计 357
1124 项目开发 366
1125 项目预览 386
1126 经验积累 388
1127 总结 391
结束语 Serverless正当时 392
附录 部分代码汇总 400
序二
序三
序四
序五
序六
序七
序八
前言
第0章 从云计算到Serverless 1
第一部分 概念与产品
第1章 什么是Serverless 8
11 Serverless的定义 8
111 广义定义探索 8
112 Serverless工作流程 10
12 Serverless规范 12
121 FaaS解决方案模型 12
122 函数的规范与定义 12
123 函数生命周期 15
124 其他规范 20
13 Serverless的特点 35
131 优势与特点 35
132 面临的挑战 38
14 典型应用场景 43
141 实时文件处理 44
142 数据ETL处理 44
143 实时数据处理 44
144 AI推理预测 45
145 IoT后端 45
146 Web应用/移动应用后端 46
147 音视频转码 46
15 未来可期 47
第2章 主流Serverless平台和产品 48
21 工业FaaS平台 48
211 AWS Lambda 48
212 Google Cloud Functions 50
213 Azure Functions 52
214 阿里云函数计算 54
215 华为云函数工作流 57
216 腾讯云云函数 59
22 开源FaaS平台 60
221 Knative 61
222 Apache OpenWhisk 65
223 Fission 69
224 Kubeless 76
第二部分 开发入门
第3章 从零入门Serverless 84
31 创建函数 84
311 AWS Lambda 84
312 Google Cloud Functions 87
313 阿里云函数计算 89
314 华为云函数工作流 91
315 腾讯云云函数 94
32 开发一个Serverless应用 97
321 知识准备 98
322 项目开发 101
323 举一反三 105
33 触发器 106
331 定时触发器 108
332 对象存储触发器 108
333 API网关触发器 108
34 传统Web框架迁移 113
341 请求集成方案 114
342 其他方案 117
第4章 Serverless应用开发、调试与优化 120
41 Serverless应用开发观念的转变 120
411 文件上传方法 120
412 文件读写与持久化方法 124
413 慎用部分Web框架的特性 125
414 要注意应用组成结构 125
42 Serverless应用调试秘诀 126
421 在线调试 126
422 本地调试 129
423 其他调试方案 130
43 细数Serverless的配套服务 132
431 开发者工具 132
432 Serverless Workflow 138
433 可观测性 139
44 Serverless应用优化 141
441 资源评估依旧重要 141
442 合理的代码包规格 141
443 合理复用实例 142
444 善于利用函数特性 143
第5章 从零搭建FaaS平台 146
51 零基础上手Knative应用 146
511 Knative简介 146
512 Knative部署 147
513 体验测试 150
52 自建Apache OpenWhisk平台 152
521 OpenWhisk简介 152
522 OpenWhisk部署 152
523 开发者工具 156
524 体验测试 157
53 快速搭建Kubeless平台 157
531 Kubeless简介 157
532 Kubeless部署 158
533 下载命令行工具 159
534 体验测试 160
第三部分 工程实践
第6章 Serverless与监控告警、自动化运维 164
61 通过Serverless架构实现监控告警功能 164
611 Web服务监控告警 164
612 云服务监控告警 172
613 总结 175
62 钉钉/企业微信机器人:GitHub触发器与Issue机器人 176
621 GitHub触发器的实现 176
622 GitHub Issue的识别 179
623 钉钉机器人/企业微信机器人的实现 181
624 Issue机器人的实现 183
625 总结 185
63 触发器和函数赋能自动化运维 186
631 云盘自动快照 186
632 服务器定时重启 188
633 总结 190
64 Serverless CI/CD实践案例 191
641 CI/CD实践 191
642 总结 196
第7章 Serverless在图像、音视频处理中的应用 197
71 Serverless架构下的图片压缩与加水印 197
711 Serverless的图片压缩方案 197
712 Serverless的图片加水印方案 204
713 项目部署与测试 205
714 总结 208
72 Serverless架构下的音视频处理 209
721 准备ffmpeg 210
722 音视频处理 212
723 总结 222
73 Serverless:让图像合成更简单 222
731 为头像增加圣诞帽 222
732 为头像增加固定装饰 230
733 总结 233
第8章 Serverless架构下的人工智能与大数据实战 235
81 20行代码:Serverless架构下用Python轻松实现图像分类和预测 235
811 ImageAI与图像识别 235
812 项目Serverless化 237
813 项目部署与测试 241
814 项目优化 242
815 总结 244
82 Serverless与NLP:让我们的博客更有趣 244
821 赋能网站SEO 244
822 “为你写诗”小工具 251
823 总结 258
83 基于Serverless架构的验证码识别功能 258
831 浅谈验证码 258
832 验证码识别 260
833 基于Serverless架构的验证码识别 266
834 总结 272
84 函数计算与对象存储实现WordCount 272
841 理论基础 273
842 功能实现 274
843 测试体验 279
844 总结 281
第9章 Serverless架构在前端领域的应用 282
91 初识Serverless SSR 282
911 Serverless与SSR 283
912 总结 285
92 Serverless架构下的前后端一体化 286
921 前后端一体化的发展 286
922 Serverless与前后端一体化 288
923 总结 291
第10章 Serverless架构在IoT等其他领域的应用 292
101 基于Serverless架构与WebSocket技术的聊天工具 292
1011 原理解析 292
1012 匿名聊天室 295
1013 体验与测试 302
1014 总结 305
102 Serverless与IoT:为智能音箱赋能 305
1021 天猫精灵 306
1022 小爱同学 310
1023 总结 313
103 用手机写代码:基于Serverless的在线编程能力探索 313
1031 在线编程功能开发 314
1032 更贴近本地的代码执行器 318
1033 总结 328
第11章 Serverless工程化项目实践 330
111 基于Serverless架构的博客系统 330
1111 项目背景 330
1112 需求分析 331
1113 整体设计 331
1114 项目开发 335
1115 项目预览 346
1116 思路拓展 350
1117 总结 355
112 基于Serverless架构的人工智能相册小程序 355
1121 项目背景 355
1122 需求分析 356
1123 整体设计 357
1124 项目开发 366
1125 项目预览 386
1126 经验积累 388
1127 总结 391
结束语 Serverless正当时 392
附录 部分代码汇总 400
猜您喜欢