php 怎样实现异步处理接口


我有个需求:
php在执行过程中需要请求好几次接口文件(使用的函数封装的)
但是我不想等待这个函数的返回值,就接着往下执行。
egg:

   
  function requestAPI() {
 

do something ... }

   
  mycode ...
  
requestAPI();//这里可能需要10秒甚至更长。因为这里是用户前台触发的,我想类似放后台执行,不需要等待这个函数,就往下处理。
mycode ...

请问有什么好的方案。提高用户的体验。

讨论 php

mikicn 12 years ago

如果PHP是用fastcgi方式运行的,可以用fastcgi_finish_request()函数提前终止HTTP请求,然后把耗时的逻辑写在该函数后面

伊尔明斯特 answered 12 years ago

Your Answer