52

我想为我的大学的社交网站建立一个 MySQL 数据库。

我的应用最多可以有 10,000 个用户。可能的最大并发 MySQL 连接数是多少?

4

3 回答 3

80

根据 MySQL 文档:http ://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_user_connections

 maximum range: 4,294,967,295  (e.g. 2**32 - 1)

在您接近该限制之前很久,您的服务器上的内存、文件句柄和网络套接字可能已经用完。

于 2013-02-15T18:59:49.683 回答
45

您可能总共有 10,000 个用户,但这与并发用户不同。在这种情况下,正在运行的并发脚本。

例如,如果您的访问者访问 index.php,并且它进行数据库查询以获取一些用户详细信息,则该请求可能会持续 250 毫秒。您可以通过仅在查询时打开和关闭它们来进一步限制这些 MySQL 连接的生存时间,而不是在脚本期间保持打开状态。

虽然很难制定任何类型的公式来预测一次将打开多少个连接,但我会冒险进行以下操作:

在任何给定时间,您的活跃用户可能不会超过 500 个,而用户群为 10,000 个。在这 500 个并发用户中,一次最多可能有 10-20 个并发请求。

这意味着,您实际上只建立了大约 10-20 个并发请求。

正如其他人所提到的,您在那个部门没有什么可担心的。

于 2013-02-15T19:02:51.600 回答
1

我可以向您保证,原始速度最终取决于索引的非标准使用,以实现使用大型表的超快速度。

于 2020-10-20T22:08:45.740 回答