Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用tengine的dyups module做动态负载均衡时,Nginx升级到1.19.2以上后,dyups模块出现读body数据偶发不完整的问题 #1944

Open
FengXingYuXin opened this issue Jun 21, 2024 · 3 comments

Comments

@FengXingYuXin
Copy link
Contributor

问题描述:
升级Nginx版本到1.25.3以后,Tengine dyups模块在更新upstream数据时,如果IP比较多,比如500个+,会出现dyups失败的现象。通过gdb调试,发现是dyups模块在ngx_http_dyups_read_body中没有读到完整的body数据导致。
追查了下Nginx相关changelog,发现在1.19.2中针对chunk相关做了很多优化,可以参考 nginx/nginx@9edc93f#diff-2cd52ff90de8e452b238fca4c59dbd36268ad306bdc8a9eb30788e9d1963bfb4%EF%BC%8C%E4%BC%98%E5%8C%96%E4%B8%AD%E8%B0%83%E6%95%B4%E4%BA%86body%E6%95%B0%E6%8D%AE%E7%9A%84%E5%A4%84%E7%90%86%E6%96%B9%E5%BC%8F%EF%BC%8C%E5%BD%B1%E5%93%8D%E4%BA%86dyups%E6%A8%A1%E5%9D%97%E8%AF%BBbody%E7%9A%84%E6%AD%A3%E7%A1%AE%E6%80%A7%E3%80%82

@FengXingYuXin
Copy link
Contributor Author

在dyups仓库中也有人提到过类似问题,但是没有看到下文描述,yzprofile/ngx_http_dyups_module#140

@lhanjian
Copy link
Collaborator

不过tengine自身还没有合并1.25吧,还是1.24

@FengXingYuXin
Copy link
Contributor Author

1.19.2以上都有问题

@lhanjian lhanjian removed their assignment Oct 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants