nginx_upstream_check_module icon indicating copy to clipboard operation
nginx_upstream_check_module copied to clipboard

check module failing at high cpu

Open gfrankliu opened this issue 8 years ago • 4 comments

Moving https://github.com/weibocom/nginx-upsync-module/issues/157 here.

When cpu is high, other requests still work but slower. Will that affect the check timer? If I have check timeout to be 5s, when cpu is busy, will check thread not get a chance to validate the response within 5s maybe?

gfrankliu avatar Jun 08 '17 17:06 gfrankliu

The question is about upstream_check_module, not upsync_module.

Ok, when cpu is high to 100%, other requests can work normally? No independently thread or progress do check things, all checks is used timer, not attached to the fixed progress.

xiaokai-wang avatar Jun 09 '17 11:06 xiaokai-wang

Yes, when cpu is high, other requests still work but slower. Will that affect the check timer? If I have check timeout to be 5s, when cpu is busy, will check thread not get a chance to validate the response within 5s maybe?

gfrankliu avatar Jun 09 '17 15:06 gfrankliu

the progress first will handle the requests, then go on to timer. Though nginx can still work, I guess part requests are lost.

xiaokai-wang avatar Jun 10 '17 01:06 xiaokai-wang

When cpu is high, I am ok some request will lost, but the problem I saw is ALL request lost because health check marks ALL upstream servers as "down".

Are you saying if nginx is busy serving requests, it will not go to the timer until it is free? By the time when nginx gets to the timer, all those health checks already timeout. This may be the reason why all upstream servers are down.

gfrankliu avatar Jun 10 '17 04:06 gfrankliu