serrislew commented on PR #13898: URL: https://github.com/apache/trafficserver/pull/13898#issuecomment-6586886668
Thanks for the detailed measurements. I'm keeping refuse global, for these reasons: - The backlog is per listen socket, not per thread. With accept_threads: 0 the threads share one accept queue, and the shrink stage already acts on that queue globally. Refuse that depends on whichever thread happens to wake would mean different threads disagreeing about whether the same queue is being drained. That is hard to reason about and to observe. A single accept_refuse gauge and one accepts_refused counter give operators one clear state. - Refuse is meant as a node-level "shed everything" signal. It's the last resort after shrink, to be set above the shrink threshold. It isn't meant to isolate one bad thread. Containing a stalled thread is a separate problem, and master already handles part of it through exclusive wakeups. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
