当前位置: 首页 > 知识库问答 >
问题:

使用PHP的Websocket服务器

魏熠彤
2023-03-14

我目前正在开发一个PHP应用程序,它将使用websockets进行客户机-服务器通信。我多次听说PHP不应该用于服务器应用程序,因为缺乏线程机制、内存管理(循环引用)或不方便的套接字库。

到目前为止,一切都工作得相当好。我使用phpws作为websocket库和DBAL来访问不同的数据库系统;PHP版本是5.3.8。服务器最多可服务30个客户端。然而,特别是在最近几天,我读了几篇文章,指出PHP对于长时间运行的应用程序是无效的。

    null

共有1个答案

郭彬郁
2023-03-14

您可以尝试在服务器的另一个端口上的节点服务器上运行socket.io(也就是说,如果您没有使用goDaddy之类的托管计划)。

我正在使用它,表演真的很令人满意。我在端口80上有一个apache服务器为我的php文件提供服务,我的服务器-客户机通信是使用在端口8080(dev)或843(prod)上运行socket.io的Node.js服务器完成的。

node.js确实很轻,性能也很好,但您需要将其作为服务器运行。NodeJitsu.com是一个托管解决方案,它有websocket协议,并且还在测试阶段,所以它现在仍然是免费的。请注意,您需要使用socket.io侦听端口80,这是来自YR网络的限制。

我希望这能帮上忙!祝你有愉快的一天。

 类似资料:
  • 我创建了一个PHP websocket服务器脚本,如下所示。

  • Hyperf 提供了对 WebSocket Server 的封装,可基于 hyperf/websocket-server 组件快速搭建一个 WebSocket 应用。 安装 composer require hyperf/websocket-server 配置 Server 修改 config/autoload/server.php,增加以下配置。 <?php 'servers' => [

  • ?> 完全协程化的Websocket服务器实现,继承自Co\Http\Server,底层提供了对WebSocket协议的支持,在此不再赘述,只说差异。 !> 此章节在v4.4.13后可用。 完整示例 Co\run(function () { $server = new Co\Http\Server("127.0.0.1", 9502, false); $server->handle

  • 程序代码 ws_server.php //创建websocket服务器对象,监听0.0.0.0:9502端口 $ws = new Swoole\WebSocket\Server("0.0.0.0", 9502); //监听WebSocket连接打开事件 $ws->on('open', function ($ws, $request) { var_dump($request->fd, $r

  • 问题内容: 是否有任何教程或指南显示如何用PHP编写一个简单的Websockets服务器?我曾尝试在Google上寻找它,但没有找到很多。我找到了phpwebsockets,但是现在已经过时了,不支持最新的协议。我尝试自己更新它,但似乎不起作用。 和客户: 如果我的代码有任何错误,您可以帮我解决它吗?Firefox中的Concole说 问题答案: 我和您最近在同一条船上,这是我的工作: 1)我使用

  • 开发者可以在游戏进程中启动一个 WebSocket 服务器,提供 RPC 接口。通过完善和调用这些 RPC 接口,开发者能够对游戏进程内部状态进行监控,增加对游戏进程状态的管理能力。 如何启用 WebSocket 服务器 默认是剔除的,需要设置宏 USE_WEBSOCKET_SERVER = 1 以启用。可以通过以下两种方式启用。 方式 1:全平台启用——修改默认值 在 ccConfig.h 中,