《代码大全2》(英文限量珍藏版)《程序员修炼之道》《计算机程序的构造和解释》《C程序设计语言》《算法导论》《重构 改善既有代码的设计》《人月神话》《设计模式》(典藏版)《计算机程序设计艺术》《编译原理》《深入浅出设计模式》《代码整洁之道》《编程珠玑》《修改软件的艺术》《编码:隐匿在计算机软硬件背后的语言》《黑客与画家》《深入理解计算机系统》《HTTP权威指南》《重来》《集体智慧编程》《活着》《编程之美》《程序员思维修炼》《系统化思维导论》《大话数据结构》《UNIX网络编程》《高性能Linux服务器运维实战》《TCP/IP详解》《计算机网络:自顶向下方法》《UNIX环境高级编程》《程序员的自我修养》《数据密集型应用系统设计》《现代操作系统》《操作系统真象还原》《Windows核心编程》《深入理解LINUX内核》《传世经典书丛:UNIX编程艺术》《清醒思考的艺术》《C和指针》《C专家编程》《C 陷阱与缺陷》《C++ Primer Plus》《STL源码剖析》《Effective C++》《深度探索C++对象模型》《Java核心技术》《Effective Java中文版》《深入理解Java虚拟机》《Java并发编程实战》《轻量级Java Web整合开发》《精通Spring》《Java编程思想》《Java性能权威指南》《大话设计模式》《图解HTTP》《Redis实战》《Redis设计与实现》《高性能MySQL》《鸟哥的Linux私房菜》《Spring Cloud Alibaba微服务原理与实战》《第一本Docker书》《MySQL必知必会》《MySQL技术内幕:InnoDB存储引擎》《深入浅出MySQL》《SQL基础教程》《CSS权威指南》《CSS揭秘》《CSS世界》《Head First HTML与CSS》《零基础学HTML5+CSS3》《HTML5+CSS3+JavaScript从入门到精通》《JavaScript DOM编程艺术》《JavaScript高级程序设计》《JavaScript语言精粹》《你不知道的JavaScript 》《JavaScript设计模式与开发实践》《ES6标准入门》《深入理解ES6》《高性能JavaScript》《数据结构与算法JavaScript描述》《JavaScript ES6 函数式编程入门经典》《HTML5权威指南》《锋利的jQuery》《深入React技术栈》《React状态管理与同构实战》《React进阶之路》《React学习手册》《React Native移动开发实战》《React+Redux前端开发实战》《Spring Boot+Vue全栈开发实战》《Vue.js项目实战》《Vue.js入门与商城开发实战》《Vue.js 从入门到实战》《Vue.js实战》《深入浅出Node.js》《Node.js实战》《Node.js无服务器应用实战》《Node与Express开发》《编写可维护的JavaScript》《大型网站技术架构 核心原理与案例分析》《Web性能权威指南》《点石成金》

《Node.js无服务器应用实战》

点击购买


编辑推荐

云托管无服务器Web应用的优势是不可否认的:与传统的服务器相关设计相比,复杂性更低,上市时间更短,可扩展性更强。
缘于AWS Lambda中的JavaScript支持和强大的无服务器api工具(如Claudia.js库),可以在不学习新语言的情况下端到端地构建和部署无服务器应用。
将教你使用JavaScript、Node和Claudia.js在AWS上设计和构建无服务器Web应用。
你将掌握编写AWS Lambda函数的基础知识,以及API Gateway等核心的无服务器模式。
你可通过使用Amazon Alexa构建聊天机器人和语音助手来练习新技能。
你还将学习一些将现有应用迁移到无服务器平台的技术

内容简介

● 身份验证和数据库存储

● 异步函数

● 现实世界中的有趣示例

● 开发无服务器微服务


作者简介

Slobodan Stojanović和Aleksandar Simović是AWS Serverless Heroes和Claudia.js项目的核心贡献者,是Claudia Bot Builder的主要开发人员和维护人员,以及Node.js的无服务器应用的共同作者。

Aleksandar已经担任高级软件顾问和工程师超过七年,主攻但不限于JavaScript。他还涉足Swift、Python和Rust。他在贝尔格莱德工作,是JS贝尔格莱德会议的共同组织者。

Slobodan是Cloud Horizon的首席技术官,Cloud Horizon是一家位于蒙特利尔的软件开发工作室。他在贝尔格莱德工作,是JS贝尔格莱德会议的共同组织者。


目录

第Ⅰ部分 无服务器比萨店

第1章 使用Claudia的无服务器架构介绍 3

1.1 服务器和洗衣机 4

1.2 核心概念 4

1.3 无服务器的工作方式 6

1.4 无服务器实践 6

1.4.1 Maria姨妈的无服务器比萨店应用 7

1.4.2 一种常见的方法 7

1.4.3 无服务器方法 9

1.5 无服务器基础设施——AWS 10

1.6 什么是Claudia,应如何配置 14

1.7 何时以及在何处使用无服务器 16

1.8 本章小结 17

第2章 构建你的第一个无服务器API 18

2.1 制作比萨原料: 构建API 18

2.1.1 能买到哪种比萨 20

2.1.2 构建你的API 24

2.1.3 创建比萨订单 28

2.2 Claudia如何部署 你的API 32

2.3 流量控制:API Gateway 的工作原理 34

2.4 当无服务器API不是解决 方案时 35

2.5 试一试 35

2.5.1 练习 35

2.5.2 解决方案 36

2.6 本章小结 40

第3章 实现异步工作很容易,我们有.promise()方法 41

3.1 存储订单 41

3.2 承诺在30分钟内交付 46

3.3 试用你的API 49

