This seems to line up with what I was told by some of the Yahoo guys a few
years back. They said that the syncache gets more expensive the bigger
you make its hash tables. In theory, the root of problem with the
syncache is the dropping of entries; if you're just dropping entries out
of the syncache before you get a response, it's not doing anything
What SHOULD be the optimal thing to do is to avoid using syncookies in the
normal case, unless a syncache bucket fills up. In the case where a
bucket is full, we should then leave the syncache entries alone (rather
than purging them) and emit a syncookie at that time.
I don't have time to implement that, but I'd be happy review it if someone
else gets it working and is able to show that it is more efficient.