基础配置
注意
配置文件为yaml格式,需要严格按照yaml格式书写,否则会报错。
1.rpc服务端配置
服务发现
目前只支持etcd、zookeeper、consul。
rpcServer:
serverName: "authorize"
registerPlugin: "etcd"
registerServers:
- "127.0.0.1:2379"
basePath: "go-admin"
addr: ""
port: 7655
pprof: 7654
serverName: 服务名称,作服务发现keyregisterPlugin: 服务注册类型。目前支持etcd、zookeeper、consulregisterServers: 服务注册地址basePath: etcd服务发现的根目录(一般为项目名)addr: rpc服务地址,一般不填。k8s集群部署时,填写service地址port: rpc服务端口pprof: rpc服务pprof端口
2.rpc客户端配置
rpcClient:
clientName: "internal-gateway"
basePath: "go-admin"
registerPlugin: "etcd"
registerServers:
- "127.0.0.1:2379"
failRetryModel: 3
balanceModel: 2
poolSize: 1
clientName: 客户端名称registerPlugin: 服务注册类型。目前支持etcd、zookeeper、consulregisterServers: 服务注册地址basePath: etcd服务发现的根目录(一般为项目名)failRetryModel: 失败重试模式。balanceModel: 负载均衡模式。poolSize: 连接池大小。
关于
支持的负载均衡模式以及失败重试模式可在rpc进阶中了解。前往
默认:
failRetryModel:选择相同节点并重试,直到达到最大重试次数balanceModel:使用 roundrobin 算法选择节点
3.http配置
httpServer:
port: 8080
pprof: 8088
rpcServer:
model: 1
serverName: "服务名"
etcd: ["127.0.0.1:2379"]
basePath: "go-admin-example"
port: http服务端口pprof: http服务pprof端口
4.数据库配置
数据库类型
目前只支持mysql
db:
dbType: "mysql"
maxOpenConn: 20
maxIdleConn: 4
maxIdleTime: 100
maxLifeTime: 3600
level: 4
slowThreshold: "100ms"
master:
user: "root"
password: "password"
host: "127.0.0.1"
port: "3306"
database: "database"
slave:
- user: "root"
password: "password"
host: "127.0.0.1"
port: "3306"
database: "database"
dbType: 数据库类型maxOpenConn: 最大打开连接数maxIdleConn: 最大空闲连接数maxIdleTime: 最大空闲时间maxLifeTime: 最大生命周期level: 日志级别slowThreshold: 慢日志阈值master: 主库配置slave: 从库配置
5.redis配置
redis模式
目前支持单机(alone), 哨兵(sentinel), 集群(cluster)
redis:
redisType: "alone"
startAddr: ["127.0.0.1:6379"]
active: 100
idle: 100
auth: ""
connTimeout: "100ms"
readTimeout: "100ms"
writeTimeout: "100ms"
idleTimeout: "100ms"
redisType: redis类型network: 单机地址startAddr: 哨兵或集群地址active: 最大活跃连接数idle: 最大空闲连接数auth: 密码connTimeout: 连接超时时间readTimeout: 读超时时间writeTimeout: 写超时时间idleTimeout: 空闲超时时间
6.日志配置
日志等级
0紧急的 1警报 2重要的 3错误 4警告 5提示 6信息 7调试
logger:
consoleShow: true
consoleLevel: 7
fileWrite: false
fileLevel: 7
multiFileWrite: false
multiFileLevel: 7
consoleShow: 是否打印到控制台consoleLevel: 控制台日志级别fileWrite: 是否写入文件fileLevel: 文件日志级别multiFileWrite: 是否写入多个文件multiFileLevel: 多文件日志级别
7.链路追踪配置
注意
该配置只会影响链路上报,不会影响正常的日志标记
tracer:
openTrace: false
traceName: "服务名"
host: "127.0.0.1:6831"
openTrace: 是否开启链路追踪traceName: 服务名host: 链路追踪上报地址
