GO语言开发的开源负载均衡gobetween

gobetween 开源项目地址 https://github.com/yyyar/gobetween

现代简约负载均衡和云时代的反向代理。

特征
快速L4负载均衡

TCP - 带有可选的PROXY协议支持
TLS - TLS终止+ ACME和TLS代理
UDP
使用TOML或JSON清除和灵活配置

文件 - 从文件读取配置
URL - 通过HTTP查询URL并从响应主体获取配置
Consul - 查询Consul键值存储API以进行配置
管理REST API

系统信息 - 一般服务器信息
配置 - 转储当前配置
服务器 - 列表,创建和删除
统计和指标 - 用于服务器和后端,包括rx / tx,状态,活动连接等。
发现

静态 - 配置文件中的硬编码后端列表
Docker - 根据标签过滤Docker / Swarm API的后端查询
Exec - 执行任意程序并从它的stdout获取后端
JSON - 查询任意http url并从响应json中挑选后端(任何结构)
纯文本 - 查询任意http并从具有自定义正则表达式的响应文本解析后端
SRV - 查询DNS服务器并从SRV记录获取后端
Consul - 为后端查询Consul Services API
LXD - 从LXD查询备份
健康检查

Ping - 简单的TCP ping healtcheck
执行 - 执行任意程序传递主机和端口作为选项,并从标准输出读取healtcheck状态
平衡策略(支持SNI)

权重 - 从基于池的后端相对权重中选择后端
Roundrobin - 简单地从循环顺序选择池中的后端
Iphash - 将客户端路由到基于客户端IP哈希的相同后端
Leastconn - 选择活动连接最少的后端
最小带宽 - 后端带宽最小
与Docker和任何定制系统无缝集成(感谢Exec发现和healtchecks)

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!