首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
TCP服务器receive瓶颈
1. 用swoole创建一个tcp服务器 2. c语言的客户端,创建一个长连接,一瞬间发送5000条数据(json格式的数据)给tcp服务器,tcp服务器会有数据丢失,接收不到,能接收到大概4200条左右 3. 如果一次性发送10000条数据,能接收到大概7500条左右 有谁遇到过相同的问题?我改如何解决? 谢谢!
发布于7年前 · 2 次浏览 · 来自
提问
V
Value
1. 用swoole创建一个tcp服务器 2. c语言的客户端,创建一个长连接,一瞬间发送5000条数据(json格式的数据)给tcp服务器,tcp服务器会有数据丢失,接收不到,能接收到大概4200条左右 3. 如果一次性发送10000条数据,能接收到大概7500条左右 有谁遇到过相同的问题?我改如何解决? 谢谢!
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2019-04-11
璀
璀璨星光
连续发送多条数据,需要注意拆分数据包。多条`send`可能会被合并为一条数据。
赞
0
回复
2019-04-24
p
proaholic
[@韩天峰 ](/u/15)@韩天峰-Rango 这种情况需要如何解决?麻烦帮忙解决下,谢谢。等你的答案快两个星期了。
赞
0
回复
2019-04-24
我
我糊涂
或者 客户端程序有 BUG
赞
0
回复
2019-04-25
旧
旧脸谱
- https://github.com/swoole/swoole-src/blob/master/tests/swoole_server/eof_protocol.phpt - https://github.com/swoole/swoole-src/blob/master/tests/swoole_server/length_protocol.phpt 测试代码
赞
0
回复
2019-04-25
落
落落
server.php ```php <?php class server { public function __construct() { $serv = new swoole_server("localhost", 9876); $serv->set(array( 'worker_num' => 1, 'task_worker_num
赞
0
回复
2019-04-25
E
Easy!
上面不是说了吗?客户端连续`send`,底层可能会合并消息,服务器会`onReceive`一次收到多条消息。
赞
0
回复
2019-04-25
P
PerJac
1.但是我配置了分隔符 'package_eof' => "\r\n\r\n", 'open_eof_split' => true 2.就算是一次收到多条数据,也应该能收到10000个单词,但是我去统计单词数量的时候,也没有10000个 {{{ grep -o 'from_id' server.log |wc -l }}}
赞
0
回复
2019-04-25
简
简单
请加一下我的 QQ 号吧,12811247
赞
0
回复
2019-04-25
冷
冷咖啡
本地无法重现你的问题,是否使用了较低的`swoole`版本。
赞
0
回复
2019-05-03
G
GO ON
这问题解决了吗? 我想学点经验
赞
0
回复