nsqd部署参数详解
Usage of nsqd:
-auth-http-address value
<addr>:<port>或查询身份验证服务器的完整url(可以多次给定,列表读取)
-broadcast-address string
此lookupd节点的地址(默认为操作系统主机名称);仅用于标识nsqd服务器名称
-broadcast-http-port int
将向lookupd注册的HTTP端口(默认为此nsqd正在侦听的HTTP端口)
-broadcast-tcp-port int
将向lookupd注册的TCP端口(默认为此nsqd正在侦听的TCP端口)
-config string
配置文件地址,解析使用参数的优先级如下:
1. 命令行获取
2. 弃用的命令Key获取
3. 配置文件config中获取
4. 命令行给的默认值获取
5. 结构体初始化给的初始值
-data-path string
数据落盘存放的位置
-deflate
启用deflate功能协商(客户端压缩)(默认为true);仅控制客户端是否需要压缩数据;客户端函数upgradeDeflate(level int);deflate是通用的压缩算法,压缩率较高,但压缩速度相对较慢
-e2e-processing-latency-percentile value
要跟踪的消息处理时间百分位数(浮点数范围(0,1.0])(可以多次指定或逗号分隔“1.0,0.99,0.95”,默认为无)
详解见github.com/bmizerany/perks/quantile此包源码
-e2e-processing-latency-window-time duration
计算这段时间的端到端延迟分位数(即:60秒只显示过去60秒的分位数计算)(默认为10分钟)
详解见github.com/bmizerany/perks/quantile此包源码
-http-address string
HTTP客户端要侦听的地址(<addr>:<port>用于TCP/IP,<path>用于unix套接字)(默认值为“0.0.0.0:4151”)
-http-client-connect-timeout duration
http客户端连接超时时间,默认2秒
-http-client-request-timeout duration
http客户端请求的超时时间,默认5秒
-https-address string
<addr>:<port> 用于侦听HTTPS客户端(默认值为“0.0.0.0:4152”)
-log-level value
日志输出等级,选项(debug, info, warn, error, or fatal),默认info
-log-prefix string
日志信息输出前缀(default "[nsqd] ")
-lookupd-tcp-address value
lookupd的TCP地址,可以多次给定,列表读取;用于将此nsqd注册信息(topic和channel)同步到lookupd服务器上,生产者消费者通过lookupd服务器获取可用的nsqd服务器地址
-max-body-size int
单个命令体的最大大小(默认值5242880,5MB)
-max-bytes-per-file int
滚动前每个磁盘队列文件的字节数(默认值104857600,100MB)
-max-channel-consumers int
每个nsqd实例的最大通道使用者连接计数(默认为0,即无限制),单个channel的最大连接客户端数
-max-deflate-level int
客户端可以协商的最大压缩级别(>值==>nsqd CPU使用率)(默认值6),范围[1,9];仅控制客户端压缩数据级别
-max-heartbeat-interval duration
客户端可配置的客户端检测信号之间的最大间隔时间(默认为1分钟),最小1000毫秒代码写死
-max-msg-size int
单个消息的最大大小(以字节为单位)(默认值为1048576,1MB)
-max-msg-timeout duration
客户端可设置消息超时的最长时间(默认为15分钟),超过则设置失败
-max-output-buffer-size int
客户端输出到缓冲区的最大客户端可配置大小(以字节为单位)(默认为65536,64KB)
-max-output-buffer-timeout duration
客户端可配置的刷新到客户端数据的最长轮循时间(默认为30秒)
-max-rdy-count int
客户端标记为消费中的最大条数,client/topic/channel标记为消费中的最大条数,默认2500条
-max-req-timeout duration
客户端请求消费的任务主动标记超时时间最大值,默认1小时;若客户端标记获取的任务延迟2小时未处理算成超时任务,那么服务器仅给出1小时最大宽限时长;此时间之后未确认消费则重新入队此任务
-mem-queue-size int
topic/channel存放消息的内存大小,默认10000条
-min-output-buffer-timeout duration
客户端可配置的刷新到客户端数据的最短轮循时间(默认为25毫秒)
-msg-timeout duration
消息被客户端读取后等待的最长时间,过了此时间则自动重新入队,默认1分钟
-node-id int
消息ID的唯一部分,[0,1024)范围内(默认为主机名的散列),存在极小可能两台主机散列计算结果一致,此时就需要指定此id值
-output-buffer-timeout duration
将数据刷新到客户端数据的轮循时间(默认为250毫秒)
-queue-scan-selection-count int
每个周期(每100毫秒,程序中写死)要检查的飞行中和延迟超时的通道数(默认为20)
-queue-scan-worker-pool-max int
控制队列扫描时的最大工作协程数量(默认为4)
-snappy
启用快速功能协商(客户端压缩)(默认为true),与deflate互斥,若均启用则会引发“cannot enable both deflate and snappy compression”错误,服务器可以同时启用,客户端只能启用其中一个;客户端函数upgradeSnappy();snappy压缩算法的压缩速度很快,但压缩率相对较低
-statsd-address string
用于推送统计数据的statsd守护进程,UDP协议传输,格式<addr>:<port>
-statsd-exclude-ephemeral
Skip ephemeral topics and channels when sending stats to statsd
-statsd-interval duration
推送统计数据的时间间隔(默认1分钟)
-statsd-mem-stats
是否将内存和GC统计信息一起发送到statsd中(默认为true)
-statsd-prefix string
用于发送到statsd的密钥的前缀(%s用于主机替换)(默认为“nsq.%s”)
-statsd-udp-packet-size int
statsd UDP数据包的大小(以字节为单位)(默认为508)
-sync-every int
磁盘队列的读取操作次数,达到此值时异步持久化一次fsync(默认2500次)
-sync-timeout duration
每个磁盘队列的轮循时间,达到此值时异步持久化一次fsync(默认为2s)
-tcp-address string
TCP客户端要侦听的地址(<addr>:<port>用于TCP/IP或<path>用于unix套接字)(默认值为“0.0.0.0:4150”)
-tls-cert string
ca证书文件地址,eg:./test/certs/server.pem
-tls-client-auth-policy string
客户端认证证书,选项('require' or 'require-verify'),默认为空不验证客户端证书,require必须上传一个证书,不用验证是否有效,require-verify必须上传一个有效的证书
-tls-key string
ca证书key文件地址,eg:./test/certs/server.key
-tls-min-version value
可接受的最低SSL/TLS版本(“ssl3.0”、“tls1.0”、“tls1.1”、“tls1.2”或“tls1.3”)(默认tls1.0)
-tls-required
客户端连接是否需要TLS证书认证,选项(true, false, tcp-https),默认false;true指https证书认证,tcp-https指tcp证书认证
-tls-root-ca-file string
根证书的文件地址,eg:./test/certs/ca.pem
-verbose
弃用,使用--log-level传参
-version
输出版本号
-worker-id
弃用,使用--node-id传参