rabbitmq / ra

A Raft implementation for Erlang and Elixir that strives to be efficient and make it easier to use multiple Raft clusters in a single system.
Other
813 stars 96 forks source link

Optimise RA server init #329

Closed kjnilsson closed 1 year ago

kjnilsson commented 1 year ago

Dont write index 0 synchronously and don't fsync the config file to reduce blocking in gen_state:init function.

mkuratczyk commented 1 year ago

I see ~50% improvement compared to main:

For reference, 50k CQs takes 20s, 50k Streams takes 60s on the same machine

kjnilsson commented 1 year ago

Closing in favour of https://github.com/rabbitmq/ra/pull/333