请问PHP如何实现“代码热更新”

是这样,我有一个PHP脚本,不断地从队列里取出任务予以处理,大致逻辑:requiredo_job.php;while(true){$job=queue_pop();//取出一个任务,阻塞调用do_job($job);//这个函数来自do_job.php}
该脚本直接从命令行启动:nohupphpmain.php&
但是随着业务的发展,我发现要处理的任务种类越来越多,所以我需要不断地修改do_job()函数,以处理新类型的任务或更改之前的逻辑;但是每次修改这个函数,我都需要先kill掉之前的进程,然后再次执行上面的命令行,非常不方便。
我想问,如何在不停止main.php进程的条件下,更新do_job.php?如果可以的话,尽量不要引入重量级的第三方框架。
我知道有一种方案可行,就是每当收到任务后,创建一个php子进程,把任务通过某种进程间通信机制传给它来处理,就像Apache服务器。但是我觉得这种方案过于重量级了,因为多数情况下do_job()函数很简单,很快就能执行完,专门为它创建一个进程,有点“杀鸡用牛刀”。
谢谢!
慕森卡
浏览 1278回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript