diff options
| author | Michael Klishin <michael@novemberain.com> | 2018-05-31 22:44:55 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-05-31 22:44:55 +0300 |
| commit | 438ffcec3bca3e87862c7cfff1a7a670a06c98cb (patch) | |
| tree | 1d20900797a01a78732a8bdbc7bd0a629d57475e /scripts/rabbitmq-server.bat | |
| parent | 4e4624208fd30bac46c280caca7c0f12a2c4aa6b (diff) | |
| parent | ced1c03338dbb0e19a7ceccd1874432d4235e15f (diff) | |
| download | rabbitmq-server-git-438ffcec3bca3e87862c7cfff1a7a670a06c98cb.tar.gz | |
Merge pull request #1604 from essen/better-default-allocs
Use more optimal default memory allocators where available (Erlang 20.2.3 or later)
Diffstat (limited to 'scripts/rabbitmq-server.bat')
| -rw-r--r-- | scripts/rabbitmq-server.bat | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/scripts/rabbitmq-server.bat b/scripts/rabbitmq-server.bat index 7f3751f298..f6a61842fd 100644 --- a/scripts/rabbitmq-server.bat +++ b/scripts/rabbitmq-server.bat @@ -72,6 +72,27 @@ if ERRORLEVEL 2 ( set RABBITMQ_DIST_ARG=-kernel inet_dist_listen_min !RABBITMQ_DIST_PORT! -kernel inet_dist_listen_max !RABBITMQ_DIST_PORT!
)
+rem The default allocation strategy RabbitMQ is using was introduced
+rem in Erlang/OTP 20.2.3. Earlier Erlang versions fail to start with
+rem this configuration. We therefore need to ensure that erl accepts
+rem these values before we can use them.
+rem
+rem The defaults are meant to reduce RabbitMQ's memory usage and help
+rem it reclaim memory at the cost of a slight decrease in performance
+rem (due to an increase in memory operations). These defaults can be
+rem overriden using the RABBITMQ_SERVER_ERL_ARGS variable.
+
+set RABBITMQ_DEFAULT_ALLOC_ARGS=+MBas ageffcbf +MHas ageffcbf +MBlmbcs 512 +MHlmbcs 512 +MMmcs 30
+
+"!ERLANG_HOME!\bin\erl.exe" ^
+ !RABBITMQ_DEFAULT_ALLOC_ARGS! ^
+ -boot !CLEAN_BOOT_FILE! ^
+ -noinput -eval "halt(0)"
+
+if ERRORLEVEL 1 (
+ set RABBITMQ_DEFAULT_ALLOC_ARGS=
+)
+
if not exist "!RABBITMQ_SCHEMA_DIR!" (
mkdir "!RABBITMQ_SCHEMA_DIR!"
)
@@ -173,6 +194,7 @@ if "!ENV_OK!"=="false" ( !RABBITMQ_NAME_TYPE! !RABBITMQ_NODENAME! ^
+W w ^
+A "!RABBITMQ_IO_THREAD_POOL_SIZE!" ^
+!RABBITMQ_DEFAULT_ALLOC_ARGS! ^
!RABBITMQ_SERVER_ERL_ARGS! ^
!RABBITMQ_LISTEN_ARG! ^
-kernel inet_default_connect_options "[{nodelay, true}]" ^
|
