PHP守护进程并与其交互

29 浏览
0 Comments

PHP守护进程并与其交互

我正在开发一个与Twitter API密切配合的Web应用程序。

基本上,每当用户点击特定按钮时,我需要将此操作记录到我的数据库(1)中,并通过API(2)代表用户发布一条推文。

由于这些操作在某种程度上是相互关联的,它们必须在“同一时间”发生,更确切地说,如果(1)成功,则发布推文(2)。

在本地数据库中添加一行(1)是瞬时的,发生在<1毫秒或更短的时间内,但Twitter API很慢,可能需要超过600毫秒才能成功,对于最终用户来说等待这么长时间是不可接受的,更不用说有时它可能更慢,甚至更糟,超时。

所以我在想是否有一种方法可以让一个PHP脚本充当服务器接受请求并按照它们到达的顺序排队。

当然,我可以每次都启动一个脚本,但想象一下如果同时启动100个脚本,这将导致巨大的内存使用和开销,以及在它们完成工作后终止它们。

0
0 Comments

PHP daemon and interact with it这个问题的出现的原因是因为作者想要创建一个能够从其他脚本中与之交互的PHP守护进程,但是作者发现他无法从其他脚本中与守护进程进行通信。

为了解决这个问题,作者在文章中提到了一些解决方案。首先,作者提到可以创建一个守护进程来读取数据库,并将数据插入到数据库队列中。然而,作者并不希望使用这种异步的方式,而是想要一种按需的方式。接下来,作者提到了一个名为"PHP-Daemon"的解决方案,可以在GitHub上找到。

文章中还提到了一个重要的提示,即需要注意遗留警告。除此之外,文章还给出了一个链接,指向了一个关于创建PHP守护进程的教程,被形容为PHP守护进程教程的“圣经”。

0