

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 一般最佳实践
<a name="general-best-practices"></a>

以下最佳实践可帮助您充分了解 Amazon RDS 工作负载的运行状况，并针对操作事件和监控数据采取适当措施。
+ **识别 KPI。**根据预期的业务成果识别关键绩效指标（KPI）。评估 KPI 以确定工作负载是否成功。例如，如果您的核心业务是电子商务，那么您预期的业务成果之一可能是您的电子商店全天候可供客户购物。为了实现这一业务成果，您需要为电子商店应用程序使用的后端 Amazon RDS 数据库定义可用性 KPI，并将基准 KPI 设置为每周的 99.99%。根据基准值评估实际可用性 KPI 可以帮助您确定是否满足预期的数据库可用性 99.99%，从而实现全天候服务的业务成果。
+ **定义工作负载指标。**定义工作负载指标以衡量 Amazon RDS 工作负载的数量和质量。评估指标以确定工作负载是否实现了预期的成果，并了解工作负载的运行状况。例如，要评估您的 Amazon RDS 数据库实例的可用性 KPI，您应该衡量数据库实例的正常运行时间和停机时间等指标。然后，您可以使用这些指标来计算可用性 KPI，如下所示：

  ```
  availability = uptime / (uptime + downtime)
  ```

  指标代表一个按时间顺序排列的数据点集。指标还可以包括维度，这对于分类和分析非常有用。
+ **收集和分析工作负载指标。**根据您的配置，Amazon RDS 会生成不同的指标和日志。其中一些代表数据库实例事件、计数器或统计数据，例如 `db.Cache.innoDB_buffer_pool_hits`。其他指标来自操作系统（例如 `memory.Total`），它衡量主机 Amazon Elastic Compute Cloud（Amazon EC2）实例的总内存量。监测工具应对收集的指标进行定期、主动的分析，以识别趋势并确定是否需要任何适当的应对措施。
+ **建立工作负载指标基准。**为指标建立基准，以定义预期值并识别好坏阈值。例如，在正常的数据库操作下，您可以将 `ReadIOPS` 的基准定义为最多 1000。然后，您可以使用此基准进行比较，并确定是否存在过度使用的情况。如果您的新指标始终显示读取 IOPS 在 2000-3000 范围内，则表明您已经发现了一个可能触发调查、干预和改进响应的偏差。
+ **当工作负载结果面临风险时发出提醒。**当您确定业务成果面临风险时，发出提醒。然后，您既可以在问题影响客户之前主动解决问题，也可以及时缓解事件的影响。
+ **确定工作负载的预期活动模式。**根据您的指标基准，建立工作负载活动模式，以识别意外行为，并在必要时采取适当的措施进行响应。AWS 提供了[监控工具](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html)，这些工具应用统计和机器学习算法来分析指标和检测异常。
+ **检测到工作负载异常时发出提醒。**在 Amazon RDS 工作负载的操作中检测到异常时，请发出提醒，以便在必要时采取适当措施进行响应。
+ **审查和修改 KPI 和指标。**确认您的 Amazon RDS 数据库符合您定义的要求，并确定为实现业务目标而可能改进的领域。验证衡量指标和评估的关键绩效指标的有效性，并在必要时对其进行修改。例如，假设您为并发数据库连接的最佳数量设置了 KPI，并监控有关尝试和失败的连接以及已创建和正在运行的用户线程的指标。您的数据库连接数可能超过了 KPI 基准定义的连接数。通过分析您当前指标，您可以检测结果，但可能无法确定根本原因。如果出现这种情况，您应该修改指标并添加额外的监控措施，例如表锁定计数器。新的指标将有助于确定数据库连接数量的增加是否是由意外的表锁引起的。