Skip to content
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

SortPeers()'s current pinging strategy may not scale #5

Open
t-lin opened this issue May 24, 2020 · 1 comment
Open

SortPeers()'s current pinging strategy may not scale #5

t-lin opened this issue May 24, 2020 · 1 comment
Labels
enhancement New feature or request

Comments

@t-lin
Copy link
Member

t-lin commented May 24, 2020

SortPeers() currently sorts using results from on-the-spot sequential pinging of peers. This approach will not scale as the number of peers grow, and it only provides instantaneous RTT results (disregarding historical performance).

Possible solutions include:

  • Using some type of cache structure like pcache in the service-manager repo
    • Leave the pinging to be done by some other thread/goroutine (i.e. only ping allocators, and only allocators within some distance or with some metadata tag indicating region?)
  • Somehow leveraging Prometheus information
    • Need to figure out how to populate it with peer-to-peer latency info, which may not be totally scalable, as that means the database will nee to include full-mesh info
@t-lin t-lin added the enhancement New feature or request label May 24, 2020
t-lin added a commit that referenced this issue May 28, 2020
  - Can specify the same flag multiple times to create a list of multiaddresses
  - Included preliminary tests
  - Preliminary work to support removal of hard-coded bootstraps (#5)
@t-lin
Copy link
Member Author

t-lin commented Jun 4, 2020

May have to wait for PhysarumSM/service-manager#3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant