MySQL连接的数量和容量

时间:2012-12-11 08:25:46

标签: mysql

我知道这是非常基本的。但是想要清除一些mysql连接的概念。我有以下情况。

  • Db服务器和Web服务器位于不同的位置。
  • Web服务器正在运行基于文章的网站。
  • 文章数据存储在数据库服务器中。
  • 网络服务器每秒发送100篇文章/页。

我的问题如下:

  • Web服务器和数据库服务器之间的单一连接可以处理吗?
  • 默认情况下会创建多少个连接?
  • 如果我认为连接是管道,那么每个连接的i / o容量是多少?
  • db server的RAM,处理器,操作系统和连接数之间是否有任何关系?

提前致谢

1 个答案:

答案 0 :(得分:0)

  

Web服务器和数据库服务器之间的单一连接可以处理它吗?

单个连接可以传递多个请求,但不能同时传递,并且仅针对单个客户端进程。因此,最佳扩展方法可能是每个Web服务器进程一个连接池,其中线程可以获取已建立的连接以执行其请求,并在完成后将连接返回到池。

  

默认情况下会创建多少个连接?

取决于客户端语言,MySQL连接器实现,您使用的框架,Web服务器配置,以及可能的一些其他详细信息。因此,最好的办法是简单地查看MySQL服务的网络连接列表,例如:使用lsofnetstat

  

如果我认为连接是管道,那么每个连接的i / o容量是多少?

限制因素可能是共享资源,例如网络带宽或两端的处理能力。因此,连接数不应对数据传输速率产生很大影响。但是,建立连接的开销很大,这就是我建议使用池减少连接数的原因。

  

db server的RAM,处理器,操作系统和连接数之间是否有任何关系?

可能是,如果某个应用程序根据这些参数做出选择,但总的来说我认为这不太可能。