xiaokai-wang / nginx_upstream_check_module

For http protocol. Health checks upstreams for nginx,support dynamic health check interface for adding servers, transplat from tengine based on upstream_check_module

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

check module failing at high cpu

gfrankliu opened this issue · comments

Moving weibocom/nginx-upsync-module#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?

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.

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?

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

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.