redesign config

This commit is contained in:
Feng Lee 2015-05-01 02:03:46 +08:00
parent fe13a5c435
commit 880bbfd5fe
1 changed files with 90 additions and 47 deletions

View File

@ -39,80 +39,123 @@
{logger, {lager, info}}
]},
{emqttd, [
{access_control, [
%% Authetication. , Anonymous Default
%% Authentication and Authorization
{access, [
%% Authetication. Anonymous Default
{auth, [
%% authentication with username, password
%% Authentication with username, password
%{username, []},
%% authentication with clientid
%% Authentication with clientid
%{clientid, [{password, no}, {file, "etc/clients.config"}]},
%% allow all
%% Allow all
{anonymous, []}
]},
%% ACL config
{acl, [
%% User internal ACL module
%% Internal ACL module
{internal, [{file, "etc/acl.config"}, {nomatch, allow}]}
]}
]},
%% MQTT Packet
{mqtt_packet, [
%% MQTT Protocol Options
{mqtt, [
%% Packet
{packet, [
%% Max ClientId Length Allowed
{max_clientid_len, 1024},
%% Max Packet Size Allowed, 4K default
{max_packet_size, 4096}
]},
%% MQTT Client
{mqtt_client, [
%% Client
{client, [
%TODO: Network ingoing limit
%{ingoing_rate_limit, '64KB/s'}
%TODO: Reconnet control
]},
%% MQTT Session
{mqtt_session, [
{expires, 24}, %hour
{max_queue, 1000},
%% Session
{session, [
%% Expired after 24 hours
{expires, 24},
%% Max offline message queue
{max_queue, 100},
%% Store Qos0?
{store_qos0, false}
]}
]},
%% MQTT Broker
{mqtt_broker, [
%% Broker Options
{broker, [
%% System interval of publishing broker $SYS messages
{sys_interval, 60}
]},
%% Retain messages
{sys_interval, 60},
%% Retained messages
{retained, [
%% Max number of retained messages
{max_message_num, 100000},
%% Max Payload Size of retained message
{max_playload_size, 4096}
]},
%% PubSub
{mqtt_pubsub, [
{pubsub, [
%% default should be scheduler numbers
%% {pool_size, 4}
]},
%% Bridge
{mqtt_bridge, [
{max_queue_len, 1000}, %NO effect now
{bridge, [
%%TODO: bridge queue size
{max_queue_len, 1000},
%% Ping Interval of bridge node
{ping_down_interval, 1} %seconds
]}
]},
%% Listen Ports
%% Listeners
{listeners, [
{mqtt, 1883, [
{backlog, 512},
%{buffer, 4096},
%% Size of acceptor pool
{acceptors, 16},
%% Maximum number of concurrent clients
{max_clients, 1024},
{access, [{allow, all}]}
%% Socket Access Control
{access, [{allow, all}]},
%% Socket Options
{sockopts, [
{backlog, 1024}
%Set buffer if hight thoughtput
%{recbuf, 4096},
%{sndbuf, 4096}
%{buffer, 4096},
]}
]},
{mqtts, 8883, [
{backlog, 128},
%% Size of acceptor pool
{acceptors, 4},
%% Maximum number of concurrent clients
{max_clients, 1024},
%% Socket Access Control
{access, [{allow, all}]},
%{cacertfile, "etc/ssl/cacert.pem"},
%% SSL certificate and key files
{ssl, [{certfile, "etc/ssl.crt"},
{keyfile, "etc/ssl.key"}]}
{keyfile, "etc/ssl.key"}]},
%% Socket Options
{sockopts, [
{backlog, 1024}
%{buffer, 4096},
]}
]},
%% HTTP and WebSocket Listener
{http, 8083, [
%% Size of acceptor pool
{acceptors, 4},
%% Maximum number of concurrent clients
{max_clients, 512},
{access, [{allow, "127.0.0.1"}]}
%% Socket Access Control
{access, [
{allow, "127.0.0.1"},
{deny, all}
]},
%% Socket Options
{sockopts, [
{backlog, 1024}
%{buffer, 4096},
]}
]}
]}
]}