【问题标题】:Handling multiple HTTP GET requests on same TCP connection parallely并行处理同一 TCP 连接上的多个 HTTP GET 请求
【发布时间】:2014-01-03 10:18:38
【问题描述】:

我对学习 PHP 很陌生。我正在尝试创建一个 PHP 脚本,该脚本将处理多个 GET 请求,这些请求是来自客户端软件的 JSON 编码,通过单个 TCP 连接同时连接到 PHP 脚本。

在阅读时,我遇到了 StackOverflow 上的“HTTP 管道,并行处理请求”一文。好吧,我想在请求到达时处理请求。按照设计,请求是流水线式的,因此请求会被一一处理。

这里的问题是,如果客户端软件向 PHP 脚本发出 100 个请求,相差几毫秒,我的 PHP 脚本将需要一些时间来处理每个请求,并最终在最后一个请求之前添加大量时间处理并发送回请求实体。

我正在使用 $_GET 方法来检索请求。我一直在寻找这些信息,但似乎没有发现任何实质性的东西。我将不胜感激这方面的任何帮助。谁能指导我正确的方向。

提前谢谢你。

【问题讨论】:

    标签: php json http


    【解决方案1】:

    如果您使用的是 Apache 之类的 Web 服务器,则会按照您所描述的确切方式为您处理。

    【讨论】:

    • 感谢您的及时回复。我正在使用 Apache 网络服务器。我需要在 Web 服务器上进行任何特定设置,以便我的 PHP 脚本可以同时处理这些请求。我目前正在阅读有关 HTTP 中的持久连接的信息,但似乎无法找到使其工作的方法。再次感谢。
    • 不,你只需要确保你的PHP没有任何瓶颈,比如多次UPDATE调用同一个表,这会导致第一个SQL阻塞
    • 谢谢。 PHP 脚本不处理任何数据库。我打算通过单个 TCP 连接并行解析来自同一请求实体的单个请求。目前,请求正在我的 PHP 脚本中使用 $_GET 会话一一流入。该脚本串行处理请求并将输出放入 JSON 编码数组中,以响应请求实体。处理完最终请求后,脚本会将整个响应发送回请求实体。这导致脚本在响应之前一直处理到最后一个请求。并行进程要求。
    猜你喜欢
    • 2011-04-21
    • 2011-04-24
    • 1970-01-01
    • 2011-08-05
    • 2021-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-27
    相关资源
    最近更新 更多