From c147743895c13d84f687a3e10a16293f2153300c Mon Sep 17 00:00:00 2001 From: firest Date: Wed, 15 Jun 2022 14:57:49 +0800 Subject: [PATCH] fix(limiter): move default connection setting into schema --- apps/emqx/etc/emqx.conf | 5 ----- .../src/emqx_limiter/etc/emqx_limiter.conf | 11 ----------- .../emqx_limiter/src/emqx_limiter_schema.erl | 18 ++++++++++++++++-- apps/emqx/src/emqx_schema.erl | 2 +- 4 files changed, 17 insertions(+), 19 deletions(-) diff --git a/apps/emqx/etc/emqx.conf b/apps/emqx/etc/emqx.conf index f3dee0bcf..bd3ae4af0 100644 --- a/apps/emqx/etc/emqx.conf +++ b/apps/emqx/etc/emqx.conf @@ -1,13 +1,11 @@ listeners.tcp.default { bind = "0.0.0.0:1883" max_connections = 1024000 - limiter.connection = default } listeners.ssl.default { bind = "0.0.0.0:8883" max_connections = 512000 - limiter.connection = default ssl_options { keyfile = "{{ platform_etc_dir }}/certs/key.pem" certfile = "{{ platform_etc_dir }}/certs/cert.pem" @@ -18,14 +16,12 @@ listeners.ssl.default { listeners.ws.default { bind = "0.0.0.0:8083" max_connections = 1024000 - limiter.connection = default websocket.mqtt_path = "/mqtt" } listeners.wss.default { bind = "0.0.0.0:8084" max_connections = 512000 - limiter.connection = default websocket.mqtt_path = "/mqtt" ssl_options { keyfile = "{{ platform_etc_dir }}/certs/key.pem" @@ -38,7 +34,6 @@ listeners.wss.default { # enabled = false # bind = "0.0.0.0:14567" # max_connections = 1024000 -# limiter.connection = default # keyfile = "{{ platform_etc_dir }}/certs/key.pem" # certfile = "{{ platform_etc_dir }}/certs/cert.pem" #} diff --git a/apps/emqx/src/emqx_limiter/etc/emqx_limiter.conf b/apps/emqx/src/emqx_limiter/etc/emqx_limiter.conf index 36c48dde3..e69de29bb 100644 --- a/apps/emqx/src/emqx_limiter/etc/emqx_limiter.conf +++ b/apps/emqx/src/emqx_limiter/etc/emqx_limiter.conf @@ -1,11 +0,0 @@ -limiter { - connection { - rate = "1000/s" - bucket { - default { - rate = "1000/s" - capacity = 1000 - } - } - } -} diff --git a/apps/emqx/src/emqx_limiter/src/emqx_limiter_schema.erl b/apps/emqx/src/emqx_limiter/src/emqx_limiter_schema.erl index 835661654..1e4679ee3 100644 --- a/apps/emqx/src/emqx_limiter/src/emqx_limiter_schema.erl +++ b/apps/emqx/src/emqx_limiter/src/emqx_limiter_schema.erl @@ -31,7 +31,7 @@ get_bucket_cfg_path/2, desc/1, types/0, - infinity_value/0, + infinity_value/0 ]). -define(KILOBYTE, 1024). @@ -89,7 +89,7 @@ fields(limiter) -> {Type, ?HOCON(?R_REF(limiter_opts), #{ desc => ?DESC(Type), - default => #{} + default => make_limiter_default(Type) })} || Type <- types() ]; @@ -321,3 +321,17 @@ apply_unit("kb", Val) -> Val * ?KILOBYTE; apply_unit("mb", Val) -> Val * ?KILOBYTE * ?KILOBYTE; apply_unit("gb", Val) -> Val * ?KILOBYTE * ?KILOBYTE * ?KILOBYTE; apply_unit(Unit, _) -> throw("invalid unit:" ++ Unit). + +make_limiter_default(connection) -> + #{ + <<"rate">> => <<"1000/s">>, + <<"bucket">> => #{ + <<"default">> => + #{ + <<"rate">> => <<"1000/s">>, + <<"capacity">> => 1000 + } + } + }; +make_limiter_default(_) -> + #{}. diff --git a/apps/emqx/src/emqx_schema.erl b/apps/emqx/src/emqx_schema.erl index 8bd1da1f9..90b696fcd 100644 --- a/apps/emqx/src/emqx_schema.erl +++ b/apps/emqx/src/emqx_schema.erl @@ -1613,7 +1613,7 @@ base_listener(Bind) -> map("ratelimit_name", emqx_limiter_schema:bucket_name()), #{ desc => ?DESC(base_listener_limiter), - default => #{} + default => #{<<"connection">> => <<"default">>} } )} ].