我认为我在socket.io连接上发送过多数据时遇到问题。我正在订阅RabbitMQ交换并向客户端发送数据消息以实时绘图:
q.subscribe({routingKeyInPayload:true},function (message) {
socket.emit('message', {
key: message._routingKey,
//msg: decodeURIComponent(message.data),
client: qName,
ts: new Date()
});
console.log('broadcasting: ' + message._routingKey);
});
您可以看到“msg”被注释掉了。当我发表评论时,我能够发送~100-200条消息/秒(~800 / s峰值)。但是,当“msg”包含在JSON数据中时,我收到以下错误:
events.js:72
throw er; // Unhandled 'error' event
我不确定错误究竟是什么或如何处理它。任何建议将不胜感激。
编辑:典型的消息看起来像(我已经清理了用户ID以防万一):
{"key":"message.1","client":"7raQ6vpCO-PZ5ZTWQVD9","ts":"2013-09-12T22:19:06.677Z"}]}
{"fromuserid": 62XXXX34, "deleted": 0, "messagetype": 1, "datetime": 1379024283000, "touserid": 12XXXX41, "message": "Bored lol, really bored lol", "id": 27963323859}