- Notifications
You must be signed in to change notification settings - Fork1
Reverse proxy for A/B testing frontend applications
License
lindell/revaboxy
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Revaboxy is a reverse proxy made for A/B testing of front end applications.It is placed in front of two or more versions of a frontend and does randomize the trafic to the different versions based on probability.When a users browser makes subsequent requests, revaboxy will automaticly select the same version as before.
Revaboxy is released asdocker images,binaries for linux/windows/mac and as aGo library.
When setting up Revaboxy, every version has to be setup with the url and probability that it will be selected.These environment variables are calledVERSION_NAME_URL
andVERSION_NAME_PROBABILITY
.
As an example, say we have two version, one calledDEFAULT
and one calledGREEN_BACKGROUND
. The environment variables needed would be:
VERSION_DEFAULT_URL=http://defaulturlVERSION_DEFAULT_PROBABILITY=0.6VERSION_GREEN_BACKGROUND_URL=http://greenbackgroundurlVERSION_GREEN_BACKGROUND_PROBABILITY=0.4
Name | Default | Description |
---|---|---|
HOST |
| The host that the server should listen to, the default value makes it listen on all hosts |
PORT | 80 | The port that server should listen on |
HEADER_NAME | Revaboxy‑Name | The header name sent to the downsteam application |
COOKIE_NAME | revaboxy‑name | The cookie name that is set at the client to keep track of which version was selected |
COOKIE_EXPIRY | 7d | The time before the cookie containing the a/b test version expires |
About
Reverse proxy for A/B testing frontend applications