等待图api /批处理api的结果


Waiting for result of graph api / batch api

我怎么能不等待API调用的响应?

我有大量的API调用(一个依赖于另一个),但应用程序不需要结果。直接说"Facebook做这个",不要等待回应。

我怎么能不等待响应?

我曾经参与过一个项目,在那里我们实现了类似的排队功能。(该应用程序张贴在大约150页的墙上,以及一些其他数据收集。)

我们的解决方案是:

我们有一个Queue表,其中填充了Jobs。它们由参数令牌和特定的Facebook API调用组成。表中还有一个status列(设置为scheduled/success/fail)、一个response列和几个日期时间列(scheduled & .

一个脚本查找预定的作业,然后运行API调用并收集响应,该脚本由一个cron作业以任意间隔运行。

应用程序本身可以查看Queue表,并生成一个报告,其中包含已运行的作业及其响应,以及即将调度的作业。

我相信你正在寻找一种方法来做异步php调用。你可能最终自己做一些查询,因为我不认为PHP FB SDK支持这样的查询。

我相信curl_multi (php5 only)是您寻找的解决方案:

  • http://pl.php.net/manual/en/function.curl-multi-exec.php(请查看书籍示例)

你可能也会发现这个QA很有帮助:

    异步PHP调用?