shotover / shotover-proxy

L7 data-layer proxy
https://docs.shotover.io
Apache License 2.0
82 stars 16 forks source link
cassandra kafka redis

Shotover logo

Crates.io Docs dependency status

Documentation

For full documentation please go to https://docs.shotover.io/

Building

Shotover is supported on Linux and macOS. To build Shotover from source please refer to the contributing documentation

What is Shotover?

Shotover is a high performance, configurable and extensible L7 data-layer proxy for controlling, managing and modifying the flow of database requests in transit. It can be used to solve many different operational and interoperability challenges by transparently intercepting and transforming queries. It is transparent in the sense that it can be plugged into your architecture without requiring application change.

Shotover currently supports intercepting requests for the following technologies (sources):

It currently supports writing output to the following technologies (sinks):

What problems does Shotover solve?

Concrete examples where Shotover has been applied include:

More broadly, Shotover is designed to be used for a very wide ranging class of problems where it is useful to transparently intercept a database call and redirect it. This allows you to change the behaviour of running applications at the infrastructure level without change to the application code itself. Some examples where we envisage Shotover could be deployed include:

Of course, Shotover is designed to be configurable and extensible so use your imagination and let us know what uses you find!

Deploying Shotover

Shotover can be deployed in several different ways based on the problem you are trying to solve, but they all fall into three categories:

Roadmap

Name

Shotover refers to the Shotover (Kimi-ākau) river in Otago, New Zealand - close to Queenstown and eventually flowing into Lake Wakatipu via the Kawarau River, it's famous for white water rafting, bungy-jumping, fast rapids and jet boating.