TL;DR: Has anyone ever tried using the new thrift 0.9 TThreadSelectorServer for their thrift server?
I did today and have found it performs pretty well. Is this something people would like to see in the C* trunk? Background: Yesterday we upgraded from Cass 1.2.14 to Cass 2.0.5. We have our apps all coded up so we can easily switch between thrift and native very quickly. Historically we've always used the HsHa server as it was the only server which provided us with the required level of performance given the number of clients we have connecting and the strict 10ms 99th %tile SLAs we have. Prior to the upgrade we ran with native protocol for a day just to check everything was still working. It did, but performed slightly worse than thrift. After the upgrade we found the new THsHaDisruptorServer wasn't working for us under full load. "It worked fine in testing" I cried. Our CTO was not amused. So I guess our load testing strategy isn't the best. So we switched to the thrift sync server and found this performed terribly above the 75%tile. Then we switched to the native and found the performance to be significantly worse than in 1.2.14. (I'll leave questions and comments about those to a different post. I checked all the code and very little has changed so not sure what that's about) Anyway, today I moved the old HsHa implementation and the new TThreadSelectorServer into a 2.0.5 checkout, hooked them in, built, did a bit of testing and I'm now running live. We found the TThreadSelectorServer performed the best getting us back under our SLA. Thoughts and comments welcome Chris