我在这里遵循了本教程,并在本例中使用的websocket代码之上构建了一个应用程序。
https://www.sanwebe.com/2013/05/chat-using-websocket-php-socket
一切正常,但是websockets在负载下不断丢弃消息。
例如。我有一个用户键入聊天消息并使用教程中提供的websocket代码发送它。此外,用户每隔10次更新从服务器获取消息,用户也可以每秒10次更新将消息发送回服务器。
因此,如果用户键入聊天消息并发送它。聊天消息被发送,没有任何反应。据我所知,javascript获取聊天消息,将其转换为json并将其发送到服务器,php websocket服务器永远不会收到它。这种情况随机发生,有时连续发生。在VPS上情况要糟糕得多。一旦我切换到专用服务器,就会发生更少的事情。
这不仅影响聊天消息。它可以是发送的任何websockets消息 到服务器。如果javascript只向php websocket服务器发送一条消息,那么该消息很可能是丢失的消息。因此,即使是乒乓信息也会丢失。
当服务器负载来自客户端时,这一切都在发生。
例如
客户:平
服务器:傍
客户:平安
什么都没发生
客户:平安
服务器:傍
客户:平安
服务器:傍
客户:平安
什么都没发生
客户:平安
什么都没发生
客户:平安
什么都没发生
客户:平
服务器:乒乓
php websocket教程中的代码是不是很糟糕?它可以修复还是我完全不得不重做我的代码以适应php Ratchet?