技术教育社区
www.teccses.org

Serverless架构无服务器单页应用开发

封面

作者:(美)BenRady著

页数:220

出版社:电子工业出版社

出版日期:2017

ISBN:9787121317361

电子书格式:pdf/epub/txt

内容简介

Serverless的意思就是开发应用时可以专注于实现应用的业务逻辑,不需要考虑管理服务器的事情。
采用无服务器架构的方式开发应用,扩展性好、可靠性强、成本低。
尝试新创意、探索可能的新市场或者创建最小可行产品的极佳应用开发方式。
创业者、中小型公司的福音。数小时内就能搭建一个初始版本应用并在几秒内部署,迅速接受市场检验。

作者简介

既当老板又做码农,15年来雷迪已经开发了多款商业和开源软件。他为大大小小的公司做培训,教授如何开发出更好的软件。你可以关注他的Twitter:@benrady,也可以时不时上他的博客逛一逛:benrady.com。
郑美赞,毕业于浙江大学计算机学院,先后就职于浙江网新恒天、PayPal、思科美国和个推。多年来在大数据开发、数据分析、分布式系统、前端开发等领域积累了丰富的经验。2014年11月加入个推团队,负责基于大数据的应用和产品研发,带领团队完成多个产品。

相关资料

软件行业里聚集着昀多的精英——上百万的开发者,他们带动技术朝着代码更容易测试、解决方案更简单、结果更可靠,以及维护起来更轻松的方向发展。有人看到了 Serverless设计的未来,然后回过头来教授我们这些后知后觉者如何开发下一代应用, Ben就是这样的开拓者。他的书就像是一位循循善诱的老师,教你理解 Serverless设计模式,引导你自然地遵守部署和测试的昀佳实践。
Tim Wagner
@timallenwagner

本书对于所有背景的开发者来说都是一份翔实而通俗易懂的指南。不管你是否使用 AWS,都能学到不少知识——从应用的安全到访问数据时不可或缺的身份认证。
Will Gaul

Ben在本书中讲了很多内容:用
JavaScript构建客户端逻辑、用 Cognito进行认证和授权、用 Lambda实现不能放心地交给浏览器处理的敏感功能。 JavaScript开发者会从中发现一些实现典型服务端功能的新方法,而且读完本书,你就会得到一个成本近乎为零的能运行的 Serverless应用。
Ryan Scott Brown
serverlesscode.com的作者
Serverless Framework贡献者

未来你的应用不再运行在应用服务器上——而是运行在你公司某个机柜的机器里,运行在云上,由一组可靠的服务保护和管理。跟着本书开启全新的开发之旅吧!
Daniel Hinojosa
Testing in Scala作者

本书对 Serverless Web应用开发这种前沿技术做了精彩的介绍。它将带着你从零开始,直到部署 Serverless应用。
Jake McCrary
Outpace Systems公司软件开发主管

我读过很多技术图书,这一本是我今年读过的昀好的书,也是我这些年读过的昀好的书之一。Ben Rady的讲述既轻松又实在,没有吹嘘自己的知识,也没有用不必要的内容凑篇幅。书中不仅告诉你要做什么,而且解释了为什么这么做,两者并重,十分清楚明了。 Ben的观点和技术选型有理有据,非常靠谱。建议你阅读本书。
David Rupp
RuppWorks LLC

本书特色

本书讲授如何利用Amazon公司的AWS Lambda创建Serverless单页应用。这里,Serverless的意思是应用开发者无须管理服务器,你的应用构建在一群服务之上,而不是运行在需要人配置和维护的服务器之上。这种新的开发方式带来很多好处,节省成本、可扩展性与可靠性高,开发者可以专注于实现应用的业务逻辑。全书共8章,带着读者采用这种新方法从零开发一个JavaScript解题应用,并且进行测试,最终部署。 对于创业者以及中小企业的开发者来说,本书讲述的Serverless设计是一个值得了解和学习的新方法,从中获得启示,抓住先机。

