首页 > 解决方案 > 使用 Aws-RDS,只有 2 个应用程序用户获得过多的数据库连接?

问题描述

在此处输入图像描述

使用 Amazon-RDS,中型实例 (db.t2.medium) 的最大连接数限制为 400 左右,即使只有 2 个用户在使用该应用程序,它仍能获得几乎完整的数据库连接,仅与移动 api 一起使用 (android)不从其他任何地方拨打电话。可能是什么问题,所有这些连接来自哪里?入侵防御系统?可以 ddos​​ 导致这种情况,但我们购买了全新的服务器

标签: amazon-web-servicesamazon-rds

解决方案


完成连接后,您可能不会关闭连接。

以 root 用户身份登录数据库并执行以下查询:

select HOST, COMMAND, count(*) from INFORMATION_SCHEMA.PROCESSLIST group by 1, 2;

它将为您提供如下所示的输出:

+-----------+---------+----------+
| HOST      | COMMAND | count(*) |
+-----------+---------+----------+
| localhost | Query   |        1 |
| localhost | Sleep   |        1 |
+-----------+---------+----------+

如果您有两个具有稳定 IP 地址的用户,您可能会看到四行输出:每个用户两个,对于Sleep. 这表明您正在打开连接。

但是,如果您在移动设备上运行,IP 地址可能不稳定。您需要进行第二级分析,以查看它们是否都来自同一个 ISP。

DDOS 填满您的连接池的唯一方法是您泄露了数据库密码。如果是这种情况,您应该考虑您的数据库已损坏并重新开始(更加注意安全性)。


推荐阅读