PHP系统100个人同时处理mysql插入操作,有什么好的优化代码写法
程序员文章站
2022-06-03 14:22:48
...
表的类型是myisam,并发操作,
需要按下面说的锁定表吗?
还是mysql会自动排队依次处理100个请求
需要按下面说的锁定表吗?
还是mysql会自动排队依次处理100个请求
mysql_query("LOCK TABLES `user` WRITE");//锁住`user`表$sql = "INSERT INTO `user` (`id`, `username`, `sex`) VALUES (NULL, 'test1', '0')";$res = mysql_query($sql);if($res){echo '提交成功。!';}else{echo '失败!';}mysql_query("UNLOCK TABLES");//解除锁定
回复讨论(解决方案)
插入时不需要锁表(但你可以附加空闲时再插入的子句)
只有在修改时才可能需要锁表。
但允许多人同时修改一条记录,这本身就不合常理。业务流程有问题
插入是原子操作,不需要锁表。本身自动就会锁。
给我一个100人同时插入的场景说明
无论你多少人同时插,数据库写入时都会有先后,只是用户感觉不到而以
楼主的插纯指新增记录吗?