尽管NATS可以无配置的运行,但也可以使用配置文件配置NATS服务器
1. 配置项包括
- 客户端监听器端口 Client listening port
- HTTP监听器端口 HTTP monitoring port
- 客户端认证 Client auth
- 集群定义 Cluster definitions
- 集群路由 Cluster routes
- 日志 Logging
- 最大客户端连接数 Max client connections
- 最大有效负载 Max payload
- 慢消费者阀值 Slow consumer threshold
2. 配置文件的语法
NATS服务器配置文件的格式比较灵活,结合了传统的JSON格式和新的YAML格式的风格
注:YAML不是标记语言,而是一种语言中立的、对阅读友好的数据序列化标准。YAML语言发展了三个版本,1.0、1.1、1.2
3. NATS服务器配置文件示例
port: 4222 # 供客户端连接的监听端口
net: 0.0.0.0 # 监听的网络地址 http_port: 8222 # HTTP监控端口 # 客户端连接的认证信息
#authorization {
# user: sg
# password: 123456
# timeout: 1
#}
# 用户名和密码必须大于8位,字母和数字混合
authorization {
PASS: shuguo123
users = [
{user: shuguo, password: $PASS}
{user: shuguo1, password: shuguo123}
{user: shuguo2, password: shuguo123}
{user: shuguo3, password: shuguo123}
{user: shuguo4, password: shuguo123}
{user: shuguo5, password: shuguo123}
]
} # 集群定义
cluster { host: '172.19.9.66' # 主机地址
port: 4224 # 路由连接的入站(inbound)端口 # 路由连接的认证信息
authorization {
user: route_shuguo
password: shuguo123
timeout: 0.5
} # Routes are actively solicited and connected to from this server.
# Other servers can connect to us if they supply the correct credentials
# in their routes definitions from above.
routes = [
nats-route://route_shuguo:shuguo123@117.143.185.150:4224
nats-route://route_shuguo:shuguo123@114.115.139.85:4224
#nats-route://user2:pass2@183.230.102.41:4224
]
} # 日志选项
debug: false
trace: true
logtime: false
log_file: "/var/log/gnatsd.log" # PID进程文件
pid_file: "/var/run/gnatsd.pid" # 一些系统属性 # 客户端最大连接数
max_connections: 100 # 最大协议控制行
max_control_line: 512 # 最大的有效负载
max_payload: 65536 # 慢消费者阀值
write_deadline: "2s"
转自:http://blog.csdn.net/chszs/article/details/51026728