Skip to content
/ tareek Public

A Reverse Proxy and a load balancer that utilizes go reverse proxies that can be easily configured to support multi host reverse proxy.

Notifications You must be signed in to change notification settings

ya3rub/tareek

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tareek

A Reverse Proxy and a load balancer that utilizes go reverse proxies to distribute the load over predefined servers. The used algorithm is the static balancing algorithm (round Robin).

Tareek also supports multi host reverse proxy with a config file to map routes to reverse proxies and Load balancers. Tareek is written in Go.

Build and Run

make run

Example Config

redirect 127.0.0.1/api/ to http://www.bing.com

{
    "reverse-proxies": [
        {
            "host": "127.0.0.1",
            "endpoint": "/api",
            "target": "http://www.google.com"
        },
}

balance the load over 127.0.0.1/rev1 using the predefined targets:

{
    ...
    "load-balancers": [
        {
            "host": "127.0.0.1",
            "endpoint": "/rev1",
            "targets": [
                "http://www.github.com",
                "http://www.google.com",
                "http://www.bing.com"
            ]
        },
        ...
    ]
}

Acknowledge

the first steps in this project is based on Akhil Sharma's video

About

A Reverse Proxy and a load balancer that utilizes go reverse proxies that can be easily configured to support multi host reverse proxy.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published