1

不,我不是想看看我可以在一个问题标题中加入多少流行语。

我正在通过我的 PHP 应用程序中的 cURL 向某些 Web 服务发出 REST 请求。这些请求需要经常发出,因为大部分应用程序都依赖于这个 API。但是,请求存在严重的延迟(2-5 秒),这让我的应用程序看起来非常缓慢。

虽然我已经完成了一个建议在 Memcached 中缓存这些请求的解决方案,但我仍然对应用程序中出现的那种延迟不满意。

所以我的想法是:我可以在后台实现 AJAX 长轮询,这样用户就不会直接体验到延迟。REST 请求/Memcache 查找将全部通过 AJAX 以设定的时间间隔完成。

但这对我来说真的很新鲜,我不确定这是否是最好的方法。如果我走在正确的轨道上,我知道 PHP + Apache 不会很好地处理这样的事情。但是 PHP 是我唯一知道的语言。理想情况下,我想在 Python 中设置类似 Tornado 的东西,但我只是不确定我现在是否过度设计。

这里的任何想法都会有所帮助并非常感谢。

4

1 回答 1

0

microtime()这是一个非常快速的转变,但我回过头来通过在整个相关流程中回显来分析我的应用程序。事实证明,我没有并行化我的 cURL 请求,而这正是我真正受到打击的地方。这样做大约需要 2 秒,这意味着在每个 cURL 请求连续完成时会有很长的延迟。

于 2010-11-22T05:50:20.277 回答