c - 通过 websocket 失败的 DDP 消息

标签 c meteor websocket ddp

我目前正在开发一个通过 websocket 向 Meteor 服务器发送消息的 C 应用程序。 我正在使用 jansson用于 JSON 转换和 nopoll作为 websocket 库。

除了当我尝试发送非常大的消息(大约 15 000 000 个字符)时,两种方式(发送/接收)都工作正常。我认为(我不确定)消息已发送到服务器,因此 nopoll 库不应该是问题的根源。但是,我确信 Meteor 没有按他应有的方式处理该消息,因为从未调用该方法 (RPC)。

我发现 websocket 限制等于 64 位无符号值的最大值,所以这不应该是问题所在。

另一方面,即使在 DDP specification 中,我也没有找到 DDP 消息的最大长度。 .

您是否知道 DDP 限制或其他我没有想到的参数?

最佳答案

因为我正在研究客户端和服务器在同一台机器上的架构,所以我不受网络的限制。我想我推送的信息太多太快了,套接字里装满了数据。

解决方案很简单:按照 LP 的建议将数据分成几个片段并实现流量控制。

我还找到了 Mongo C driver这可能是另一种解决方案,因为我应该能够按照 Mikkel 的建议将数据直接推送到数据库。

谢谢你们的帮助。

关于c - 通过 websocket 失败的 DDP 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41122037/

相关文章:

c - 我的阶乘函数和幂函数在不应该输出数百万的情况下输出了数百万,我不知道如何修复它(在 c 中)

c - 嵌入式 Linux : Reading bytes from serial port too slow for quicker transfer

meteor - 无法让 Chartist 传奇插件工作

events - 在 Meteor 中从服务器向客户端发送事件

java - IoT 网关和云服务器消息传递

javascript - Websocket 无效的帧头

C crypt() 在 md5 模式下无法正常工作?

mongodb - 使用 meteor 部署时如何保留 mongodb?

python - 如何保持与 Heroku 的 WebSocket 连接?

在不知道大小的情况下复制字符串