AWS Amplify 热门2017年〜
提供全栈 Web 和移动应用程序构建与托管的服务
它能做什么
AWS Amplify 是一个全栈开发平台,让前端开发者能够轻松构建和连接认证、API、存储、托管等后端功能。支持 React、Next.js、Vue、Flutter 等主流框架,并自动构建与 Git 仓库集成的 CI/CD 流水线。即使没有基础设施知识,也能快速部署生产级的 Web 和移动应用。
使用场景
用于托管单页应用(SPA)和静态网站、构建带认证功能的 Web 应用、创建需要实时数据同步的移动应用后端等。在初创公司原型开发以及前端工程师以小团队构建全栈应用的场景中尤为有效。
日常类比
可以将其比作共享办公空间。通常开设办公室需要找场地、装修、安装电话线和网络等大量准备工作。使用共享办公空间(Amplify),您只需带上桌椅(前端代码),就能立即使用配备了前台(认证)、会议室(API)和仓库(存储)的完整环境。
什么是 Amplify
AWS Amplify 是一个加速 Web 和移动应用全栈开发的平台。前端开发者无需关心后端基础设施,即可轻松添加认证、数据库、文件存储、API 等功能。它与 GitHub 和 GitLab 集成,推送代码后即自动构建和部署。
Amplify Hosting
Amplify Hosting 为 Web 应用提供 CI/CD 和托管功能。连接 Git 仓库后,会自动为每个分支创建预览环境。支持 Next.js 服务端渲染(SSR),不仅可以托管静态网站,还能托管动态 Web 应用。自定义域名设置和 SSL 证书签发也会自动完成。
后端功能
Amplify 提供了使用 TypeScript 定义后端资源的机制。只需几行代码即可添加认证(Cognito)、数据库(DynamoDB)、文件存储(S3)、API(AppSync / API Gateway)等功能。底层使用 CloudFormation 自动配置资源,无需逐一配置各个 AWS 服务。 要全面了解后端功能,可以参考Amazon 上的相关书籍。
开始使用
在 Amplify 控制台中点击"创建新应用",连接 GitHub 仓库。框架会被自动检测并建议构建设置。点击"保存并部署",几分钟内应用即可上线。如需添加后端功能,安装 Amplify CLI 后使用 amplify add auth 等命令添加功能。
注意事项
- Amplify Hosting 按构建时间计费,构建频繁的项目需注意成本
- Amplify 在后台创建的 AWS 资源(Cognito、DynamoDB 等)也会产生各自的费用
- 使用 Next.js SSR 时,Amplify 会自动创建 Lambda@Edge 函数,请确认框架版本的兼容性