MySQL MAX CONNECTIONS每小时最佳值

时间:2016-12-31 13:03:39

标签: php mysql

我的项目是一个包含动态页面的网站。

每次用户运行查询(返回由PHP生成的表中显示的结果)时,我都会连接到数据库,查询它,然后立即断开连接。

如果我估计用户可以进行的查询/小时的最大值,结果可能是60分钟x 5次查询/分钟= 300次查询/小时。

我还有一些由JavaScript生成的额外查询,我可以为这些添加额外的每小时100。

所以考虑到上述情况,我的MAX CONNECTIONS ...应该是400.当然,这可能是最大值。

这是对的吗?你能告诉我一个"平常"价值是?

编辑:我对此事没有任何经验,我不是dbA。我认为限制每个帐号的这些数字是一个很好的安全政策。

我的连接代码是:

document.querySelector("#id")

2 个答案:

答案 0 :(得分:1)

首先......

你限制这个的目的是什么?如果您担心服务器资源,则无需担心。 MySQL非常高效,每小时可以管理数万个查询。为什么设置一个可能导致您以后遇到问题的下限?我根本没有理由设置这个价值,或者肯定不会低于你最疯狂的想象力可以想象你的网站成长的东西。所以,如果你决定指定它,请确保它是一个像100,000这样的大数字。

<强>其次...

也许你在问,因为你正在创建用户帐户。但是,此处指定的参数是可选,在大多数情况下可能不是很重要。我建议除非有特定问题,否则你不要指定这些选项。

http://dev.mysql.com/doc/refman/5.6/en/user-resources.html

答案 1 :(得分:1)

当您GRANT访问您的php网络应用程序时,不要限制MAX_CONNECTIONS_PER_HOUR,MAX_QUERIES_PER_HOUR或任何此类内容。什么都没有好处。如果您的php应用程序达到了这些限制,它将开始向用户抛出令人讨厌的模糊错误消息。那些东西不适用于Web应用程序。对于企业风格的应用程序,adam,barney和charlie都在MySQL服务器上拥有自己的用户名和密码。

Web服务器计算机通常只有一个或两个用户名/密码组合代表所有用户使用。在用户知道密码的MySQL服务器上创建帐户是不好的安全做法。

对于总体最大连接数,它取决于MySQL服务器计算机的大小以及为Web应用程序提供服务的Web服务器计算机的数量。 mysqli_ has persistent connections built in,因此重新使用连接。当连接用完时,通常php请求排队。

每台网络服务器机器100个连接可能没问题,除非您的网络服务器机器是巨大的四核怪物,每个都有16克内存。