pokt-network / pocket

Official implementation of the Pocket Network Protocol v1
https://pokt.network
MIT License
61 stars 33 forks source link

Improved Performance in go-libp2p-kad-dht: New Feature Reduces PUT/Provide Latencies to <1s #819

Open dennis-tra opened 1 year ago

dennis-tra commented 1 year ago

Hi Pocket Devs,

This is Dennis from Protocol Labs. I wanted to inform you about an exciting update regarding the go-libp2p-kad-dht implementation, which I believe you are currently using. As part of our continuous efforts to enhance performance, we have introduced a new experimental feature that significantly improves the PUT/Provide latencies.

Previously, the DHT's PUT performance was known to be rather sluggish, often taking more than 10 seconds or even minutes. However, with the latest release of go-libp2p-kad-dht >v0.23.0, we have introduced a feature called "Optimistic Provide." [Kubo documentation]. This feature has demonstrated great results, bringing the latencies down to less than 1 second in the 50th percentile and less than 1.4 seconds in the 90th percentile.

While I'm unaware of the specific requirements of your use case or whether the previous latencies posed any challenges for you, I wanted to ensure that you are aware of this improvement.

If you have any questions or would like more information about this new feature, please don't hesitate to reach out.

Cheers, Dennis

Olshansk commented 1 year ago

Thanks @dennis-tra. We'll look into this in a couple of iterations from now and use this ticket for questions related directly to this.

We've been seeing some other issues as well, but will either use the forums or reach out to you directly w.r.t to those. If there's another channel you'd recommend, please let us know.

dennis-tra commented 1 year ago

Great to hear that you'll plan to look into this :)

Depending on your problem, I'd suggest opening an issue in the corresponding repository. If it's a general question, I'd recommend the https://discuss.libp2p.io/.