@@ -9,25 +9,40 @@ import (
99// 解析配置文件
1010
1111var (
12+ // Setting 配置实例
1213 Setting * Config
1314)
1415
1516const (
17+ // DefaultBindAddress 监听地址
1618 DefaultBindAddress = "0.0.0.0:9277"
19+ // DefaultBucketSize bucket数量
1720 DefaultBucketSize = 3
21+ // DefaultBucketName bucket名称
1822 DefaultBucketName = "dq_bucket_%d"
23+ // DefaultQueueName 队列名称
1924 DefaultQueueName = "dq_queue_%s"
25+ // DefaultQueueBlockTimeout 轮询队列超时时间
2026 DefaultQueueBlockTimeout = 178
27+ // DefaultRedisHost Redis连接地址
2128 DefaultRedisHost = "127.0.0.1:6379"
29+ // DefaultRedisDb Redis数据库编号
2230 DefaultRedisDb = 1
31+ // DefaultRedisPassword Redis密码
2332 DefaultRedisPassword = ""
33+ // DefaultRedisMaxIdle Redis连接池闲置连接数
2434 DefaultRedisMaxIdle = 10
35+ // DefaultRedisMaxActive Redis连接池最大激活连接数, 0为不限制
2536 DefaultRedisMaxActive = 0
37+ // DefaultRedisConnectTimeout Redis连接超时时间,单位毫秒
2638 DefaultRedisConnectTimeout = 5000
39+ // DefaultRedisReadTimeout Redis读取超时时间, 单位毫秒
2740 DefaultRedisReadTimeout = 180000
41+ // DefaultRedisWriteTimeout Redis写入超时时间, 单位毫秒
2842 DefaultRedisWriteTimeout = 3000
2943)
3044
45+ // Config 应用配置
3146type Config struct {
3247 BindAddress string // http server 监听地址
3348 BucketSize int // bucket数量
@@ -37,6 +52,7 @@ type Config struct {
3752 Redis RedisConfig // redis配置
3853}
3954
55+ // RedisConfig Redis配置
4056type RedisConfig struct {
4157 Host string
4258 Db int
@@ -48,6 +64,7 @@ type RedisConfig struct {
4864 WriteTimeout int // 写入超时, 单位毫秒
4965}
5066
67+ // Init 初始化配置
5168func Init (path string ) {
5269 Setting = & Config {}
5370 if path == "" {
@@ -58,6 +75,7 @@ func Init(path string) {
5875 Setting .parse (path )
5976}
6077
78+ // 解析配置文件
6179func (config * Config ) parse (path string ) {
6280 file , err := ini .Load (path )
6381 if err != nil {
@@ -81,6 +99,7 @@ func (config *Config) parse(path string) {
8199 config .Redis .WriteTimeout = section .Key ("redis.write_timeout" ).MustInt (DefaultRedisWriteTimeout )
82100}
83101
102+ // 初始化默认配置
84103func (config * Config ) initDefaultConfig () {
85104 config .BindAddress = DefaultBindAddress
86105 config .BucketSize = DefaultBucketSize
0 commit comments