Php mysql并发解决方案:1。将多个数据插入一条SQL语句中;2.将insert语句修改为“insert in ` insert _ table `(` datetime `、` uid `、` content `、` type `)”。
推荐:“PHP视频教程”
在项目中,我们经常会遇到高并发性的问题。例如,100个人在某个时间点对相同的数据进行更改,这将导致问题,并且产生的数据将是不准确的。解决高并发性问题的常用方法是在读取数据时添加缓存,在写入数据时将其添加到队列中。这里有一些处理高并发性的常用方法供您参考。
1.对于一些数据量大的系统,数据库面临着查询效率低、数据存储时间长等问题。特别是像报告系统一样,每天导入数据可能需要几个小时或十几个小时。因此,优化数据库插入的性能是很有意义的。通过对MySQL innodb的性能测试,我们找到了一些提高插入效率的方法,供大家参考。
1.一条SQL语句插入多条数据。常用的插入语句,例如:
INSERT INTO ` INSERT _ table `( ` datetime `、` uid `、` content `、` type `)值(& # 39;0 & # 39;,& # 39;userid _ 0 & # 39,& # 39;内容_ 0 & # 39;,0);INSERT INTO ` INSERT _ table `( ` datetime `、` uid `、` content `、` type `)值(& # 39;1 & # 39;,& # 39;userid _ 1 & # 39,& # 39;内容_ 1 & # 39;,1);修改为:
INSERT INTO ` INSERT _ table `( ` datetime `、` uid `、` content `、` type `)值(& # 39;0 & # 39;,& # 39;userid _ 0 & # 39,& # 39;内容_ 0 & # 39;,0),(& # 39;1 & # 39;,& # 39;userid _ 1 & # 39,& # 39;内容_ 1 & # 39;,1);修改后的插入操作可以提高程序的插入效率。此处SQL执行效率高的第二个原因是合并后日志的数量(由MySQL和innodb事务的binlog引起的日志)减少了,这减少了数据量和刷日志的频率,从而提高了效率。通过合并SQL语句,还可以减少SQL语句的解析次数,减少网络传输的输入输出。这里提供了一些测试比较数据,即导入单个数据并将其转换成一个用于导入的SQL语句,并分别测试100、1000和10000条数据记录。
您也可以在交易中插入。
这是php mysql并发解决方案的细节