Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
同时作为套接字服务器和客户端运行的PHP脚本_Php_Sockets_Laravel_Websocket_Guacamole - Fatal编程技术网

同时作为套接字服务器和客户端运行的PHP脚本

同时作为套接字服务器和客户端运行的PHP脚本,php,sockets,laravel,websocket,guacamole,Php,Sockets,Laravel,Websocket,Guacamole,对于一个新项目,我需要实现远程桌面协议。远程服务器的地址需要得到保护,并且可能永远不会发送到客户端。经过大量的研究和测试,我发现它也有一个Java客户端。该项目是作为API设计的,所以我开始将Java客户机示例的一些部分移植到PHP 用例如下所示: 用户登录到我的服务(Laravel应用程序) WebSocket连接建立到持续运行的PHP脚本(使用) 授权后,需要为鳄梨酱守护进程建立一个TCP套接字 通过WebSocket发出的命令需要定向到Guacamole守护进程,反之亦然 使这一点变得

对于一个新项目,我需要实现远程桌面协议。远程服务器的地址需要得到保护,并且可能永远不会发送到客户端。经过大量的研究和测试,我发现它也有一个Java客户端。该项目是作为API设计的,所以我开始将Java客户机示例的一些部分移植到PHP

用例如下所示:

  • 用户登录到我的服务(Laravel应用程序)
  • WebSocket连接建立到持续运行的PHP脚本(使用)
  • 授权后,需要为鳄梨酱守护进程建立一个TCP套接字
  • 通过WebSocket发出的命令需要定向到Guacamole守护进程,反之亦然
使这一点变得复杂的是,应用程序需要能够同时为多个客户端提供服务。需要同时建立多个TCP套接字和管理多个WebSocket连接

对于我的简单测试,我通过
fsockopen
打开套接字,然后循环等待数据。有了这个,我显然无法同时收听多个套接字(至少在现实中是如此),但我偶然发现:

将此库视为
fsockopen()
stream\u socket\u client()
的异步版本

这听起来像是我所需要的,但我再次使用的是HOA及其WeSocket服务器,它显然也在循环中运行(调用
WebsocketConnectionHandler->run()

我应该使用React的Socket客户端,还是应该尝试使用HOA的Socket库(因为我已经在使用WebSocket了)?React和HOA在它们的事件循环中是否兼容,所以我可以同时监听WebSocket客户端和TCP连接吗

如果是这样的话,有谁能给我一些关于如何开始耦合这两个方面的提示或示例吗?谢谢