问题描述如何在thinkphp下 后台作为客户端用workerman向远程服务器发送socket长链接问题出现的环境背景及自己尝试过哪些方法thinkphp5.1 封装的server 中 没有 AsyncTcpConnection类 求指点相关代码// 请把代码文本粘贴到下方(请勿用图片代替代码)/**Worker控制器扩展类*/abstract class Server{protected $worker;protected $socket = '';protected $protocol = 'http';protected $host = '0.0.0.0';protected $port = '2346';protected $option = [];protected $context = [];protected $event = ['onWorkerStart', 'onConnect', 'onMessage', 'onClose', 'onError', 'onBufferFull', 'onBufferDrain', 'onWorkerReload', 'onWebSocketConnect'];你期待的结果是什么?实际看到的错误信息又是什么?如何能够调用AsyncTcpConnection类 作为客户端 发送远程链接需要保持长连接
2 回答
largeQ
TA贡献2039条经验 获得超7个赞
不明白需要实现的功能。
如果只是发送socket数据,则直接使用php创建一个socket连接发送即可。
如果说,想要在web端,调用workerman连接远程socket服务器的话,其实还不如直接在socket服务器开一个http服务。因为web端本身就是一个短连接。用户点击的http请求结束之后就结束了。
皈依舞
TA贡献1851条经验 获得超3个赞
如果远程服务器http服务不方便,则在本地用wokerman 守护进程跑一个客户端,web端用http服务调用客户端发送socket请求。这其实是靠wokerman的客户端维持长链接
AsyncTcpConnection 在vendor/workeman/Connection
文件夹下,命名空间Workerman\Connection\AsyncTcpConnection
- 2 回答
- 0 关注
- 4091 浏览
添加回答
举报
0/150
提交
取消