从静态存储到托管数据库:学习 Amazon RDS、DynamoDB 与 AWS Lambda(第5天)

发布: (2026年3月9日 GMT+8 12:23)
6 分钟阅读
原文: Dev.to

Source: Dev.to

抱歉,我目前无法访问外部链接获取文章内容。请您直接粘贴需要翻译的文本,我将为您提供简体中文翻译。

🚀 目标

今天的目标是了解云应用程序如何管理和处理数据。
重点领域包括:

  • 部署受管关系型数据库并将应用服务器连接到该数据库
  • 学习 NoSQL 数据库架构
  • 使用无服务器函数执行后端逻辑

这涉及三个关键的 AWS 服务:

  • Amazon RDS
  • Amazon DynamoDB
  • AWS Lambda

🗄️ 第一步:了解 Amazon RDS

Amazon RDS(关系型数据库服务)是一项托管的数据库服务,抽象了常见的运维任务:

  • 操作系统补丁
  • 备份
  • 高可用性配置
  • 扩展

支持的引擎包括 MySQL、PostgreSQL、MariaDB、Oracle Database 和 Microsoft SQL Server。

为了练习,我创建了一个 MySQL RDS 实例。

⚙️ 第2步:启动 RDS 数据库

使用 AWS 控制台,我创建了一个符合免费套餐条件的实例,配置如下:

参数
EngineMySQL
Instance typedb.t3.micro
Storage20 GB
RegionMumbai (ap‑south‑1)
Public accessibilityEnabled (for testing)

创建完成后,AWS 提供了一个数据库端点,例如:

mydb.xxxxxx.ap-south-1.rds.amazonaws.com

该端点即为应用程序连接数据库时使用的地址。

🔗 第3步:连接 EC2 与 RDS

要将 Amazon EC2 实例与 RDS 数据库关联,我执行了以下步骤:

  1. 安全组配置 – 允许来自 EC2 安全组的入站 MySQL 流量(端口 3306)。
  2. 使用 RDS 终端节点 – 在连接字符串中引用该终端节点。
  3. 通过 MySQL 客户端连接 – 在 EC2 服务器上执行 mysql -h <endpoint> -u <user> -p

连接成功后,我可以:

  • 创建数据库和表
  • 插入和检索数据

这展示了一个典型模式,即应用服务器与托管的关系型数据库进行交互。

🧩 第4步:了解 DynamoDB(NoSQL)

Amazon DynamoDB 是一种完全托管的 NoSQL 服务,旨在实现高可扩展性和低延迟。数据组织为:

  • – 项目的容器
  • – 类似于行
  • 属性 – 类似于列

主要优势

  • 自动扩展
  • 毫秒级延迟
  • 无服务器架构
  • 完全托管的基础设施

典型使用场景包括移动应用、游戏后端、实时分析以及其他无服务器工作负载。

⚡ 第5步:使用 AWS Lambda 运行无服务器代码

AWS Lambda 让开发者无需预置或管理服务器即可运行代码。函数仅在被触发时执行,例如:

  • 通过 API Gateway 的 API 请求
  • S3 文件上传
  • DynamoDB 流
  • 定时的 CloudWatch 事件

为了练习,我创建了一个在 DynamoDB 表上执行 CRUD 操作的 Lambda 函数。其流程如下:

  1. 客户端请求 → 通过 API Gateway 触发 Lambda
  2. Lambda 执行 → 与 DynamoDB 交互
  3. 响应 → 返回给客户端

Lambda 抽象了基础设施、扩展和执行环境,使开发者能够专注于业务逻辑本身。

🧠 关键技术要点

  • Amazon RDS 提供托管的关系型数据库,负责补丁、备份和扩展。
  • EC2 应用 可以通过端点和适当的安全组安全地连接到 RDS。
  • SQL 与 NoSQL:关系型数据库强制模式;DynamoDB 提供灵活的无模式存储,并具备自动扩展能力。
  • DynamoDB 在高吞吐量、低延迟的工作负载中表现出色。
  • AWS Lambda 实现无服务器后端逻辑,自动管理计算资源。
  • 无服务器架构 简化基础设施管理,并实现快速扩展。

核心认识:云平台为开发者提供灵活性,可根据应用需求在传统服务器、对象存储或无服务器服务之间选择最合适的架构。

🎯 反思

在短短几天的云工程学习中,我已经探索了三种不同的部署模型:

天数技术主要使用场景
3Amazon EC2 + Nginx完全控制的服务器托管
4Amazon S3(静态网站)轻量、成本效益高的静态托管
5Amazon RDS、DynamoDB、Lambda可扩展的后端和无服务器架构

每种方法都解决不同的问题,了解何时使用它们是高效云工程的关键。旅程仍在继续——更多探索在前方! 🚀

0 浏览
Back to Blog

相关文章

阅读更多 »