如何在PHP控制台中创建数据库侦听器

时间:2018-08-20 13:39:44

标签: php

我的数据库很大,我的用户可以从该数据库中取样。 他们建立非常大的查询,可链接约30-40个表。查询的结果有时会达到2分钟。我尽可能优化了服务器,但数据传输率仍然很低。

因此,我对查询进行了视觉效果,以便用户可以保存请求,并在执行查询时将结果发送到浏览器中。

但是有一个问题。我不知道如何对数据库执行请求扫描。

我创建了事件系统。我在数据库中添加事件书签,然后对其进行处理。另外,我通过cron进行了数据库扫描。

但是cronis的问题是它没有时间在1分钟内工作,并且启动了一个新的cron,这增加了服务器的负载并创建了递归。

我想创建一个php任务,以便在保存用户的请求后,它开始执行它,但是仅在创建要执行的事件之后。

请问,我该怎么做呢?有什么方法可以帮助我呢?

谢谢

1 个答案:

答案 0 :(得分:1)

我将使用Laravel之类的框架并利用其队列系统。

https://laravel.com/docs/5.6/queues#job-events

已经为数据库实现了一个。

“使用Queue外观上的before和after方法,可以指定要在处理队列作业之前或之后执行的回调。”

我想这可以使您了解查询处理后的处理方法。