Tune and optimize the Erlang VM (#3195)
This commit is contained in:
parent
a318532bb0
commit
3ae3d8a40d
|
@ -221,7 +221,7 @@ node.data_dir = {{ platform_data_dir }}
|
|||
## Value: Number [1024-134217727]
|
||||
##
|
||||
## vm.args: +P Number
|
||||
node.process_limit = 2048000
|
||||
## node.process_limit = 2048000
|
||||
|
||||
## Sets the maximum number of simultaneously existing ports for this system.
|
||||
##
|
||||
|
@ -230,7 +230,7 @@ node.process_limit = 2048000
|
|||
## Value: Number [1024-134217727]
|
||||
##
|
||||
## vm.args: +Q Number
|
||||
node.max_ports = 1024000
|
||||
## node.max_ports = 1024000
|
||||
|
||||
## Set the distribution buffer busy limit (dist_buf_busy_limit).
|
||||
##
|
||||
|
@ -239,7 +239,7 @@ node.max_ports = 1024000
|
|||
## Value: Number [1KB-2GB]
|
||||
##
|
||||
## vm.args: +zdbbl size
|
||||
node.dist_buffer_size = 8MB
|
||||
## node.dist_buffer_size = 8MB
|
||||
|
||||
## Sets the maximum number of ETS tables. Note that mnesia and SSL will
|
||||
## create temporary ETS tables.
|
||||
|
@ -247,7 +247,7 @@ node.dist_buffer_size = 8MB
|
|||
## Value: Number
|
||||
##
|
||||
## vm.args: +e Number
|
||||
node.max_ets_tables = 256000
|
||||
## node.max_ets_tables = 256000
|
||||
|
||||
## Global GC Interval.
|
||||
##
|
||||
|
@ -266,7 +266,7 @@ node.global_gc_interval = 15m
|
|||
## Value: Number [0-65535]
|
||||
##
|
||||
## vm.args: -env ERL_FULLSWEEP_AFTER Number
|
||||
node.fullsweep_after = 1000
|
||||
## node.fullsweep_after = 1000
|
||||
|
||||
## Crash dump log file.
|
||||
##
|
||||
|
@ -289,7 +289,7 @@ node.crash_dump = {{ platform_log_dir }}/crash.dump
|
|||
## Value: Number
|
||||
##
|
||||
## vm.args: -kernel net_ticktime Number
|
||||
node.dist_net_ticktime = 60
|
||||
## node.dist_net_ticktime = 120
|
||||
|
||||
## Sets the port range for the listener socket of a distributed Erlang node.
|
||||
## Note that if there are firewalls between clustered nodes, this port segment
|
||||
|
|
11
etc/vm.args
11
etc/vm.args
|
@ -10,13 +10,13 @@
|
|||
## such as `node.name` for `-name` and `node.cooke` for `-setcookie`.
|
||||
|
||||
## Sets the maximum number of simultaneously existing processes for this system.
|
||||
#+P 2048000
|
||||
+P 2048000
|
||||
|
||||
## Sets the maximum number of simultaneously existing ports for this system.
|
||||
#+Q 1024000
|
||||
+Q 1024000
|
||||
|
||||
## Sets the maximum number of ETS tables
|
||||
#+e 256000
|
||||
+e 256000
|
||||
|
||||
## Sets the maximum number of atoms the virtual machine can handle.
|
||||
#+t 1048576
|
||||
|
@ -26,7 +26,7 @@
|
|||
|
||||
## Set how many times generational garbages collections can be done without
|
||||
## forcing a fullsweep collection.
|
||||
#-env ERL_FULLSWEEP_AFTER 1000
|
||||
-env ERL_FULLSWEEP_AFTER 1000
|
||||
|
||||
## Heartbeat management; auto-restarts VM if it dies or becomes unresponsive
|
||||
## (Disabled by default..use with caution!)
|
||||
|
@ -43,7 +43,7 @@
|
|||
## Specifies the net_kernel tick time in seconds.
|
||||
## This is the approximate time a connected node may be unresponsive until
|
||||
## it is considered down and thereby disconnected.
|
||||
#-kernel net_ticktime 60
|
||||
-kernel net_ticktime 120
|
||||
|
||||
## Sets the distribution buffer busy limit (dist_buf_busy_limit).
|
||||
#+zdbbl 8192
|
||||
|
@ -98,3 +98,4 @@
|
|||
## Specifies how long time (in milliseconds) to spend shutting down the system.
|
||||
## See: http://erlang.org/doc/man/erl.html
|
||||
#-shutdown_time 15000
|
||||
|
||||
|
|
|
@ -242,16 +242,12 @@ end}.
|
|||
%% @doc Erlang Process Limit
|
||||
{mapping, "node.process_limit", "vm_args.+P", [
|
||||
{datatype, integer},
|
||||
{default, 256000},
|
||||
hidden
|
||||
]}.
|
||||
|
||||
%% Note: OTP R15 and earlier uses -env ERL_MAX_PORTS, R16+ uses +Q
|
||||
%% @doc The number of concurrent ports/sockets
|
||||
%% @doc The maximum number of concurrent ports/sockets.
|
||||
%% Valid range is 1024-134217727
|
||||
{mapping, "node.max_ports",
|
||||
cuttlefish:otp("R16", "vm_args.+Q", "vm_args.-env ERL_MAX_PORTS"), [
|
||||
{default, 262144},
|
||||
{mapping, "node.max_ports", "vm_args.+Q", [
|
||||
{datatype, integer},
|
||||
{validators, ["range4ports"]}
|
||||
]}.
|
||||
|
@ -319,7 +315,6 @@ end}.
|
|||
|
||||
%% @doc http://www.erlang.org/doc/man/kernel_app.html#net_ticktime
|
||||
{mapping, "node.dist_net_ticktime", "vm_args.-kernel net_ticktime", [
|
||||
{commented, 60},
|
||||
{datatype, integer},
|
||||
hidden
|
||||
]}.
|
||||
|
|
Loading…
Reference in New Issue