On 27/05/11 08:54, unjc email wrote:
Hello there, I encounter a performance issue. I found that the squid proxy crashes occasionally due to "Too many queued negotiateauthenticator requests". When I monitor the server by querying "squidclient mgr:negotiateauthenticator", I discovered that not all authenticators are busy at the same time. It seems like only the authenticators on the top of the list are busy with queued requests; but many of others down at the bottom of the list are basically idle. It looks like a load-balancing problem among the authenticators. Please advise if there is any setting for load-balancing authenticators in squid.conf.
Yes. There is no point "balancing" helpers. Each is pinned 1:1 with a client login for the entire time it takes to operate. When the first is pinned the seconds gets used, etc. Once the first helper is released, it can immediately be used for another client without swapping it in/out of memory just to reach one that has not been used yet.
cache.log: 2011/05/25 03:04:44| WARNING: up to 199 pending requests queued 2011/05/25 03:04:44| Consider increasing the number of negotiateauthenticator processes to at least 239 in your config file. 2011/05/25 03:05:01| storeDirWriteCleanLogs: Starting... 2011/05/25 03:05:01| Finished. Wrote 0 entries. 2011/05/25 03:05:01| Took 0.0 seconds ( 0.0 entries/sec). FATAL: Too many queued negotiateauthenticator requests (201 on 40) Squid Cache (Version 2.7.STABLE4): Terminated abnormally.
Upgrade to 2.7.STABLE9. There are several negotiate and helper fixes in that version. Maybe an underlying problem is resolved already.
If it continues there, you could try following Squids advice which was displayed at your peak load:
> 2011/05/25 03:04:44| Consider increasing the number of > negotiateauthenticator processes to at least 239 in your config file. Amos -- Please be using Current Stable Squid 2.7.STABLE9 or 3.1.12 Beta testers wanted for 3.2.0.7 and 3.1.12.1