Copyright © 2014-2015 Zuse Institute Berlin
Version: $Id$
Behaviours: lb_active_beh.
Authors: Maximilian Michels (michels@zib.de).
References
Implementation of a modified version of the paper below. This implementation doesn't use virtual servers but can still benefit from the load balancing algorithm's attributes, respectively the load directories and the emergency transfer of load.
Many-to-Many schemedht_message() = {lb_active, request_load, pid()} | {lb_active, before_jump, HeavyNode :: lb_info:lb_info(), LightNode :: lb_info:lb_info()}
directory_name() = string()
message() = {publish_trigger} | {post_load, lb_info:lb_info()} | {directory_trigger} | {get_state_response, intervals:interval()}
reassign() = #reassign{light = lb_info:lb_info(), heavy = lb_info:lb_info()}
schedule() = [reassign()]
state() = #state{my_dirs = [directory_name()], schedule = schedule()}
check_config/0 | |
get_web_debug_kv/1 | |
handle_dht_msg/2 | Load balancing messages received by the dht node. |
handle_msg/2 | |
init/0 |
init() -> state()
handle_dht_msg(Msg :: dht_message(), DhtState :: dht_node_state:state()) -> dht_node_state:state()
Load balancing messages received by the dht node.
get_web_debug_kv(State :: state()) -> [{string(), string()}]
check_config() -> boolean()
Generated by EDoc, Sep 12 2019, 16:35:06.