Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php mysql事务处理_Php_Mysql_Codeigniter - Fatal编程技术网

php mysql事务处理

php mysql事务处理,php,mysql,codeigniter,Php,Mysql,Codeigniter,在web开发中,用户请求的执行时间非常重要。 通常,它显示页面加载的速度。 关于使用php mysql的事务,我有几个问题 在向数据库插入数据的示例中。我们可以在插入数据和用户响应之间拆分流程吗?具体来说,当用户请求插入数据时,有时需要花费大量时间逐个插入数据。我们是否可以将insert请求放在服务器端的数据库事务队列中,并直接向用户发送响应?我问这个问题是因为我认为有时候用户最好不要等待事务处理 如何在mysql数据库请求中创建队列?例如,用户A请求从数据库更新数据,然后用户B请求获取数据。请

在web开发中,用户请求的执行时间非常重要。 通常,它显示页面加载的速度。 关于使用php mysql的事务,我有几个问题

  • 在向数据库插入数据的示例中。我们可以在插入数据和用户响应之间拆分流程吗?具体来说,当用户请求插入数据时,有时需要花费大量时间逐个插入数据。我们是否可以将insert请求放在服务器端的数据库事务队列中,并直接向用户发送响应?我问这个问题是因为我认为有时候用户最好不要等待事务处理
  • 如何在mysql数据库请求中创建队列?例如,用户A请求从数据库更新数据,然后用户B请求获取数据。请求同时发生。我们是否可以延迟用户B的请求,以便将更新的数据发送给用户B?我读过关于锁数据库的文章,但这是这个案例的唯一答案吗
  • 我希望我的问题不要太宽泛。多谢各位

  • 对。您可以立即向用户发送数据,并让脚本一直运行到完成。客户端将看到“加载”一直进行到完成。或者,您可以创建一个查询队列,并将查询放在那里,以便由服务器上的单独进程运行。您可以在PHP中使用fork,但您需要的是一个“fork-and-forget”进程,它将生成一个僵尸进程。这不是一个好的做法。真正的问题是:为什么你让网络用户在你的数据库中塞进这么多数据?它散发着非常糟糕的设计气息

  • 每个查询都是一个文本字符串。将文本字符串放入队列中。什么是队列?它可能是一个文本文件。它可能是内存中的数组。它可以是数据库中的一个表。它可能是一只经过训练的猴子,能在电传打字机上看到的文字上涂鸦。由您决定如何实现队列。然后,让web请求将查询写入队列,服务器端进程读取并处理这些查询