【发布时间】:2021-04-11 15:55:52
【问题描述】:
尽管 Cloud SQL 的限制足够高,但我们的应用程序仍会出现“连接被拒绝”错误。
我在云运行错误日志中发现了这个错误:
"Exceeded maximum of 100 connections per instance for CLOUD_SQL_INSTANCE_NAME."
logName: "projects/PROJECT_ID/logs/run.googleapis.com%2Fvarlog%2Fsystem"
我们的 Cloud SQL (MySQL 8) 正在使用这个虚拟机运行:db-n1-standard-1,它的 max_connections 变量设置为 4030(这是默认值),所以我猜这个限制不是来自数据库本身。
在文档中没有提到来自 Cloud Run 端的 Cloud SQL 连接的任何限制,只是数据库本身强制执行的一般限制。
我错过了什么吗?它是错误还是未记录的功能? 感谢您的任何回答!
【问题讨论】:
-
您是使用 VPC 连接器连接到 Cloud SQL 还是使用内置的 /cloudsql 套接字?澄清这一点会很好。
-
您是每个容器实例使用一个连接,还是忘记打开/关闭连接?
-
奇怪,100 的限制是用于 PostgreSQL(与您的机器类型)!您可以运行此命令并查看数据库中设置的值吗?
SHOW VARIABLES LIKE "max_connections"; -
@AhmetB-Google:我们为 Redis Memorystore 使用 VPC 连接器,为 Cloud SQL 连接使用内置 /cloudsql 套接字。
-
@guillaumeblaquiere:正如我在问题帖子中所说,max_connections 设置为 4030
标签: google-cloud-platform google-cloud-sql google-cloud-run