twitter-twemproxy

  •        444

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.

https://github.com/twitter/twemproxy

Tags
Implementation
License
Platform

   




Related Projects

corvus - A fast and lightweight Redis Cluster Proxy for Redis 3.0

  •    C

Corvus is a fast and lightweight redis cluster proxy for redis 3.0 with cluster mode enabled.Most redis client implementations don't support redis cluster. We have a lot of services relying on redis, which are written in Python, Java, Go, Nodejs etc. It's hard to provide redis client libraries for multiple languages without breaking compatibilities. We used twemproxy before, but it relies on sentinel for high availabity, it also requires restarting to add or remove backend redis instances, which causes service interruption. And twemproxy is single threaded, we have to deploy multiple twemproxy instances for large number of clients, which causes the sa headaches.

MaxScale - An intelligent database proxy

  •    C++

The MariaDB Corporation MaxScale is an intelligent proxy that allows forwarding of database statements to one or more database servers using complex rules, a semantic understanding of the database statements and the roles of the various servers within the backend cluster of databases. It extends the high availability, scalability, and security of MariaDB Server while at the same time simplifying application development by decoupling it from underlying database infrastructure.

ProxySQL - High-performance MySQL proxy

  •    C++

ProxySQL is a high performance, high availability, protocol aware proxy for MySQL and forks (like Percona Server and MariaDB). It has an advanced multi-core architecture. It's built from the ground up to support hundreds of thousands of concurrent connections, multiplexed to potentially hundreds of backend servers. The largest ProxySQL deployment spans several hundred proxies.

Reborn - yet another fast distributed solution for Redis

  •    Go

Reborn is a proxy based high performance Redis cluster solution written in Go/C, an alternative to Redis. Reborn supports multiple stateless proxy with multiple redis instances. Reborn is engineered to elastically scale, Easily add or remove redis or proxy instances on-demand/dynamically.

goproxy - Proxy is a high performance HTTP(S), websocket, TCP, UDP,Secure DNS, Socks5 proxy server implemented by golang

  •    Go

Pull Request is welcomed. First, you need to clone the project to your account, and then modify the code on the dev branch. Finally, Pull Request to dev branch of goproxy project, and contribute code for efficiency. PR needs to explain what changes have been made and why you change them. This page is the v6.0 manual, and the other version of the manual can be checked by the following link.


zan-proxy - An extensible proxy for PC/Mobile/APP developer

  •    Vue

Zan Proxy is an HTTP proxy server written in Node.js, which can be used to modify requests and mock reponse data. It is also a tool for custom DNS resolving and requests monitoring. The proxy server can be easily configured by a user-friendly interface. In addition, a mechanism is provided for developers to customize the behavior of the server. The website for management will be opened automatically.

Nginx - HTTP and reverse proxy server

  •    C

Nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. It supports accelerated reverse proxying with caching, simple load balancing and fault tolerance, SSL and TLS SNI support, Name-based and IP-based virtual servers and lot more.

LittleProxy - High Performance HTTP Proxy

  •    Java

LittleProxy is a high performance HTTP proxy written in Java atop Trustin Lee's excellent Netty event-based networking library. It's quite stable, performs well, and is easy to integrate into your projects. A proxy server like LittleProxy contains always a web server, too. If you get an URI without scheme, host and port in originalRequest it's a direct request to your proxy. You can return a HttpFilters implementation which answers responses with HTML content.

nuster - A web caching proxy server based on HAProxy

  •    C

Nuster is a simple yet powerful web caching proxy server based on HAProxy. It is 100% compatible with HAProxy, and takes full advantage of the ACL functionality of HAProxy to provide fine-grained caching policy based on the content of request, response or server status. Nuster is very fast, some test shows nuster is almost three times faster than nginx when both using single core, and nearly two times faster than nginx and three times faster than varnish when using all cores.

glider - glider is a forward proxy with multiple protocols support, and also a dns forwarding server with ipset management features(like dnsmasq)

  •    Go

glider is a forward proxy with multiple protocols support, and also a dns forwarding server with ipset management features(like dnsmasq). we can set up local listeners as proxy servers, and forward requests to internet via forwarders.

docker-squid - Dockerfile to create a Docker container image for Squid proxy server

  •    Shell

Dockerfile to create a Docker container image for Squid proxy server. Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator.

Titanium-Web-Proxy - A cross platform asynchronous HTTP(S) proxy server in C#.

  •    CSharp

Kindly report only issues/bugs here . For programming help or questions use StackOverflow with the tag Titanium-Web-Proxy. Refer the HTTP Proxy Server library in your project, look up Test project to learn usage.

grpc-proxy - gRPC proxy is a Go reverse proxy that allows for rich routing of gRPC calls with minimum overhead

  •    Go

The project now exists as a proof of concept, with the key piece being the proxy package that is a generic gRPC reverse proxy handler. The package proxy contains a generic gRPC reverse proxy handler that allows a gRPC server to not know about registered handlers or their data types. Please consult the docs, here's an exaple usage.

muguet - DNS Server & Reverse proxy for Docker - Compatible with docker-compose, boot2docker and docker-machine

  •    Javascript

When using Docker, it's sometimes a pain to access your containers using specific IPs/ports. Muguet provides you with a DNS Server that resolves auto-generated hostnames to your containers IPs, plus a Reverse Proxy to access all your web apps on port 80.

awslambdaproxy - An AWS Lambda powered HTTP/SOCKS web proxy

  •    Go

awslambdaproxy is an AWS Lambda powered HTTP/SOCKS web proxy. It provides a constantly rotating IP address for your network traffic from all regions where AWS Lambda is available. The goal is to obfuscate your traffic and make it harder to track you as a user. Current code status: proof of concept. This is the first Go application that I've ever written. It has no tests. It may not work. It may blow up. Use at your own risk.

frp - A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet

  •    Go

frp is a fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. Now, it supports tcp, udp, http and https protocol when requests can be forwarded by domains to backward web services. Expose any http and https service behind a NAT or firewall to the internet by a server with public IP address(Name-based Virtual Host Support). Expose any tcp or udp service behind a NAT or firewall to the internet by a server with public IP address.

Yaxy - Proxy server for a web developers.

  •    Javascript

Yaxy is a proxy-server for a web developer, it substitutes the required resources with simple rules. If you do not specify --config, Yaxy will look for yaxy-config.txt file in the current directory. The server will listen on port 8558, if no --port specified. If you specify --proxy, Yaxy will route external requests through proxy server.

Cobar - Proxy for sharding databases and tables

  •    Java

Cobar is a proxy for sharding databases and tables,compatible with MySQL protocal and MySQL SQL grama,underlying storage only support MySQL for support foreground business more simple,stable,efficient and safety。

gobetween - :cloud: Modern & minimalistic load balancer for the Сloud era

  •    Go

gobetween - modern & minimalistic load balancer and reverse-proxy for the ☁️ Cloud era. Current status: Under active development. Currently in use in several highy loaded production environments.