rlproxy

command module
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 15, 2023 License: MIT Imports: 21 Imported by: 0

README

Description

rlproxy is a small TCP proxy with rate limiting capability. It uses a token bucket algorithm to apply a rate limit on the bandwidth allocated to downstream clients. The rate limit can be applied globally across all downstream clients or per client.

Usage

rlproxy can be configured using command line flags or a configuration file or both. Type rlproxy -h to find out the flags supported by rlproxy. Settings specified using command line flags take precedence over settings in the configuration file. The configuration file must be a JSON file with the following format:

{
    "name": "my-beloved-app",
    "addrs": [
        "127.0.0.1:12000"
    ],
    "upstream": "127.0.0.1:12001"
    "rate": "10M",
    "burst": "64KiB",
    "per_client": false,
    "no_splice": false,
    "buf_size": "1 Mi",
    "logging": {
        "level": "info",
        "console": {
            "enabled": true,
            "pretty": true,
            "use_stderr": false

        },
        "syslog": {
            "enabled": false,
            "facility": "local0"
        }
    }
}

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL