Skip to content

A multi-tenancy mongo-proxy consolidating multiple physical clusters

Notifications You must be signed in to change notification settings

deatheyes/mongo-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mongo-proxy

A multi-tenancy mongo-proxy consolidating multiple physical clusters

Architecture

client  ->   handleFuncChain [HandleCommand   ----> Transform]
                               |                    |
    <--------------	    block and process      has response? ---> mongo
                                                    | Y              |
    <---------------------------------------     return              |
                                                                     |
    <---------------------------------------     revert     <--- response
  • Authentication and handshake would be blocked and processed by mongo-proxy.
  • A meta server is employed to help mongo-proxy to route connections and requests.
  • Necessary transformations would be applyed to requests and responses to shield the topology of physical clusters.

Modules

Wire

Parser of mongodb wire protocal

Topology

Connection and endpoint implements.

Proxy

Transformations and router of request and response

Meta

Topology of physical clusters. Only mongodb suppoerted currently.

Operation

Commands that should be processed locally, such as ismaster, handshake.

Auth

Sasl authenticator handler. Only SCRAMSHA256 supported currently.

About

A multi-tenancy mongo-proxy consolidating multiple physical clusters

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published