3.4 从数据库获取订单 54

3.5 试一试 56

3.5.1 练习 56

3.5.2 解决方案 57

3.6 本章小结 60

第4章 比萨递送:外部连接 61

4.1 连接外部服务 61

4.2 连接到递送API 62

4.2.1 Some Like It Hot

Delivery API 63

4.2.2 创建第一个交付请求 64

4.3 异步通信的潜在问题 70

4.3.1 忘记返回Promise 71

4.3.2 不传递Promise的值 72

4.3.3 不将外部服务包装在Promise中 72

4.3.4 长异步操作的超时问题 73

4.4 试一试 75

4.4.1 练习 75

4.4.2 解决方案 75

4.5 本章小结 77

第5章 程序出错 79

5.1 调试无服务器应用 79

5.2 调试Lambda函数 81

5.3 剖析应用 84

5.4 试一试 87

5.4.1 练习 88

5.4.2 解决方案 88

5.5 本章小结 88

第6章 升级你的API 89

6.1 无服务器认证和授权 89

6.2 创建用户池和标识池 93

6.3 试一试 99

6.3.1 练习 99

6.3.2 解决方案 100

6.4 本章小结 102

第7章 处理文件 103

7.1 在无服务器应用中存储静态文件 103

7.2 生成缩略图 107

7.3 试一试 114

7.3.1 练习 115

7.3.2 解决方案 115

7.4 本书第Ⅰ部分结束:特殊练习 117

7.5 本章小结 117

第Ⅱ部分 来聊天吧

第8章 订购比萨只需要一条信息:聊天机器人 121

8.1 浏览器之外的比萨订购 121

8.2 来自Facebook Messenger的问候 122

8.3 你们有什么比萨 125

8.4 加快部署速度 128

8.5 Messenger模板 129

8.6 Claudia Bot Builder的工作方式 132

8.7 试一试 133

8.7.1 练习 134

8.7.2 解决方案 134

8.8 本章小结 134

第9章 异步和延迟响应 135

9.1 使聊天机器人具有交互性 135

9.2 增强聊天机器人结构的可扩展性 141

9.3 将聊天机器人连接到DynamoDB数据库 146

9.4 从聊天机器人获取用户位置 149

9.5 安排交付 153

9.6 集成简单的NLP 158

9.7 试一试 159

9.7.1 练习 159

9.7.2 解决方案 159

9.7.3 高级练习 161

9.8 本章小结 162

第10章 Jarvis,我的意思是Alexa,请帮我点一份比萨 163

10.1 现在不能说话:用Twilio发送SMS短信 164

10.1.1 SMS比萨列表 165

10.1.2 订购比萨 167

10.2 使用Alexa 172

10.2.1 准备skill 176

10.2.2 使用Alexa点比萨 180

10.3 试一试 183

10.3.1 练习 183

10.3.2 解决方案 184

10.4 第Ⅱ部分结束:特殊练习 184

10.5 本章小结 185

第Ⅲ部分 下一步

第11章 测试 189

11.1 测试服务器托管应用和无服务器应用 189

11.2 如何测试无服务器应用 191

11.3 前期准备 192

11.4 单元测试 195

11.5 模拟无服务器函数 199

11.6 集成测试 205

11.7 其他类型的自动化测试 209

11.8 更进一步:编写可测试的无服务器函数 210

11.9 试一试 214

11.9.1 练习 214

11.9.2 解决方案 215

11.10 本章小结 216

第12章 为比萨付款 217

12.1 付款交易 217

12.2 实现支付服务 222

12.3 有人能攻击支付服务吗 228

12.3.1 标准 229

12.3.2 权限 230

12.4 试一试 230

12.4.1 练习 230

12.4.2 解决方案 230

12.5 本章小结 232

第13章 将现有的Express.js应用程序迁移到AWS Lambda 233

13.1 Roberto叔叔的出租车应用 234

13.2 在AWS Lambda中运行Express.js应用 234

13.2.1 代理集成 237

13.2.2 serverless-express模块的工作方式 238

13.3 提供静态内容 239

13.4 连接到MongoDB 241

13.5 无服务器Express.js应用的限制 245

13.6 试一试 246

13.6.1 练习 247

13.6.2 解决方案 247

13.7 本章小结 248

第14章 迁移到无服务器 249

14.1 分析当前的无服务器应用 249

14.2 将现有应用迁移到无服务器 251

14.3 拥抱平台 253

14.3.1 提供静态文件 254

14.3.2 存储状态 254

14.3.3 日志 255

14.3.4 持续集成 256

14.3.5 管理环境:生产和开发 257

14.3.6 分享机密 258

14.3.7 VPC(虚拟私有云) 260

14.4 优化应用 261

14.4.1 捆绑或单用途功能 261

14.4.2 为Lambda函数选择合适的内存大小 261

14.5 面对挑战 262

14.5.1 处理超时 262

14.5.2 冷启动 263

14.5.3 DDoS攻击 264

14.5.4 厂商绑定 265

14.6 试一试 266

14.7 本章小结 266

第15章 实际案例研究 267

15.1 CodePen 267

15.1.1 无服务器之前 268

15.1.2 无服务器迁移 269

15.1.3 基础设施成本 271

15.1.4 测试与挑战 272

15.2 MindMup 272

15.2.1 无服务器之前 273

15.2.2 无服务器迁移 275

15.2.3 基础设施成本 277

15.2.4 测试、日志和挑战 277

15.3 本章小结 279

附录A 安装和配置 281

附录B 配置Facebook Messenger、Twilio和Alexa 287

附录C 设置Stripe和MongoDB 309

链接: https://www.fly63.com/course/26_1239