Динамический прокси-балансировщик PBS
PBS Server — это балансировщик HTTP/HTTPS прокси, который автоматически выбирает лучшие прокси.
Этот инструмент был разработан для быстрой и простой реализации динамического прокси HTTP(s). В проекте недавно использовался HaProxy для соответствующей реализации, но он всё ещё кажется слишком тяжёлым и не поддерживает оптимизацию на основе качества прокси (например, задержки).
Учитывая, что стабильность сети прокси не может быть гарантирована, мы придерживаемся принципа «чем проще задача, тем проще её реализация». Мы разработали небольшой инструмент и представляем его здесь для тех, кто может его использовать.
Функции:
Дизайн проекта:
Структура каталога:
├── LICENSE
├── Readme.md
├── go.mod
├── go.sum
├── pbc
│ ├── config.go
│ └── pbc.go // pbc client, used for config a proxy
├── pbs
│ ├── checker.go
│ ├── config.go
│ ├── pbs.go // pbs server, used for manage proxies
│ ├── pbs.json
│ ├── pbs.json.example
│ └── proxy.go
└── test
└── testServer.go // tools for test servers
Использование:
Скачайте скомпилированный и собранный клиент PBS и выполните команду ./pbs -h
.
Usage: Config your pbs.json and start pbs with command ./pbs -c ./config.json &
Args:
-c Specify a config json
-h Help and quit
-v Show current version and quit
Настройте pbs.json
:
{
"Port": 7788, // port for pbs listening
"ActiveProxyGroups": "all", // select which groups actived, eg: 'all' or 'asia,africa' are same
"Proxies": {
"asia": [
"127.0.0.1:7791 5", // ip:port weight
"127.0.0.1:7792 1"
],
"africa": [
"127.0.0.1:7793 1"
]
}
}
Запустите с помощью команды ./pbs -c ./pbs.json
.
Конфигурация PBC находится на вашем прокси-сервере. Выполните команду ./pbc -h
:
Usage: you can start pbc at port 7799 with command ./pbc -p 7799 &
Args:
-p Specify PBC client port to start
-h Help and quit
-v Show current version and quit
Выполните команду ./pbc -p 7791
, чтобы запустить службу на порту 7791.
Сборка: Проект очень прост. Вам нужно только загрузить код, а затем выполнить следующие команды отдельно:
go build pbs.go
go build pbc.go
go build test/testServer.go
Это создаст соответствующие исполняемые файлы.
Вклад в код:
git checkout -b my-new-feature
).git commit -am 'Add some feature'
).git push origin my-new-feature
).Автор: @Zoker
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )