diff --git a/etc/emqx.conf b/etc/emqx.conf index f7dccfd27..19f85a877 100644 --- a/etc/emqx.conf +++ b/etc/emqx.conf @@ -1651,6 +1651,12 @@ listener.ssl.external.reuseaddr = true ## Value: true | false ## listener.ssl.external.gc_after_handshake = false +## hibernate the SSL process after idling for amount of time +## Default: undefined (off) +## +## Value: Duration +## listener.ssl.external.hibernate_after = 5s + ##-------------------------------------------------------------------- ## External WebSocket listener for MQTT protocol diff --git a/priv/emqx.schema b/priv/emqx.schema index b6b267abf..1b5232b51 100644 --- a/priv/emqx.schema +++ b/priv/emqx.schema @@ -1604,6 +1604,11 @@ end}. {datatype, {enum, [true, false]}} ]}. +{mapping, "listener.ssl.$name.hibernate_after", "emqx.listeners", [ + {default, undefined}, + {datatype, {duration, ms}} +]}. + %%-------------------------------------------------------------------- %% MQTT/WebSocket Listeners @@ -2228,7 +2233,8 @@ end}. {reuse_sessions, cuttlefish:conf_get(Prefix ++ ".reuse_sessions", Conf, undefined)}, {honor_cipher_order, cuttlefish:conf_get(Prefix ++ ".honor_cipher_order", Conf, undefined)}, {log_level, cuttlefish:conf_get(Prefix ++ ".log_level", Conf, undefined)}, - {gc_after_handshake, cuttlefish:conf_get(Prefix ++ ".gc_after_handshake", Conf, undefined)} + {gc_after_handshake, cuttlefish:conf_get(Prefix ++ ".gc_after_handshake", Conf, undefined)}, + {hibernate_after, cuttlefish:conf_get(Prefix ++ ".hibernate_after", Conf, undefined)} ]) end,