请任何人解释这个mysql并发连接。我的主机只提供 10 个并发连接。够了吗?。这是否意味着只有 10 个用户可以同时访问该网站?
4 回答
这是否意味着只有 10 个用户可以同时访问该网站?
这不是对 10 个并发用户意味着什么的明确衡量标准。考虑一下我拥有的以下假设博客:
我访问 example.com/blog,它在 100 毫秒内加载。然后我读了这个页面 3 分钟。在三分钟的过程中,我加载的页面花费了 100ms 的加载时间,其中 < 100ms 实际用于连接数据库。
这意味着在我加载页面的同时,其他 9 个人可能也在加载页面。然而,该页面已经打开了 3 分钟,并且没有耗尽任何并发连接,并且数百人可能已经加载了该页面,与我“访问该网站”无关的并发连接。
因此,重要的一点是,在任何给定的精确时刻,您是否会有超过 10 人访问它?假设您甚至找到了减少代码隐藏页面加载时间的最基本方法(php,而不是加载的外部资产),您将可以轻松地每小时处理数百人,而不会遇到“太许多连接”错误,这将是实际问题的信号。
另一方面——同样取决于你的内容——如果你认为你有足够的用户(或足够的数据库连接)偶然有超过 10 个用户都试图在完全相同的 ~100-200 毫秒时间内做某事窗口,在尝试刷新时仍然存在 - 然后您必须请求主机达到该限制或移动到其他地方。在这一点上,许多主机及其背后的 Web 服务器可以帮助记录这些问题或引起您的注意。在那之前,即使是中型网站,10 个并发用户也很有可能就足够了。
考虑这个问题的数学:如果您的平均页面执行时间是 5 秒,并且您有 300 个用户并且他们倾向于每分钟点击一次,那么 10 个连接将使您达到饱和点:((300 * 5) / 60) == 10. 您的选择:让您的页面更快(例如,亚秒级页面将增加您的限制 x6)或获得更多连接。否则,您的用户最终将等待更长时间。
这意味着只有 10 个用户可以同时访问数据库。
http://dev.mysql.com/tech-resources/articles/mysql-administrator-best-practices.html
10 是一个非常低的值,您可以放心地增加它。
不,不是只有 10 个用户可以同时访问该网站,而是同时可能的数据库连接数,即
一次,只有 10 个连接到达那里完成处理,其他请求需要等到连接被释放。
如果同时访问该站点的用户数量较少,那么这不是问题。但是,如果您需要为更多用户扩展网站,则需要增加此数字。