What is twemproxy?
twemproxy (pronounced "two-em-proxy"), aka nutcracker is a fast and lightweight proxy for memcached and redis protocol. It was built primarily to reduce the number of connections to the caching servers on the backend. This, together with protocol pipelining and sharding enables you to horizontally scale your distributed caching architecture.
twemproxy is a tool in the Memcached Tools category of a tech stack.
twemproxy is an open source tool with 9.5K GitHub stars and 1.7K GitHub forks. Here’s a link to twemproxy's open source repository on GitHub
Who uses twemproxy?
3 companies reportedly use twemproxy in their tech stacks, including Twitter, trivago, and Avito.
7 developers on StackShare have stated that they use twemproxy.
Why developers like twemproxy?
Here’s a list of reasons why companies and developers use twemproxy
- Maintains persistent server connections.
- Keeps connection count on the backend caching servers low.
- Enables pipelining of requests and responses.
- Supports proxying to multiple servers.
- Supports multiple server pools simultaneously.
- Shard data automatically across multiple servers.
- Implements the complete memcached ascii and redis protocol.
- Easy configuration of server pools through a YAML file.
- Supports multiple hashing modes including consistent hashing and distribution.
- Can be configured to disable nodes on failures.
- Observability via stats exposed on the stats monitoring port.
- Works with Linux, *BSD, OS X and SmartOS (Solaris)
twemproxy Alternatives & Comparisons
What are some alternatives to twemproxy?
HAProxy (High Availability Proxy) is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications.
Mcrouter is a memcached protocol router for scaling memcached deployments. It's a core component of cache infrastructure at Facebook and Instagram where mcrouter handles almost 5 billion requests per second at peak.