John Allspaw allspaw at
Wed Nov 17 08:42:55 PST 2004

> Doesn't this misrepresent the protocol layers?  Memcached talks the
> protocol documented in doc/protocol.txt over TCP, just like web servers
> talk HTTP over TCP.  Applications that grok "raw TCP" would be things
> like ethereal.

yeah, looking back, I'm not happy with the way I described it.  by
"raw" TCP I meant a non-HTTP upper level protocol.  again, for context
I'm looking at it from the perspective of a network device like a load
balancer, and to the majority of them, if it's not FTP or HTTP, then
they don't really understand it at all, and can't do any of their more
advanced mojo with those connections/requests.
> This would be interesting, although kind of weird.  I could see the use
> for this if you put a proxy or a port-80-only firewall between your
> memcached servers and your memcached clients, 

like a load balancer. :)

> but this seems like a
> dubious network design considering where memcached is designed to be
> placed on your network...

agreed, but only in the instance where the load balancer is only on
the *front end*, not on a lower tier.  I'm not at all suggesting
putting memcached in front of the world....THAT would be weird, and
possibly not a smart move...I'm now wondering if that's what people
were thinking when I first asked the question.  :)

in other words, imagine the memcached clients being webservers, and
memcached servers acting like squid, but for databases.  squid can be
manipulated six ways to sunday with load balancers because they talk
HTTP, as well as anything else that can talk Sharp's Super

sorry for the confusion. :)

More information about the memcached mailing list