TA贡献1859条经验 获得超6个赞
如果你用nginx,可以利用fastcgi处理
主要用两个方法:
//这里写同步代码 fastcgi_finish_request(); set_time_limit(0); //这里写异步代码
TA贡献1829条经验 获得超4个赞
PHP本身是不支持异步,但你可以用协程去实现!
TA贡献1810条经验 获得超4个赞
如果你这个异步处理不是立马要处理结果,你可以把要异步处理或者比较耗时的处理抽出来,单独放在一个action里。再在代码里面curl里面请求这个链接,超时时间设为1s(php curl最短只能设置为1s),设置不获取结果。。。
TA贡献1796条经验 获得超4个赞
PHP本身不支持异步,可以借助 Redis 队列或专业的队列服务,把耗时的操作放入队列中异步执行。
TA贡献1858条经验 获得超8个赞
建议使用队列实现,主流的PHP框架(thinkphp,laravel等)基本都集成了队列功能或拥有成熟的队列插件,稳定且易于使用。不用自己去从0开发。
TA贡献1830条经验 获得超3个赞
可以采用pthread扩展
TA贡献1852条经验 获得超7个赞
可以采用swoole一些扩展来实现
TA贡献1810条经验 获得超5个赞
队列或PHP扩展 thread 类来实现
举报