41 lines
1.9 KiB
Go
Executable File
41 lines
1.9 KiB
Go
Executable File
package config
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/zeromicro/go-zero/core/stores/redis"
|
|
"github.com/zeromicro/go-zero/zrpc"
|
|
)
|
|
|
|
type Config struct {
|
|
zrpc.RpcServerConf
|
|
Binance Binance
|
|
// Redis Cluster
|
|
RedisCluster redis.RedisConf
|
|
Cassandra Cassandra
|
|
}
|
|
|
|
type Binance struct {
|
|
Key string
|
|
Secret string
|
|
TestMode bool
|
|
WorkerSize int64
|
|
}
|
|
|
|
// Cassandra 資料庫設定
|
|
type Cassandra struct {
|
|
Hosts []string `json:"hosts" env:"CASSANDRA_HOSTS"` // Cassandra 主機列表(逗號分隔)
|
|
Port int `json:"port" env:"CASSANDRA_PORT"` // 連線埠
|
|
Keyspace string `json:"keyspace" env:"CASSANDRA_KEYSPACE"` // 使用的 Keyspace 名稱
|
|
UseAuth bool `json:"useAuth" env:"CASSANDRA_USE_AUTH"` // 是否使用帳號密碼
|
|
Username string `json:"username" env:"CASSANDRA_USERNAME"` // 認證用戶名
|
|
Password string `json:"password" env:"CASSANDRA_PASSWORD"` // 認證密碼
|
|
ConnectTimeoutSec int `json:"connectTimeoutSec" env:"CASSANDRA_CONNECT_TIMEOUT"` // 連線逾時(秒)
|
|
NumConns int `json:"numConns" env:"CASSANDRA_NUM_CONNS"` // 每節點連線數
|
|
MaxRetries int `json:"maxRetries" env:"CASSANDRA_MAX_RETRIES"` // 重試次數
|
|
RetryMin time.Duration `json:"retryMin" env:"CASSANDRA_RETRY_MIN"` // 最小重試間隔
|
|
RetryMax time.Duration `json:"retryMax" env:"CASSANDRA_RETRY_MAX"` // 最大重試間隔
|
|
ReconnectInitial time.Duration `json:"reconnectInitial" env:"CASSANDRA_RECONNECT_INITIAL"` // 初始重連間隔
|
|
ReconnectMax time.Duration `json:"reconnectMax" env:"CASSANDRA_RECONNECT_MAX"` // 最大重連間隔
|
|
}
|