草庐IT

php - Ratchet/When.js : "Uncaught ReferenceError: module is not defined"

我正在尝试使用ratchet来实时反射(reflect)对我的数据库所做的更改。我使用了推送器应用程序的代码(http://socketo.me/docs/push)。但我在这方面遇到了错误。我打开客户端页面的那一刻:UncaughtReferenceError:moduleisnotdefinedwhen.js:900(anonymousfunction)when.js:900(anonymousfunction)when.js:15(anonymousfunction)when.js:900在此之后我输入:conn.subscribe('主题');//这订阅了主题。现在,当我对此主

php - 为什么 websockets 在一段时间后停止广播? (实现使用 ReactPHP、Ratchet 和 ZeroMQ)

我有一个小型websocket服务器,运行在一组库之上:ReactPHP,Ratchet和ZeroMQ,使用php-zmq包装器。代码与教程中的基本相同。事件循环正确启动,用户能够连接到服务器,他们收到正确的消息,当对方推送一些东西时,但过了一段时间,通常是几天(取决于用法)消息停止到达。使用量一点也不大-目前只有一两个前端开发人员连接,因为这是一个开发阶段。循环正在运行,它返回HTTP101Switchingprotocolsonconnectcorrectly,但不广播之前正确广播的消息。任何地方都没有错误。重新启动事件循环会有所帮助。我的问题是:1)什么会导致这种情况?有人遇到过

PHP Ratchet : Class Memcache not found

我正在学习Ratchet的教程。对于SessionProvider页面,代码如下:connect('localhost',11211);$session=newSessionProvider(newMyApp,newHandler\MemcacheSessionHandler($memcache));$server=newApp('localhost');$server->route('/sessDemo',$session);$server->run();当我在命令行中运行脚本时,PHP抛出一个fatalerror:ClassMemcachenotfoundinonline7这段代码

javascript - 如何将 ZeroMQ 套接字与 Ratchet web-socket 库绑定(bind),以便为 php 应用程序实时应用?

我只是这个涉及websocket、Ratchet和ZeroMQ的整个领域的初学者。我的基本理解:websocket有助于在服务器和客户端之间创建开放连接。Ratchet是一个基于PHP的库,它使用PHP的核心Socket函数来创建一个PHP套接字框架,使我们能够轻松地进行PHP套接字编程。ZeroMQ是一个套接字库,可帮助非Ratchet应用程序(其他PHP脚本)通过Ratchet套接字和网络套接字发送数据。我正在按照ratchet中关于“helloworld”和“pusher”的教程进行操作,但它们似乎都不完整,并且只教授如何仅使用控制台。我还在github中找到了Ratchet示例

php - ZMQ 挂起 - ZMQSocket::send

我一直在使用Ratchet测试PHPwebsockets,并且一切正常,直到ZMQSocket::send突然开始无缘无故地挂起。$context=newZMQContext();$socket=$context->getSocket(ZMQ::SOCKET_PUSH,'notify');$res=$socket->send(json_encode($entryData));//Hangshere.请注意,我可以使用ZMQ::MODE_NOBLOCK,这将停止挂起,但不能解决问题。即客户仍然没有收到任何东西。我还重新启动了我的盒子,但这并没有解决问题。Ubuntu12.04.1LTSP

php - 即使在关闭 SSH 终端后,如何保持 websocket 服务器运行?

因此,我将Ratchet与PHP结合使用,并且目前已将一个成功的websocket示例上传到我的服务器。它在我进入SSH后工作,然后手动运行“phpbin/chat-server.php”。我想知道的是,在商业情况下,如何让聊天服务器保持运行?谢谢。 最佳答案 制作一个守护进程。如果你使用的是symfony2,你可以使用ProcessComponent.//inyourserverstartcommand$process=newProcess('/usr/bin/phpbin/chat-server.php');$process->

php - 如何访问 Ratchet php 周期性循环和客户端在应用程序内发送?

我有一个运行良好的Ratchet服务器和聊天应用程序类。我的问题是如何添加周期性循环?我尝试按照PeriodicallysendingmesagestoclientsinRatchet中的示例进行操作但我一直无处可去。我的目标和这个人一样,是让服务器检查所有客户端是否还活着。每次我尝试使用addPeriodicTimer时,我似乎无法像上面链接中的人那样访问chat.php中的$clients公共(public)属性,以便从server.php中的计时器发送消息。server.php中周期性计时器中的foreach循环一直提示它显然有一个“无效参数”。谁能看出我做错了什么?我的serv

php - 运行后如何使用 Ratchet\Server\IoServer 对象?

我想运行一个遍历生成器类的函数。只要Ratchet连接处于事件状态,生成器函数就会运行。我需要做的就是在执行run方法后实现这一点:useRatchet\Server\IoServer;useRatchet\Http\HttpServer;useRatchet\WebSocket\WsServer;useMyApp\Chat;requiredirname(__DIR__).'/xxx/vendor/autoload.php';$server=IoServer::factory(newHttpServer(newWsServer(newChat())),8180,'0.0.0.0');$

php - Ratchet 基本聊天应用程序给出错误 "Failed opening required"

我正在尝试Ratchet库使用位于http://socketo.me/的WebSockets但是在Ubuntu中从命令行运行服务器脚本时遇到了一些问题。成功安装composer和Ratchet后,我​​正在学习http://socketo.me/docs/hello-world上的基本聊天应用程序教程。我在运行它这一步。我的文件结构(websockets是我的项目文件夹)是:kingsconflictwebsocketschat.phpchat-server.phpcomposer.jsonvendorautoload.php(dependeciesincludedbycomposer

Ratchet实现PHP WebSocket多人聊天功能的示例

  composer安装ratchetcomposerrequirecboden/ratchet使用PDO连接数据库,创建mysql命令如下CREATETABLEmessages(idINTAUTO_INCREMENTPRIMARYKEY,messageTEXTNOTNULL,created_atTIMESTAMPDEFAULTCURRENT_TIMESTAMP);使用Redis存储消息列表这个示例代码中,PHP代码使用Ratchet来创建WebSocket服务器,并实现了简单的聊天功能。HTML代码使用JavaScript来建立WebSocket连接,并处理消息传输和用户输入。要运行此代码,