【问题标题】:Error 504 on RoR app in AWS EBS and AuroraAWS EBS 和 Aurora 中的 RoR 应用程序出现错误 504
【发布时间】:2020-10-17 09:53:21
【问题描述】:

我们正在连接到 AWS Aurora MySQL 集群(预配置)的 AWS 弹性 beanstalk 上开发一个 Ruby on Rails 应用程序。我们有一些长时间运行的查询,当我们运行它们时遇到错误 504,这似乎在 1 分钟标记处始终发生,我们做了许多配置(如下所列)试图增加这个阈值而没有任何运气。

我们在 nginx.conf 中对此进行了更改:
keepalive_timeout 400s ;

还有:
proxy_connect_timeout 43200000;
proxy_read_timeout 43200000;
proxy_send_timeout 43200000;

我们已经将 Elastic Beanstalk 中负载均衡器的空闲超时更改为 300 秒。

我们考虑更改 Aurora 中默认具有此配置的 MySQL 超时变量:

interactive_timeout:28800
等待超时:28800
...

通过更改 Aurora 的组参数,但出现此错误:

保存错误:无法修改默认参数组。 (服务:AmazonRDS;状态码:400;错误码:InvalidParameterValue;请求 ID:814984cf-7231-4dd8-b3dd-762b16132652)

我也尝试创建一个新参数组,但是当我尝试将其分配给数据库集群/实例时,只有默认参数组作为选项出现。

有人有见解吗?

【问题讨论】:

    标签: ruby-on-rails amazon-web-services nginx amazon-elastic-beanstalk amazon-aurora


    【解决方案1】:

    Aurora 使用两个参数组;集群参数组和实例参数组。您可能已经创建了一个集群参数组,并试图将其分配给实例,反之亦然。

    同时创建一个新的集群参数组和一个新的实例参数组。然后编辑集群以设置集群参数组。然后您必须编辑集群中的每个实例并设置实例参数组。

    更新集群和实例后,通过查看详细信息检查参数组是否“同步”(应显示在列出参数组的位置旁边)。如果它们不同步,则您必须重新启动实例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      • 2017-11-05
      • 1970-01-01
      • 2018-09-13
      • 2021-02-16
      • 2015-03-20
      • 2021-01-26
      相关资源
      最近更新 更多