简介:用 Python 构建现代 Web 应用程序
按照分步说明构建您的首个现代应用程序。
概览
在本教程中,您将在 AWS 上构建自己的首个现代应用程序。 现代应用程序可以隔离业务逻辑,优化重用和迭代,并尽可能地减少开销。现代应用程序是使用多项服务构建而成,这些服务使您能够专注于编写代码,同时自动执行基础设施维护任务。
您要构建一个名为“Mythical Mysfits”的示例网站,并让访问者可以收养一种虚幻生物 (mysfit) 作为宠物。您可以访问 www.mythicalmysfits.com 查看该网站的样例
本教程的这个版本与其 Python 语言版本对应。如果您想尝试使用本教程的其他语言版本,请访问主分支,并从那里选择您喜欢的编程语言(滚动到页面底部)。
您将学到的内容
本教程将引导您完成创建上面讨论的架构完善的示例 Web 应用程序所需的步骤。您将学到如何在前端 Web 服务器上托管此 Web 应用程序并将其连接到后端数据库。您还将学到如何设置用户身份验证,并能够收集和分析用户行为。
该网站提供一些基本功能,如为您最喜欢的 mysfit 点赞和保留所选 mysfit 以便收养。它让您能够收集有关用户行为的见解以供日后进行分析。
应用程序架构
应用程序架构图提供了构成 Mythical Mysfits 的各项服务的结构示意图,并呈现了这些服务如何相互交互。如果您不完全熟悉下面提到的服务和功能,请不要担心。在讲解本教程的过程中,我们将详细讨论这些服务,并指出可以帮助您快速掌握它们的资源。

模块
应用程序架构图提供了构成 Mythical Mysfits 的各项服务的结构示意图,并呈现了这些服务如何相互交互。如果您不完全熟悉下面提到的服务和功能,请不要担心。在讲解本教程的过程中,我们将详细讨论这些服务,并指出可以帮助您快速掌握它们的资源。
您将通过以下模块构建 Mythical Mysfits:
- 创建静态网站 使用为您的网站提供静态内容(图片、静态文本等)的 Amazon Simple Storage Service (S3) 构建静态网站。
- 构建动态网站 使用通过 AWS Fargate 部署为容器的 API 后端微服务,在 Web 服务器上托管您的应用程序逻辑。
- 存储 Mysfit 数据 外化所有 mysfit 数据,并将其持久保存在 Amazon DynamoDB 提供的托管 NoSQL 数据库中。
- 添加用户注册功能 使用 AWS API Gateway 及其与 Amazon Cognito 的集成,让用户能够进行注册、身份验证和授权,以便 Mythical Mysfits 访问者可以为 myfits 点赞并收养这些生物。
- 捕获用户点击 使用点击流分析微服务捕获用户行为,该微服务将使用 AWS Lambda 和 Amazon Kinesis Firehose 记录和分析网站上的点击。
您将完全以编程方式创建和部署对此应用程序的更改。您将使用 AWS 命令行界面执行用于创建所需基础设施组件的命令,这些组件包括使用 AWS CodeCommit、CodeBuild 和 CodePipeline 的完全托管的 CI/CD 堆栈。最后,您将使用基于云的 IDE AWS Cloud9 在您自己的浏览器中完成所有需要的开发任务。