Mcrouter - Memcached protocol router for scaling memcached deployments

  •        208

Mcrouter is a memcached protocol router for scaling memcached (http://memcached.org/) deployments. It's a core component of cache infrastructure at Facebook and Instagram where mcrouter handles almost 5 billion requests per second at peak.Mcrouter is developed and maintained by Facebook.

https://github.com/facebook/mcrouter

Tags
Implementation
License
Platform

   




Related Projects

Varnish - Web Application Accelerator.

  •    C

Varnish Cache is a web application accelerator also known as a caching HTTP reverse proxy. You install it in front of any server that speaks HTTP and configure it to cache the contents. Varnish Cache is really, really fast. It typically speeds up delivery with a factor of 300 - 1000x, depending on your architecture.

Squid - HTTP reverse proxy optimizes web delivery

  •    C++

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. Cached content means data is served locally and users will see this through faster download speeds with frequently-used content.

HtmlSpeed - Frontend HTML Accelarator for Websites

  •    Java

Html-Speed is a reverse proxy, It is used for accelerating performance of websites by improving page load speed and reducing load on webservers. This is achieved by applying front-end optimizations to both static and dynamic content and by optimizing the caching of resources.

memcached - A fully featured Memcached client build on top of Node

  •    Javascript

memcached is a fully featured Memcached client for Node.js. memcached is built with scaling, high availability and exceptional performance in mind. We use consistent hashing to store the data across different nodes. Consistent hashing is a scheme that provides a hash table functionality in a way that adding or removing a server node does not significantly change the mapping of the keys to server nodes. The algorithm that is used for consistent hashing is the same as libketama. There are different ways to handle errors for example, when a server becomes unavailable you can configure the client to see all requests to that server as cache misses until it goes up again. It's also possible to automatically remove the affected server from the consistent hashing algorithm or provide memcached with a failover server that can take the place of the unresponsive server.

aiocache - Asyncio cache manager for redis, memcached and memory

  •    Python

Asyncio cache supporting multiple backends (memory, redis and memcached). The recommended approach to instantiate a new cache is using the Cache constructor. However you can also instantiate directly using aiocache.RedisCache, aiocache.SimpleMemoryCache or aiocache.MemcachedCache.


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.

varnish-cache - Varnish Cache source code repository

  •    C

This is Varnish Cache, the high-performance HTTP accelerator. Technical questions about Varnish and this release should be addressed to <varnish-misc@varnish-cache.org>.

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.

rend - A memcached proxy that manages data chunking and L1 / L2 caches

  •    Go

Rend is currently in production at Netflix and serving live member traffic.Caching is used several ways at Netflix. Some people use it as a true working set cache, while others use it as the only storage mechanism for their service. Others use it as a session cache. This means that some services can continue as usual with some data loss, while others will permanently lose data and start to serve fallbacks. Rend is built to complement EVCache, which is the main caching solution in use at Netflix.

go-cache - An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications

  •    Go

go-cache is an in-memory key:value store/cache similar to memcached that is suitable for applications running on a single machine. Its major advantage is that, being essentially a thread-safe map[string]interface{} with expiration times, it doesn't need to serialize or transmit its contents over the network. Any object can be stored, for a given duration or forever, and the cache can be safely used by multiple goroutines.

Memcached Providers

  •    ASPNET

This project provides Memcached Session State and Cache Providers for ASP.net.

Memcached - distributed object caching system

  •    C

Memcached is high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load. Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.

DiskCache - Python disk backed cache (Django-compatible). Faster than Redis and Memcached. Pure-Python

  •    Python

DiskCache is a disk and file backed cache library, written in pure-Python, and compatible with Django. The cloud-based computing of 2021 puts a premium on memory. Gigabytes of empty space is left on disks as processes vie for memory. Among these processes is Memcached (and sometimes Redis) which is used as a cache. It is good to use empty disk space for caching.

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.

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.

YXORP - Reverse proxy for the HTTP protocol

  •    C

yxorp is a reverse proxy and application level firewall for the HTTP protocol. It can do all kinds of checks on HTTP traffic, and is highly configurable. It also has other functions that are useful for a web frontend, like load balancing. It aims to conform to RFC 2616, RFC 2518, RFC 2109 and other applicable standards.

Kong - The Microservice API Gateway

  •    Lua

Kong is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh). Backed by the battle-tested NGINX with a focus on high performance, Kong was made available as an open-source platform in 2015. Under active development, Kong is used in production at thousands of organizations from startups, Global 5000 and Government organizations.

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.

Trafik - A Modern Reverse Proxy

  •    Go

Træfik (pronounced like traffic) is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease. It supports several backends (Docker, Swarm mode, Kubernetes, Marathon, Consul, Etcd, Rancher, Amazon ECS, and a lot more) to manage its configuration automatically and dynamically.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.