在开发了大部分网站之后,我需要介绍将数据从服务器推送到客户端的功能。经过一番研究后,我决定使用Ratchet(我使用Laravel 4.1)。
我已经实现了我的pushUpdate类,但是我在启动webSocket服务器时遇到了问题,我目前启动服务器的方法是:
// Run the server application through the WebSocket protocol on port 8080
$app = new Ratchet\App('localhost', 8080);
$app->route('/update', new pushUpdate);
$app->route('/echo', new Ratchet\Server\EchoServer, array('*'));
$app->run();
当请求推送更新的页面时,将运行此代码。这是我收到的错误:
React \ Socket \ ConnectionException
Could not bind to tcp://127.0.0.1:8080: Address already in use
我之前没有实现过webSocket,我已经阅读了服务器配置文档(http://socketo.me/docs/deploy#serverconfiguration),其中说明我可以在端口8080上运行Web服务器和套接字服务器。
任何帮助解决这个问题的人都非常感谢。
答案 0 :(得分:3)
听起来你有一个已经使用端口8080的进程。你可以通过使用" netstat -ap"来查看是否是这种情况。看看正在使用8080的进程。