extend measurement logging to include sensible load metrics
k-choices: manage v-servers
data structure refactoring
- vservers are a map from node ID to LocalNodeStateSTM
- move node cache to RealNode level to share it between vservers
- first initialise the RealNode, then do a k-choices sampling before allocating VSes
- intermediate step: still join exactly 1 vserver without sampling
- dispatch incoming requests to correct VSes
- decide which periodic background tasks need their own threads and which don't
interface between DHT and Service to request load information
extend DHT protocol with load information sampling request
k-choices: manage v-servers
Update: LocalNodeState
can stay mostly unmodified, but RealNode
manages links to all vservers (as an IntMap???)
- at least 1 vserver active: if load targat == 0.00, then choose the lowest possible node
- at start, sample possible nodes before joining
- dispatch incoming requests/ responses to affect the correct node
evaluate & plot logged measurements
proper measurement logging