Karp

[踩坑] Swoole WARNING Worker_discard_data (ERRNO 1007): [2] ignore data
常见于:浏览器疯狂刷新页面 (还没加载完就刷掉了)ab 压测到一半取消wrk 基于时间的压测 (时间到了未完成的请...
扫描右侧二维码阅读全文
18
2023/11

[踩坑] Swoole WARNING Worker_discard_data (ERRNO 1007): [2] ignore data

常见于:

浏览器疯狂刷新页面 (还没加载完就刷掉了)
ab 压测到一半取消
wrk 基于时间的压测 (时间到了未完成的请求会被取消)
以上几种情况均属于正常现象,可以忽略,所以该错误的级别是 NOTICE

如由于其它情况无缘无故出现大量连接断开时,才需要注意

WARNING swWorker_discard_data (ERRNO 1007): [2] received the wrong data[21 bytes] from socket#75

WARNING Worker_discard_data (ERRNO 1007): [2] ignore data[5 bytes] received from session#2
Copy to clipboardErrorCopied
同样的,这个错误也表示连接已经关闭了,收到的数据会被丢弃。参考 discard_timeout_request

discard_timeout_request

丢弃已关闭链接的数据请求。【默认值:true

Swoole 在配置 dispatch_mode=13 后,系统无法保证 onConnect/onReceive/onClose 的顺序,因此可能会有一些请求数据在连接关闭后,才能到达 Worker 进程。

提示

discard_timeout_request 配置默认为 true,表示如果 worker 进程收到了已关闭连接的数据请求,将自动丢弃。
discard_timeout_request 如果设置为 false,表示无论连接是否关闭 Worker 进程都会处理数据请求。

最后修改:2023 年 11 月 28 日 10 : 07 AM

发表评论