Skip to content

Instantly share code, notes, and snippets.

@boorad
Created August 27, 2009 18:20
Show Gist options
  • Save boorad/176459 to your computer and use it in GitHub Desktop.
Save boorad/176459 to your computer and use it in GitHub Desktop.
-module(membership2_load).
-include("../include/common.hrl").
-export([load_nodeparts_for_key/0, start/0, stop/0, run/0]).
-define(IDS, [config, hashing, nodes]).
load_nodeparts_for_key() ->
%% {ok, _} = membership2:start_link(a, [a,b,c,d,e,f]),
{Keys, _} = lib_misc:fast_acc(fun({List, Str}) ->
Mod = lib_misc:succ(Str),
{[Mod|List], Mod}
end, {[], "aaaaaaaa"}, 10000),
Start = lib_misc:now_float(),
lists:foreach(fun(Str) ->
membership2:nodeparts_for_key(Str)
end, Keys),
End = lib_misc:now_float(),
%% membership2:stop({local, membership}), %% d'oh, not working
?debugFmt("membership can do ~p reqs/s", [10000/(End-Start)]).
start() ->
lists:map(fun(Id) -> dynomite_prof:start_prof(Id) end, ?IDS).
stop() ->
lists:map(fun(Id) -> dynomite_prof:start_prof(Id) end, ?IDS).
run() ->
start(),
load_nodeparts_for_key(),
stop(),
dynomite_prof:averages().
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment