代码拉取完成,页面将自动刷新
make
type Config struct {
// 校验服务监听地址, 如果不配置则标识不启用配置校验服务, 例如:0.0.0.0:1234
VerificationListenAddr string
// 配置监听目录, 多个目录则使用逗号分隔
CONFIG_DIR []string
// 配置更新完成后doveclient需要执行的操作, 目前仅支持ReloadPHPServer, 如无特殊需要可以配置为空.
POST_UPDATE_CALLBACKS []string
// 配置更新完成后需要执行的脚本文件的路径
POST_UPDATE_SCRIPTS []string
// 当前生效的环境
ENV string
// 业务可以在CONFIG_DIR之外指定debug文件从而在所有环境下影响CONFIG_DIR目录下解析出来的配置值(街点的特殊需求)
DEBUG_FILE string
// 该配置参数是一个toml文件的路径
// 如果不指定schema, 那么则特定的脚本每次配置更新都会执行, 否则只有当特定的schema有更新的时候才会执行
/**
* 文件内容格式
* [rules]
* 0 = ["脚本文件路径"]
* 1 = ["脚本文件路径", "完整的schema文件路径1", "完整的schema文件路径2"]
*/
POST_UPDATE_SCRIPTS_RULE string
// 如该配置值为yes, 则会去掉 配置值 两侧的双引号; 该开关对*.schema.php/*.schema.toml/*.schema.yml类型的配置文件无效.
UNWRAP_STRING string
// pprof的监听接口, 例如:0.0.0.0:12000; 如果不配置则不开启pprof性能分析.
PPROF_LISTEN string
// 当一个ENV环境的配置未编译到dovecleint的时候, 通过配置DOVE_SERVER可以是doveclient从远程查询ENV环境对应的etcd地址, 例如: https://dove.int.jumei.com/
DOVE_SERVER string
// 在某些环境下无法通过/etc/init.d/phpserver reload的方式对phpserver执行reload操作, 因此这些环境的phpserver会监听一个特定的端口, 通过向这个端口发送reload命令执行phpserver的reload操作; 例如: 127.0.0.1:10101
PHPSERVER_CONTROL_CMD_PORT string
}
1. 修正了在启动客户端时,如果特殊参数传递错误,会导致客户端循环重启的问题。
1. 解析配置时对hashtable格式的配置,可以保持其原有的属性顺序。
1. 添加了客户端统计数据查询服务。可通过 telnet 127.0.0.1 4515进入控制台, 执行stats 来显示统计数据,或者statsz获取压缩后的统计数据。也可以通过命令 echo "statsz\r\n" | nc 127.0.0.1 4514 > stats.gz 来导出压缩后的统计数据。
1. 不再强制使用root用户来启动客户端, 可以在配置里设置为其它用户,但需注意,此用户必须有对业务项目配置目录及其下的文件有读写的权限。
1. 修正了DATA_DIR不能自定义的问题。
1. 完全兼容windows系统。
1. 编译配置模板时采用更保守的方式,以确保配置能被获取到(不再仅从内存中获取)。
1. 优化leveldb的读写操作,不再使用段连接,提升性能(大概2000倍),同时,解决了短链接产生过多数据日志文件的问题。
1. 优化zk连接状态监控,避免了多一次更新全部配置的操作。
1. 优化了restart/stop过程,提高执行速度,解决几率性失败的问题。
1. 修正了在编译配置模板时,如果上一个配置获取失败会导致下一个配置不能获取的问题。
1. 修正了打包脚本不能跨平台编译linux平台版本的客户端问题。
1. 更新zk包至最新版本
1. 将配置存储从zookeeper迁移到etcd
1. 支持.schema.toml文件解析
1. 支持将有变化的配置项发送给回调脚本
1. 支持特定的schema文件更新后调用特定的回调脚本
1. 添加pprof性能分析
1. 支持特定的schema文件更新后调用特定的回调脚本
1. 添加SH机房支持
1. 支持jd global环境
1. 支持动态添加环境
1. 优先从远程服务器获取环境信息, 远程没有再检查环境信息是否预编译到二进制包
1. 支持平滑重启(针对rpc)
1. 升级etcd/clientv3库,解决etcd内存使用内存暴增的问题.
1. chaos修改的版本,彻底解决内存泄露的问题.
1. 支持从环境变量读取DoveClient运行配置.
1. 支持直接指定DEBUG_FILE(或从DOVE_DEBUG_FILE环境变量获取).
1. chaos修复了移除etcd节点时doveclient内存溢出的问题.
1. 修复statistic服务端口被非法访问时,可能会引起进程崩溃的问题.
1. 修复使用错误的日志级别导致进程崩溃的问题.
1. 修复非法日志级别导致的panic
2. 启动时,如果修改目录权限失败,不退出进程。
1. 调整心跳上报间隔,减少上报次数。
2. 不上报更新结果,减少etcd读写压力。
1. 修复日志参数缺失
2. 支持通过配置文件以及环境变量设置reload phpserver的ip和端口(PHPSERVER_CONTROL_CMD_PORT)
1. 增加VerificationListenAddr配置
2. 支持远程获取目标配置文件的校验值
3. 支持远程获取shema文件列表,schama文件中的配置项 以及 对应配置项的值
1. 支持.schema.yaml格式解析
2. 支持.schema. *后缀的所有模板文件(只执行简单的配置替换)
1. 支持unWrapString模式(DoveClient.conf UNWRAP_STRING="yes"即可开启), 该模式下编译出的字符串类型的配置值会去掉两侧的引号.
1. 修复statistics, configwatcher中对map的访问存在数据竞争的问题
1. 用go mod进行依赖管理;
2. 修复etcd断线后,会造成100%cpu占用的问题
1. 修正部分文档
2. 支持控制台打印readme文档
1. 支持通过api查询特定环境的etcd服务器列表
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。