Implement load balancing #2
schmittlauch
commented 2020-05-17 23:01:25 +02:00
Owner
- k-chocies load balancing
- for storage nodes (balancing stored posts)
- for relay nodes (balancing and dynamic accounting of bandwidth/ processing queue size)
- k-chocies load balancing
- [ ] for storage nodes (balancing stored posts)
- [ ] for relay nodes (balancing and dynamic accounting of bandwidth/ processing queue size)
schmittlauch
added the 2020-05-17 23:01:25 +02:00
basic functionality
label
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
Initial packaging as a Cabal package, in preparation for #2
- also restructures shell.nix to parse cabal file instead of directly
specifying dependencies
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
restructure tests
contributes to #2
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
tests for NodeID ordering and NodeState creation #2
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
more tests #2
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
NodeCache: write tests for lookup (#2)
schmittlauch
referenced this issue from a commit 2020-05-19 00:02:07 +02:00
write tests for (local) cache lookup on queries
#2
schmittlauch
added this to the k-choices load balancing milestone 2020-06-03 00:53:00 +02:00
schmittlauch
added the 2020-06-03 00:53:09 +02:00
advanced features
DHT
labels
schmittlauch
referenced this issue from a commit 2020-07-07 17:36:26 +02:00
data structure for RealNode holds common config and management data
contributes to #56, #34, #2
schmittlauch
referenced this issue from a commit 2020-09-18 20:37:50 +02:00
calculate service load rates, interface for querying loads
- define data type for load representation
- this representation can be queried from any Service (closes #72)
- loads are periodically calculated from measured rates (contributes to #2)
schmittlauch
referenced this issue from a commit 2020-09-19 02:05:47 +02:00
send load query request, parse result and represent it
- sending side of #71
- introduces SegmentLoadStats to hold the response data
- contributes to #2
schmittlauch
referenced this issue from a commit 2020-09-19 20:44:09 +02:00
include target ID in request to address individual vserver
- necessary for dispatching the request to a certain vserver
- also refactored request sending to use a common `mkRequest`
- contributes to #2
schmittlauch
referenced this issue from a commit 2020-09-21 18:15:50 +02:00
respond to QueryLoad requests
closes #71
closes #72
contributes to #2
schmittlauch
referenced this issue from a commit 2020-09-22 23:12:39 +02:00
add runtime flag for enabling k-choices or not
any value except "off" means on
contributes to #2
schmittlauch
referenced this issue from a commit 2020-09-25 01:41:20 +02:00
implement k-choices join functions
large commit, contains a number of things:
- k-choices #2 cost calculation
- k-choices parameters
- adjusting ASN.1 network messages to contain all values required for
cost calculation #71
- adjusting stats to contain required values
- k-choices node and vserver join functions
- placeholder/ dummy invocation of k-choices join
schmittlauch
referenced this issue from a commit 2020-09-25 20:41:46 +02:00
integrate k-choices into `tryBootstrapJoin` flow
part of #2
doesn't compile due to type mismatches fixed in next commit
schmittlauch
referenced this issue from a commit 2020-09-25 22:07:31 +02:00
integrate k-choices into `tryBootstrapJoin` flow
part of #2
schmittlauch
referenced this issue from a commit 2020-09-27 02:18:08 +02:00
bootstrapQueryID: try all possible node IDs of a bootstrap node
- when k-choices (#2) joining, try addressing each possible node ID of
the bootstrap node until success
- bugfix: include correct target ID of node that shall respond in
QueryID requests
schmittlauch
referenced this issue from a commit 2020-09-29 00:34:25 +02:00
bootstrapQueryID: try all possible node IDs of a bootstrap node
- closes #77
- when k-choices (#2) joining, try addressing each possible node ID of
the bootstrap node until success
- bugfix: include correct target ID of node that shall respond in
QueryID requests
Labels
No labels
ActivityPub
advanced features
basic functionality
bug
DHT
evaluation
refactoring
security
test case
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: schmittlauch/Hash2Pub#2
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?