如何解决 Amazon Keyspaces 中的 HTTP 5xx 错误?

1 分钟阅读
0

我想故障排除 Amazon Keyspaces(Apache Cassandra 兼容)中的 HTTP 5xx 错误

解决方案

当出现网络中断或后端硬件故障等暂时性问题时,在 Amazon Keyspaces 中执行表操作时会出现 5xx 错误。

如果您遇到服务不可用错误,请查看 AWS Health Dashboard。确保该特定 AWS 区域没有影响您的 AWS 账户的事件。您也可以联系 Amazon Keyspaces 的 AWS Support,确认该服务运行状况良好且可访问。

要故障排除由系统错误导致的 Amazon Keyspaces API 故障,请查看 AWS CloudTrail 日志。重试控制面板操作。

当您迁移数据或有大量写入活动时,可能会出现 InternalServerError 异常。Amazon Keyspaces 会自动调整表的底层存储分区。分区数量会根据应用程序流量或预配置容量的变化而纵向扩展。针对表流量的总体负载变化,或者单个分区的负载变化,系统可能会拆分分区。当分区拆分时,如果读取或写入操作试图操作该特定分区,则可能会出现系统错误。要故障排除此错误,请为您的表构造系统错误指标。为统计数据选择总计,为周期选择 1 分钟。有关更多信息,请参阅 Amazon Keyspaces metrics and dimensions

要故障排除与读写相关的系统错误,请启用应用程序或客户端的日志记录机制。对因为 5xx 错误代码而失败的请求实施重试策略,策略使用指数回退算法。

  • 如果您在 Java 应用程序中使用 Apache Cassandra 驱动程序,请将 advanced.retry-policy 添加到驱动程序配置中以启用重试功能。您可以将此重试策略添加到 application.conf 文件中。
  • 如果您的应用程序使用 Python 编制,那么您可以将 KeyspacesRetryPolicy 整合到您的解决方案中,以便针对每个服务器端的错误实施重试操作。有关更多信息,请参阅 GitHub 上的 AWS Samples 存储库中的 amazon-keyspaces-examples

内部服务器错误通常是暂时性的,一段时间后可由 Amazon Keyspaces 服务解决。但是,如果您遇到的 InternalServerError 异常超过成功请求的数量,请联系 AWS Support 并提供以下信息:

  • Keyspace 名称
  • 表名
  • 区域
  • 问题开始时间
  • 关于问题是周期性还是间歇性的信息
  • 客户端驱动程序和应用程序日志
AWS 官方
AWS 官方已更新 6 个月前