New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add collision avoidance to thaliPeerPool #651

Open
juhanak opened this Issue Mar 21, 2016 · 1 comment

Comments

Projects
None yet
2 participants
@juhanak
Contributor

juhanak commented Mar 21, 2016

When a new peer appears and starts to advertise itself, there should be a random delay before clients try to connect to it in order to avoid collisions. Otherwise all clients try to connect to the same peer at the same time. This can be implemented in thaliPeerPool.

@yaronyg

This comment has been minimized.

Show comment
Hide comment
@yaronyg

yaronyg Apr 1, 2016

Member

Actually this shouldn't be handled in thaliPeerPool because the peer pool doesn't really know anything about the semantics of an event. It would make more sense to put this into the notification code so that we essentially delay calling enqueue for a random period of time. Alternatively we could put a delay into the notification action itself so that it uses a time out before it makes a HTTP request.

Member

yaronyg commented Apr 1, 2016

Actually this shouldn't be handled in thaliPeerPool because the peer pool doesn't really know anything about the semantics of an event. It would make more sense to put this into the notification code so that we essentially delay calling enqueue for a random period of time. Alternatively we could put a delay into the notification action itself so that it uses a time out before it makes a HTTP request.

@yaronyg yaronyg added this to the V1 milestone Aug 3, 2016

@yaronyg yaronyg added 1 - Backlog and removed 0 - Icebox labels Aug 4, 2016

@yaronyg yaronyg added Node bug and removed P2 labels Sep 26, 2016

@yaronyg yaronyg removed the 1 - Backlog label Oct 6, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment