Merge pull request #13434 from zmstone/0704-refine-rpc-config
0704 refine rpc config
This commit is contained in:
commit
7664b06e98
|
@ -137,7 +137,7 @@ maybe_badrpc(Delivery) ->
|
||||||
Delivery.
|
Delivery.
|
||||||
|
|
||||||
max_client_num() ->
|
max_client_num() ->
|
||||||
emqx:get_config([rpc, tcp_client_num], ?DefaultClientNum).
|
emqx:get_config([rpc, client_num], ?DefaultClientNum).
|
||||||
|
|
||||||
-spec unwrap_erpc(emqx_rpc:erpc(A) | [emqx_rpc:erpc(A)]) -> A | {error, _Err} | list().
|
-spec unwrap_erpc(emqx_rpc:erpc(A) | [emqx_rpc:erpc(A)]) -> A | {error, _Err} | list().
|
||||||
unwrap_erpc(Res) when is_list(Res) ->
|
unwrap_erpc(Res) when is_list(Res) ->
|
||||||
|
|
|
@ -86,6 +86,8 @@
|
||||||
external_broker_crashed
|
external_broker_crashed
|
||||||
]).
|
]).
|
||||||
|
|
||||||
|
-define(DEFAULT_RPC_PORT, 5369).
|
||||||
|
|
||||||
%% Callback to upgrade config after loaded from config file but before validation.
|
%% Callback to upgrade config after loaded from config file but before validation.
|
||||||
upgrade_raw_conf(Raw0) ->
|
upgrade_raw_conf(Raw0) ->
|
||||||
Raw1 = emqx_connector_schema:transform_bridges_v1_to_connectors_and_bridges_v2(Raw0),
|
Raw1 = emqx_connector_schema:transform_bridges_v1_to_connectors_and_bridges_v2(Raw0),
|
||||||
|
@ -756,30 +758,22 @@ fields("rpc") ->
|
||||||
desc => ?DESC(rpc_port_discovery)
|
desc => ?DESC(rpc_port_discovery)
|
||||||
}
|
}
|
||||||
)},
|
)},
|
||||||
{"tcp_server_port",
|
{"server_port",
|
||||||
sc(
|
sc(
|
||||||
integer(),
|
pos_integer(),
|
||||||
#{
|
#{
|
||||||
mapping => "gen_rpc.tcp_server_port",
|
aliases => [tcp_server_port, ssl_server_port],
|
||||||
default => 5369,
|
default => ?DEFAULT_RPC_PORT,
|
||||||
desc => ?DESC(rpc_tcp_server_port)
|
desc => ?DESC(rpc_server_port)
|
||||||
}
|
}
|
||||||
)},
|
)},
|
||||||
{"ssl_server_port",
|
{"client_num",
|
||||||
sc(
|
|
||||||
integer(),
|
|
||||||
#{
|
|
||||||
mapping => "gen_rpc.ssl_server_port",
|
|
||||||
default => 5369,
|
|
||||||
desc => ?DESC(rpc_ssl_server_port)
|
|
||||||
}
|
|
||||||
)},
|
|
||||||
{"tcp_client_num",
|
|
||||||
sc(
|
sc(
|
||||||
range(1, 256),
|
range(1, 256),
|
||||||
#{
|
#{
|
||||||
|
aliases => [tcp_client_num],
|
||||||
default => 10,
|
default => 10,
|
||||||
desc => ?DESC(rpc_tcp_client_num)
|
desc => ?DESC(rpc_client_num)
|
||||||
}
|
}
|
||||||
)},
|
)},
|
||||||
{"connect_timeout",
|
{"connect_timeout",
|
||||||
|
@ -1139,8 +1133,10 @@ translation("emqx") ->
|
||||||
translation("gen_rpc") ->
|
translation("gen_rpc") ->
|
||||||
[
|
[
|
||||||
{"default_client_driver", fun tr_gen_rpc_default_client_driver/1},
|
{"default_client_driver", fun tr_gen_rpc_default_client_driver/1},
|
||||||
{"tcp_client_port", fun tr_gen_rpc_tcp_client_port/1},
|
{"tcp_server_port", fun tr_gen_rpc_port/1},
|
||||||
{"ssl_client_port", fun tr_gen_rpc_ssl_client_port/1},
|
{"ssl_server_port", fun tr_gen_rpc_port/1},
|
||||||
|
{"tcp_client_port", fun tr_gen_rpc_port/1},
|
||||||
|
{"ssl_client_port", fun tr_gen_rpc_port/1},
|
||||||
{"ssl_client_options", fun tr_gen_rpc_ssl_options/1},
|
{"ssl_client_options", fun tr_gen_rpc_ssl_options/1},
|
||||||
{"ssl_server_options", fun tr_gen_rpc_ssl_options/1},
|
{"ssl_server_options", fun tr_gen_rpc_ssl_options/1},
|
||||||
{"socket_ip", fun(Conf) ->
|
{"socket_ip", fun(Conf) ->
|
||||||
|
@ -1224,11 +1220,8 @@ collector_enabled(disabled, _) -> [].
|
||||||
tr_gen_rpc_default_client_driver(Conf) ->
|
tr_gen_rpc_default_client_driver(Conf) ->
|
||||||
conf_get("rpc.protocol", Conf).
|
conf_get("rpc.protocol", Conf).
|
||||||
|
|
||||||
tr_gen_rpc_tcp_client_port(Conf) ->
|
tr_gen_rpc_port(Conf) ->
|
||||||
conf_get("rpc.tcp_server_port", Conf).
|
conf_get("rpc.server_port", Conf).
|
||||||
|
|
||||||
tr_gen_rpc_ssl_client_port(Conf) ->
|
|
||||||
conf_get("rpc.ssl_server_port", Conf).
|
|
||||||
|
|
||||||
tr_gen_rpc_ssl_options(Conf) ->
|
tr_gen_rpc_ssl_options(Conf) ->
|
||||||
Ciphers = conf_get("rpc.ciphers", Conf),
|
Ciphers = conf_get("rpc.ciphers", Conf),
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
Simplified `rpc` configs.
|
||||||
|
|
||||||
|
- New config `rpc.server_port` is added to replace `rpc.tcp_server_port` and `rpc.ssl_server_port`.
|
||||||
|
- `rpc.tcp_client_num` is renamed to `rpc.client_num` since this config is for both TCP and SSL.
|
||||||
|
|
||||||
|
The old config names are kept as aliases for backward compatibility.
|
|
@ -132,10 +132,11 @@ node_name.label:
|
||||||
"""Node Name"""
|
"""Node Name"""
|
||||||
|
|
||||||
rpc_port_discovery.desc:
|
rpc_port_discovery.desc:
|
||||||
"""<code>manual</code>: discover ports by <code>tcp_server_port</code>.<br/>
|
"""<code>manual</code>: discover ports by <code>server_port</code>.<br/>
|
||||||
<code>stateless</code>: discover ports in a stateless manner, using the following algorithm.
|
<code>stateless</code>: discover ports in a stateless manner, using the following algorithm.
|
||||||
If node name is <code>emqxN@127.0.0.1</code>, where the N is an integer,
|
If node name is <code>emqxN@127.0.0.1</code>, where the N is an integer,
|
||||||
then the listening port will be 5370 + N."""
|
then the listening port will be 5370 + N.
|
||||||
|
NOTE: when `port_discovery` is `manual`, `server_port` configuration has no effect."""
|
||||||
|
|
||||||
rpc_port_discovery.label:
|
rpc_port_discovery.label:
|
||||||
"""RRC Port Discovery"""
|
"""RRC Port Discovery"""
|
||||||
|
@ -358,12 +359,12 @@ to <code>rlog</code>."""
|
||||||
db_role.label:
|
db_role.label:
|
||||||
"""DB Role"""
|
"""DB Role"""
|
||||||
|
|
||||||
rpc_tcp_server_port.desc:
|
rpc_server_port.desc:
|
||||||
"""Listening port used by RPC local service.<br/>
|
"""Listening port used by RPC local service.<br/>
|
||||||
Note that this config only takes effect when rpc.port_discovery is set to manual."""
|
Note that this config only takes effect when rpc.port_discovery is set to manual."""
|
||||||
|
|
||||||
rpc_tcp_server_port.label:
|
rpc_server_port.label:
|
||||||
"""RPC TCP Server Port"""
|
"""RPC Server Port"""
|
||||||
|
|
||||||
desc_console_handler.desc:
|
desc_console_handler.desc:
|
||||||
"""Log handler that prints log events to the EMQX console."""
|
"""Log handler that prints log events to the EMQX console."""
|
||||||
|
@ -383,10 +384,10 @@ log_burst_limit_max_count.desc:
|
||||||
log_burst_limit_max_count.label:
|
log_burst_limit_max_count.label:
|
||||||
"""Events Number"""
|
"""Events Number"""
|
||||||
|
|
||||||
rpc_tcp_client_num.desc:
|
rpc_client_num.desc:
|
||||||
"""Set the maximum number of RPC communication channels initiated by this node to each remote node."""
|
"""Set the maximum number of RPC communication channels initiated by this node to each remote node."""
|
||||||
|
|
||||||
rpc_tcp_client_num.label:
|
rpc_client_num.label:
|
||||||
"""RPC TCP Client Num"""
|
"""RPC TCP Client Num"""
|
||||||
|
|
||||||
cluster_k8s_address_type.desc:
|
cluster_k8s_address_type.desc:
|
||||||
|
@ -734,14 +735,6 @@ this is where to look."""
|
||||||
desc_rpc.label:
|
desc_rpc.label:
|
||||||
"""RPC"""
|
"""RPC"""
|
||||||
|
|
||||||
rpc_ssl_server_port.desc:
|
|
||||||
"""Listening port used by RPC local service.<br/>
|
|
||||||
Note that this config only takes effect when rpc.port_discovery is set to manual
|
|
||||||
and <code>driver</code> is set to <code>ssl</code>."""
|
|
||||||
|
|
||||||
rpc_ssl_server_port.label:
|
|
||||||
"""RPC SSL Server Port"""
|
|
||||||
|
|
||||||
desc_cluster.desc:
|
desc_cluster.desc:
|
||||||
"""EMQX nodes can form a cluster to scale up the total capacity.<br/>
|
"""EMQX nodes can form a cluster to scale up the total capacity.<br/>
|
||||||
Here holds the configs to instruct how individual nodes can discover each other."""
|
Here holds the configs to instruct how individual nodes can discover each other."""
|
||||||
|
|
Loading…
Reference in New Issue