每当我们触发insert查询时,该特定的表会在一段时间内被锁定。根据需要在数据库中插入的行,该时间可以是几微秒或几秒。
我正在为一所大学开发一个应用程序,它有超过一个lac的用户。
我正在处理它,因为前几天我在谷歌上搜索它,我得到了如下的统计数据
10 simple read query = 1 simple write query主要的问题是notification,每当老师发布一些更新时,我都会通知学生,只有那些感兴趣的学生才会收到通知。因此,一次更新可能会有10000+通知,这肯定需要3-5秒的(waiting time)时间。所以所有的读操作都会在队列中。
那么有没有办法缩短等待时间呢?
发布于 2012-07-04 18:33:52
也许您可以使用InnoDB而不是MyISAM,因为前者具有行级锁定,而后者在写入时具有表级锁定。如果您使用InnoDB作为表引擎,则只有一行被锁定,但仍然可以查看任何其他内容。
https://stackoverflow.com/questions/11327174
复制相似问题