代码拉取完成,页面将自动刷新
He3Proxy是中移(苏州)软件技术有限公司基于PG协议 专为He3DB 打造的高性能数据库代理项目,采用Go语言开发, He3Proxy为He3DB 提供读写分离、负载均衡、连接池管理、 读一致性等基础能力,让用户像使用单机一样使用He3DB 集群,并提升集群整体吞吐量、提高节点资源利用率, 同时兼具He3DB 集群管理功能,如集群监控、灰度升级、数据分层存储、动态扩缩容等,助力He3DB 实现serverless。
同时He3Proxy也兼容其他基于PG协议 的主从架构数据库,可作为其数据库中间件使用。
1. 安装Go语言环境(请使用最新版)
2. git clone https://gitee.com/he3db/he3proxy.git $GOPATH/src/gitee.com/he3db/he3proxy
3. cd $GOPATH/src/gitee.com/he3db/he3proxy
4. source ./dev.sh
5. make
6. 设置配置文件
7. 运行he3proxy
./bin/he3proxy -config=./etc/he3proxy.yaml -hba=./etc/hba.conf -log-level=info
Goland打包Linux二进制文件配置可参考下图
postgres@he3db:~/he3proxy$ ./bin/he3proxy -h
__ __ _____ ____
/ / / /__ |__ / / __ \_________ _ ____ __
/ /_/ / _ \ /_ <______/ /_/ / ___/ __ \| |/_/ / / /
/ __ / __/__/ /_____/ ____/ / / /_/ /> </ /_/ /
/_/ /_/\___/____/ /_/ /_/ \____/_/|_|\__, /
/____/
Usage of ./he3proxy:
-cancel-request [启用后支持ctrl+c终止异常链接,默认false]
the flag of save connection id and secret for cancel request
-config string [He3Proxy配置文件路径]
He3Proxy config file (default "./etc/he3proxy.yaml")
-conn-pool [是否使用连接池,默认 true]
the switch of connection pool, if true means use backend connection pool (default true)
-cpu-profile [是否使用连接池,默认 true]
analysis cpu profile
-db-mode string [后端数据库类型,保留kingshard的MySQL数据库链接功能,默认 postgresql]
switch proxy work mode [mysql|postgresql], default postgresql (default "postgresql")
-hba string [He3Proxy hba 配置文件路径]
He3Proxy hba config file (default "./etc/hba.conf")
-he3proxy [He3Proxy中间件标识,若使用读一致性功能,需要开启此配置,默认 false]
the flag of he3proxy, if true means tell backend current connection is by he3proxy
-keep-conn [始终使用当前链接处理,适用于高性能读需求,读写混和场景不适用,默认 false]
keep use current conn, and not release util conn release
-log-level string [日志级别设置]
log level [debug|info|warn|error], default set by configuration
-max-cpu int [程序最大使用cpu数]
the GO MAX PROCS, default sys logical cpu nums
-metrics [是否开启prometheus采集指标,默认 false]
the flag of collection metrics, if true means work with prometheus
-opentracing [是否开启opentracing指标采集,默认 false]
switch of opentracing
-pprof [debug使用,用于开启pprof,默认 false]
the switch of pprof
-pyroscope [debug使用,是否开启pyroscope监控,默认false]
the switch of pyroscope
-readonly [高性能读场景使用,读写场景不适用,默认 false]
improve read performance by not release conn
-server-version string [设置后端数据库版本]
set backend server version for pg, default 14.2 (default "14.2")
-simple-parse [解析器使用选择,true使用CRDB的语法书解析(读一致性功能必须设置为true),false使用简单分词,默认true]
the flag of use simple parse (lex), if false means will use crdb parse (AST) (default true)
-single-session [单链接模式,不使用负载均衡,默认 false]
the switch of single session, if true means proxy work without loadbalance
-tracer-provider-url string [设置jaeger指标采集地址,opentracing为true时此参数有效]
jaeger collector url (default "http://localhost:14268/api/traces")
-v the version of He3Proxy [输出He3Proxy版本信息]
欢迎参与并贡献He3Proxy, 请查看Contribute 了解详细信息。CLA提供更多贡献信息。
注意: 当前为非release版本,不建议生产使用!
项目地址 :https://gitee.com/he3db/he3proxy
欢迎加入slack 进行沟通交流~
更多技术细节欢迎查阅技术文章专栏
He3Proxy采用Apache 2.0协议,相关协议请参看目录
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。