目录

第1 章 从简单开始 ………………………………………………………………………………………………………………………………………………….. 1
无服Web 应用
无服设计的好处
无服设计的限制
使用自己的工作空间
本地执行
创建着陆页
部署到Amazon S3
搭建AWS 命令行接口
创建一个带访问密钥的AWS 用户
首次部署
下一步
第2 章 基于hash 事件的视图路由 …………………………………………………………………………………………………………………………. 23
设计可测试的路由器
运行Jasmine 测试
编写第一个测试用例
路由函数
创建命名空间
添加路由函数
创建视图容器
添加路由
添加视图参数
用spy 测试调用
处理视图函数中的参数
加载应用
响应事件
响应hash 事件
再次部署
下一步
第3 章 单页应用的必要组件…………………………………………………………………………………………………………………………………… 49
创建视图
定义数据模型
数据绑定
优化数据模型
处理用户输入
有效地使用视觉反馈
控制导航
创建一个应用外壳
提取着陆页
添加工具条
使用自定义事件
再次部署
下一步
第4 章 基于Amazon Cognito 的认证服务 …………………………………………………………………………………………………………….. 77
接入外部身份认证服务商
创建身份池
身份池配置
IAM 角色和策略
获取Google 身份
请求AWS 证书
基于Deferred 对象和Promise 的认证请求
创建一个身份Deferred 对象
创建个人主页视图
再次部署
下一步
第5 章 使用DynamoDB 存储数据 ………………………………………………………………………………………………………………………. 101
使用DynamoDB
理解DynamoDB 的键和哈希
DynamoDB 用作文档数据库
强一致性和最终一致性
创建表
属性和键值
预设吞吐量
二级索引与查询 vs 扫描
授权访问DynamoDB
保存文档
一个fail-safe 的数据访问函数
创建和保存一个item
读取文档
数据访问和验证
重新部署
下一步
第6 章 使用Lambda 构建微服务 ………………………………………………………………………………………………………………………… 125
理解Amazon Lambda
Lambda 环境
Lambda 的局限
内存、时间和费用
先部署
配置一个Lambda 函数
创建代码包
通过AWS 控制台测试函数
创建一个新的Lambda 配置
往Lambda 执行角色上添加策略
编写Lambda 函数
规避微服务架构问题
添加服务依赖
构建可测试的服务
查询、分组和分页
调用Lambda 函数
使用Amazon API 网关
重新部署
下一步
第7 章 无服应用的安全 ………………………………………………………………………………………………………………………………………. 151
保护你的AWS 账号
禁用所有root 访问密钥
管理用户配置
保护AWS 证书
设置多重身份认证
查询注入攻击
跨站脚本攻击
XSS 注入方法
使用web worker 沙盒化JavaScript
跨站请求伪造
不用JavaScript 实现XSRF
跨站请求和同源策略
线路攻击和传输层安全
Sidejacking 攻击
高效使用HTTPS
拒绝服务攻击
用CloudFront 保护S3
可扩展服务和用户身份
重新部署
下一步
第8 章 扩容 ………………………………………………………………………………………………………………………………………………………… 169
监控Web 服务
监控容量限制
创建付款警告
分析S3 的流量
记录S3 请求
分析S3 日志
响应代码频率
热门资源
每日用量
优化应用,实现增长
通过缓存降低成本和加载时间
通过带版本号的文件名清除缓存
云的成本
加载成本
数据成本
微服务成本
加起来
再次部署
下一步
附录A 安装Node.js …………………………………………………………………………………………………………………………………………….. 195
安装Node.js 运行时
Linux
OS X
Windows
管理多个Node.js 版本
附录B 分配一个域名 …………………………………………………………………………………………………………………………………………….199
参考书目 …………………………………………………………………………………………………………………………………………………………….. 201

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Serverless架构无服务器单页应用开发》
Article link:https://www.teccses.org/771316.html