Serverless架构应用开发指南
[作]
phodal
更新时间:
Serverless 架构是指大量依赖第三方服务(也叫做后端即服务,即“BaaS”)或暂存容器中运行的自定义代码(函数即服务,即“FaaS”)的应用程序,函数是无服务器架构中抽象语言运行时的最小单位。在这种架构中,我们并不看重运行一个函数需要多少 CPU 或 RAM 或任何其他资源,而是更看重运行函数所需的时间,我们也只为这些函数的运行时间付费。
注意事项: 在本系列的文章中,主要采用了 Serverless Framework 来简化开发和部署流程。
Serverless Framework是无服务器应用框架和生态系统,旨在简化开发和部署AWS Lambda应用程序的工作。Serverless Framework 作为 Node.js NPM 模块提供,填补了AWS Lambda 存在的许多缺口。它提供了多个样本模板,可以迅速启动 AWS Lambda 开发。
目录
- Serverless 架构应用开发指南
- Serverless 架构
- 什么是 Serverless 架构??
- 虚拟化与隔离
- 为什么是花了 1000G ?
- Serverless 是什么?
- 事件驱动编程
- Serverless 的优势
- 降低启动成本
- 实现快速上线
- 系统安全性更高
- 适应微服务架构
- 自动扩展能力
- Serverless 的问题
- 不适合长时间运行应用
- 完全依赖于第三方服务
- 冷启动时间
- 缺乏调试和开发工具
- 构建复杂
- 语言版本落后
- Serverless 的适用场景
- 发送通知
- WebHook
- 轻量级 API
- 物联网
- 数据统计分析
- Trigger 及定时任务
- 精益创业
- Chat 机器人
- 其它
- 迁移方案
- Serverless Framework
- Apex
- Apache OpenWhisk
- Serverless 的 hello, world
- AWS Lambda 动态编程返回 HTML
- 将网站部署到 S3 上
- 为基于 S3 的网站支持 CRUD
- 结合 DynamoDB 数据库创建 RESTful API
- Express 实现 Serverless 的 React 服务端渲染
- Serverless 的微信公共平台后台
- 基于 Kinesis Streams 的数据流分析
- Serverless 数据分析,Kinesis Firehose 持久化数据到 S3
- 创建邮件发送 API
- 创建自己的 Serverless 短链服务
- 结合 Auth0 的登录、授权系统
- 在本地部署与调试
- 如何编写 Serverless 应用的测试
- 多个语言运行环境
- Serverless 开发物联网应用
- 使用 warmup 插件保活,避免应用冷启动
- 定时执行任务
- 使用 Simulate 插件在本地运行 Lambda
- 使用 GraphQL 实现更好的 API
- Serverless 应用示例:前端错误日志及事件收集系统
- Serverless 应用示例:二维码生成