首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP响应并行请求

PHP响应并行请求
EN

Stack Overflow用户
提问于 2016-01-16 01:31:39
回答 1查看 1.3K关注 0票数 2

我有一个应用程序,通过websocket与我的服务器进行通信。我用的是棘轮,一切都很完美。接下来我要实现的是向其他服务器发出请求,并通过websocket将响应推送到客户端。我的问题是如何作出平行的要求与反应。假设我有5个端点,我想得到并行(线程)响应。例如,我想将每个端点都调用为.2s,并向websocket服务器客户端发送响应。例如(这只是演示代码):

代码语言:javascript
复制
$server->loop->addPeriodicTimer(.2, function ($timer) {
    curl('endpoint1');
});

$server->loop->addPeriodicTimer(.2, function ($timer) {
    curl('endpoint2');
});

$server->loop->addPeriodicTimer(.2, function ($timer) {
    curl('endpoint3');

});

但是这个计时器不是这样工作的。甚至有可能用反应来实现这一点吗?

我没有显示websocket代码,因为客户端之间的通信很好。

EN

回答 1

Stack Overflow用户

发布于 2016-05-11 12:08:52

一开始。"React (棘轮)“-在一个线程模式下操作(功能列表)。也就是说,任何会阻碍这个过程的东西-坏主意.Curl请求-将停止工作套接字服务器,直到它收到响应。

对于您的应用程序,我将使用ZMQ。重点是:

  • 运行辅助进程(例如: ZMQWorker),
  • 您的服务器(通过ZMQ)在ZMQWorker上发送curl数据。
  • ZMQWorker发送卷曲请求
  • 发送请求后,ZMQWorker将响应发送到WebSocket (通过ZMQ)。你可以通过reactphp/zmq获得

如果您需要发送大量并发请求--您将需要线程库--它提供多线程。

我还听说可以提供工作线程+ libevent,但我个人没有这样做。

但是使用架构ZMQ,您可以得到一个分布式架构,以同样的可伸缩性!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34822562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档