Karp 的技术博客

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 进程都会处理数据请求。

swoole

版权属于:karp
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
更新于: 2024年10月18日 07:10
4

目录

来自 《Swoole WARNING Worker_discard_data (ERRNO 1007): [2] ignore data》