【问题标题】:Keep-alive in curl / php在 curl / php 中保持活动状态
【发布时间】:2011-09-16 12:19:32
【问题描述】:

我正在用 PHP 编写一个网关脚本,它连接到远程服务器,获取一些信息并将其返回以供 JSON 使用(不可能使用 JSONP)。

此网关每秒都会被请求一次,因此 curl 使用 keep-alive 非常重要。据我所知,curl 会自动完成,如果我们将在多个请求中使用相同的句柄。

问题是:如何在两次重新加载之间存储句柄?句柄资源不能存储在会话中,也不能序列化。

或者也许还有其他方法可以确保 curl 保持活动状态?

【问题讨论】:

  • 你只是用它作为json请求的代理吗?
  • 不仅,我还在对传入的请求进行一些逻辑修改

标签: php http curl keep-alive


【解决方案1】:

一般来说,每个请求都独立于其他所有请求而存在。请求之间不会共用连接和其他资源。

有可能的解决方案

  1. 使用具有内容适应功能的代理(Squid 和 Greasyspoon 可以在这里工作)这确实需要一些工作来设置。但是您将能够使用 java、javascript 或 ruby​​ 编写脚本来适应您的内容。

  2. 将 PHP 脚本作为守护进程运行,有点像网络服务器。这需要一些工程设计,但可以使用 PHP 来完成。您将进入套接字和线程。

您可以以此为起点:http://nanoweb.si.kz/

【讨论】:

    猜你喜欢
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-04-14
    • 2011-11-22
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多