我的emqx版本太久了,使用的是3.0.1版本,目前打算升级到5.6.1,但是对emqx.conf的配置有点疑问,因为版本跨度有点大,我怕我的emqx升级之后会因为我的配置影响我的业务,我的业务大概是这样的:人脸机设备和后台系统之间用emqx通讯,人脸机开机后后台系统检测到在线就创建客户端,然后下发2000条左右的人员数据(每条数据都包含base64图片数据)到设备上,每天大概会做30次左右的下发同步(按每次2000条计算),那我这个配置是否合理:
NOTE:
This config file overrides data/configs/cluster.hocon,
and is merged with environment variables which start with ‘EMQX_’ prefix.
Config changes made from EMQX dashboard UI, management HTTP API, or CLI
are stored in data/configs/cluster.hocon.
To avoid confusion, please do not store the same configs in both files.
See Configuration Files | EMQX Enterprise 5.0 Docs
Configuration full example can be found in emqx.conf.example
node {
name = “emqx1@192.168.63.75”
cookie = “emqxsecretcookie”
data_dir = “data”
}
cluster {
discovery_strategy = static
static {
seeds = [“emqx1@192.168.63.75”, “emqx2@192.168.63.76”, “emqx3@192.168.63.77”]
}
}
broker {
shared_subscription_strategy = random
}
dashboard {
listeners.http {
bind = 18083
}
}
authorization {
deny_action = ignore
no_match = allow
cache {
enable = true
}
}
mqtt {
max_packet_size = 4MB
max_clientid_len = 65535
max_qos_allowed = 2
max_topic_alias = 0
retain_available = true
wildcard_subscription = true
shared_subscription = true
ignore_loop_deliver = false
session_expiry_interval = 2h
max_mqueue_len = 1000
mqueue_store_qos0 = true
}
listeners.tcp.default {
bind = “0.0.0.0:1883”
max_connections = 1024000
}
listeners.ssl.default {
bind = “0.0.0.0:8883”
max_connections = 102400
ssl_options {
keyfile = “/usr/lib/emqx/etc/certs/key.pem”
certfile = “/usr/lib/emqx/etc/certs/cert.pem”
ciphers = “ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-DES-CBC3-SHA,ECDH-ECDSA-AES256-GCM-SHA384,ECDH-RSA-AES256-GCM-SHA384,ECDH-ECDSA-AES256-SHA384,ECDH-RSA-AES256-SHA384,DHE-DSS-AES256-GCM-SHA384,DHE-DSS-AES256-SHA256,AES256-GCM-SHA384,AES256-SHA256,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256,ECDH-ECDSA-AES128-GCM-SHA256,ECDH-RSA-AES128-GCM-SHA256,ECDH-ECDSA-AES128-SHA256,ECDH-RSA-AES128-SHA256,DHE-DSS-AES128-GCM-SHA256,DHE-DSS-AES128-SHA256,AES128-GCM-SHA256,AES128-SHA256,ECDHE-ECDSA-AES256-SHA,ECDHE-RSA-AES256-SHA,DHE-DSS-AES256-SHA,ECDH-ECDSA-AES256-SHA,ECDH-RSA-AES256-SHA,AES256-SHA,ECDHE-ECDSA-AES128-SHA,ECDHE-RSA-AES128-SHA,DHE-DSS-AES128-SHA,ECDH-ECDSA-AES128-SHA,ECDH-RSA-AES128-SHA,AES128-SHA”
}
}
listeners.ws.default {
bind = “0.0.0.0:8083”
max_connections = 102400
websocket.mqtt_path = “/mqtt”
}
listeners.wss.default {
bind = “0.0.0.0:8084”
max_connections = 1024
ssl_options {
keyfile = “/usr/lib/emqx/etc/certs/key.pem”
certfile = “/usr/lib/emqx/etc/certs/cert.pem”
ciphers = “ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-DES-CBC3-SHA,ECDH-ECDSA-AES256-GCM-SHA384,ECDH-RSA-AES256-GCM-SHA384,ECDH-ECDSA-AES256-SHA384,ECDH-RSA-AES256-SHA384,DHE-DSS-AES256-GCM-SHA384,DHE-DSS-AES256-SHA256,AES256-GCM-SHA384,AES256-SHA256,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256,ECDH-ECDSA-AES128-GCM-SHA256,ECDH-RSA-AES128-GCM-SHA256,ECDH-ECDSA-AES128-SHA256,ECDH-RSA-AES128-SHA256,DHE-DSS-AES128-GCM-SHA256,DHE-DSS-AES128-SHA256,AES128-GCM-SHA256,AES128-SHA256,ECDHE-ECDSA-AES256-SHA,ECDHE-RSA-AES256-SHA,DHE-DSS-AES256-SHA,ECDH-ECDSA-AES256-SHA,ECDH-RSA-AES256-SHA,AES256-SHA,ECDHE-ECDSA-AES128-SHA,ECDHE-RSA-AES128-SHA,DHE-DSS-AES128-SHA,ECDH-ECDSA-AES128-SHA,ECDH-RSA-AES128-SHA,AES128-SHA”
}
websocket.mqtt_path = “/mqtt”
}
强制垃圾回收配置
force_gc {
enable = true
count = 100000
bytes = “100MB”
}
客户端强制下线配置
force_shutdown {
enable = true
max_mailbox_size = 10000
max_heap_size = “64MB”
}