mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00
Merge branch 'topic/christian/disconnect-slow-peers'
* topic/christian/disconnect-slow-peers: Bump cluster testsuite to pull in Broker backpressure tests Expand documentation of Broker events. Add sleep() BiF. Add backpressure disconnect notification to cluster.log and via telemetry Remove unneeded @loads from base/misc/version.zeek Add Cluster::nodeid_to_node() helper function Support re-peering with Broker peers that fall behind Add Zeek-level configurability of Broker slow-peer disconnects Bump Broker to pull in disconnect feature and infinite-loop fix No need to namespace Cluster:: functions in their own namespace
This commit is contained in:
commit
1c42bfc715
25 changed files with 331 additions and 19 deletions
|
@ -257,6 +257,36 @@ void Manager::DoInitPostScript() {
|
|||
options.disable_forwarding = ! get_option("Broker::forward_messages")->AsBool();
|
||||
options.use_real_time = use_real_time;
|
||||
|
||||
options.peer_buffer_size = get_option("Broker::peer_buffer_size")->AsCount();
|
||||
auto peer_overflow_policy = get_option("Broker::peer_overflow_policy")->AsString()->CheckString();
|
||||
if ( util::streq(peer_overflow_policy, "disconnect") ) {
|
||||
options.peer_overflow_policy = broker::overflow_policy::disconnect;
|
||||
}
|
||||
else if ( util::streq(peer_overflow_policy, "drop_oldest") ) {
|
||||
options.peer_overflow_policy = broker::overflow_policy::drop_oldest;
|
||||
}
|
||||
else if ( util::streq(peer_overflow_policy, "drop_newest") ) {
|
||||
options.peer_overflow_policy = broker::overflow_policy::drop_newest;
|
||||
}
|
||||
else {
|
||||
reporter->FatalError("Invalid Broker::peer_overflow_policy: %s", peer_overflow_policy);
|
||||
}
|
||||
|
||||
options.web_socket_buffer_size = get_option("Broker::web_socket_buffer_size")->AsCount();
|
||||
auto web_socket_overflow_policy = get_option("Broker::web_socket_overflow_policy")->AsString()->CheckString();
|
||||
if ( util::streq(web_socket_overflow_policy, "disconnect") ) {
|
||||
options.web_socket_overflow_policy = broker::overflow_policy::disconnect;
|
||||
}
|
||||
else if ( util::streq(web_socket_overflow_policy, "drop_oldest") ) {
|
||||
options.web_socket_overflow_policy = broker::overflow_policy::drop_oldest;
|
||||
}
|
||||
else if ( util::streq(web_socket_overflow_policy, "drop_newest") ) {
|
||||
options.web_socket_overflow_policy = broker::overflow_policy::drop_newest;
|
||||
}
|
||||
else {
|
||||
reporter->FatalError("Invalid Broker::web_socket_overflow_policy: %s", web_socket_overflow_policy);
|
||||
}
|
||||
|
||||
broker::configuration config{std::move(options)};
|
||||
|
||||
config.openssl_cafile(get_option("Broker::ssl_cafile")->AsString()->CheckString());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue