MYSQL同时插入和删除IMPACT

时间:2018-12-07 09:30:46

标签: php mysql database laravel scheduled-tasks

这是场景。

  1. 我每分钟都有一个计划作业,它将数据插入到MySQL表“ demo”中。每天的记录总数为60 * 24 = 1440。

  2. 表演示已经具有55000条记录。

  3. 我要清除的记录少于今天的日期。因此,我每天使用以下代码在上午10.00进行工作。


$demo = Demo::whereDate('created_at','<', Carbon::today());

if(count($demo) > 0)
   {
     $demo->delete();
   }

现在我将同时插入同一张表并从同一张表中删除。

我想知道它会安全吗?否则会有错误或其他影响。

3 个答案:

答案 0 :(得分:0)

我认为这不会成为问题,因为Carbon::today()将返回00:00:00作为时间,并且您正在10:00:00执行删除作业。只有插入时间超过10小时的记录才会被删除。

答案 1 :(得分:0)

据我说,应该没有任何问题。如果同时有两个请求,MySQL服务器将自行处理它们。加载网站时也会发生同样的事情。同时有很多电话。

答案 2 :(得分:0)

没有问题。想象一下,您每分钟发出1000个请求,没有一个将覆盖另一个请求。