summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancesco Mazzoli <francesco@rabbitmq.com>2012-07-19 16:14:09 +0100
committerFrancesco Mazzoli <francesco@rabbitmq.com>2012-07-19 16:14:09 +0100
commitcdfc1b7b26f6a874ff24cedbc1d733057f33dfd7 (patch)
tree6c25409aaf0306f564e89aba9a5d346c43cf334b
parentb2b656f419b024f7bdda3528c303c8f9bf69a220 (diff)
downloadrabbitmq-server-bug24971.tar.gz
enable heartbeats with a 10 minutes interval by defaultbug24971
I tested with 20k connections and the CPU usage is reasonable on my machine.
-rw-r--r--ebin/rabbit_app.in1
-rw-r--r--src/rabbit_reader.erl6
2 files changed, 6 insertions, 1 deletions
diff --git a/ebin/rabbit_app.in b/ebin/rabbit_app.in
index 523b54ce..087c62a9 100644
--- a/ebin/rabbit_app.in
+++ b/ebin/rabbit_app.in
@@ -25,6 +25,7 @@
%% 0 ("no limit") would make a better default, but that
%% breaks the QPid Java client
{frame_max, 131072},
+ {heartbeat, 600},
{msg_store_file_size_limit, 16777216},
{queue_index_max_journal_entries, 262144},
{default_user, <<"guest">>},
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index bd5cf588..61868cc1 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -740,6 +740,10 @@ server_frame_max() ->
{ok, FrameMax} = application:get_env(rabbit, frame_max),
FrameMax.
+server_heartbeat() ->
+ {ok, Heartbeat} = application:get_env(rabbit, heartbeat),
+ Heartbeat.
+
send_on_channel0(Sock, Method, Protocol) ->
ok = rabbit_writer:internal_send_command(Sock, 0, Method, Protocol).
@@ -791,7 +795,7 @@ auth_phase(Response,
{ok, User} ->
Tune = #'connection.tune'{channel_max = 0,
frame_max = server_frame_max(),
- heartbeat = 0},
+ heartbeat = server_heartbeat()},
ok = send_on_channel0(Sock, Tune, Protocol),
State#v1{connection_state = tuning,
connection = Connection#connection{user = User}}