【问题标题】:Does queries per second in MySql really matter?MySql 中每秒的查询真的很重要吗?
【发布时间】:2017-04-11 04:29:49
【问题描述】:
例如,如果您有一个网页,每次访问该页面时,都会向 MySQL 数据库 写入 10 次(5ms 每个查询相对便宜)。它与只写入一个查询 50ms 的页面加载相同吗?我基本上要问的是每秒查询真的很重要吗?它会更快地成为我的数据库的瓶颈吗?
如果我有一个相当大的数据库,每秒写入 10000 个廉价查询与每秒写入 1000 个更昂贵的查询有什么区别吗?
【问题讨论】:
标签:
mysql
sql
ruby-on-rails
database
【解决方案1】:
除了执行查询所花费的实际时间之外,Rails 应用程序还需要建立连接并关闭它。
举个例子,比较一次写入一定数量的数据与 10 次写入,每次写入数据量的十分之一。
在前一种情况下,只需要一个数据库连接,对连接池的压力很小。写入在 50 毫秒内完成,在此期间,其他 9 次写入也可能进入并执行。另一方面,在后一种情况下,来自池的 10 个连接必须单独用于相同的数据。由于建立连接的开销,10 次写入中的每一次所需的时间可能会超过 5 毫秒。
数据库与其他任何事物一样,都可以从规模经济中受益。当然,在某些情况下,您只需要发生如此多的连接。但是,在所有其他因素相同的情况下,如果您的业务逻辑可以通过一次大型写入而不是十次较小的写入来完成,那么您可能希望使用单次写入。