twitter-archive / kestrel

simple, distributed message queue system (inactive)
http://twitter.github.io/kestrel
Other
2.77k stars 312 forks source link

Update kestrel to utilize the binary memcache protocol #6

Closed Suhail closed 12 years ago

Suhail commented 14 years ago

There's proof out there that the gap in performance between the text based protocol and the binary one widens with more concurrently connected clients.

The binary protocol also has and will continue to have more clients available for it which helps kestrel's adoption.

robey commented 14 years ago

hm, i didn't know there were many binary protocol clients. definitely something to consider then.

tenorviol commented 14 years ago

This may be related. I've been working on integrating kestrel into a php driven site, using php's memcached class. By default this compresses payloads greater than 100 bytes. In my tests I've noticed a problem in the interaction between the memcached library and Kestrel. It does successfully compress large payloads, but does not decompress them. For now this can be solved by turning off automatic compression, but I suspect there is some underlying problem in the protocol. Will post more as/if I learn it.

tenorviol commented 14 years ago

Er. Actually, the problem described is more likely related to the one in, "Recognize flag byte in memcache set".

robey commented 12 years ago

after talking to others about the binary memcache protocol, i don't intend to ever support it. apparently, in some clients, it's actually slower than the text protocol. i think for use cases where the speed of the network protocol has become a bottleneck (in other words, almost zero cases) :), a better story is to use the thrift protocol.