JurgenR / aioslsk

SoulSeek client library using Python asyncio
GNU General Public License v3.0
16 stars 0 forks source link

Distributed: Investigate search throttling #275

Closed JurgenR closed 3 weeks ago

JurgenR commented 1 month ago

There is some kind of throttling going on in the distributed searches which is obvious when looking at the logs. There is often a batch of several distributed search requests in a row within a few milliseconds of each other, then suddenly nothing for a few 100 milliseconds to almost a full second before the next one.

I figured out that the rate is actually about either 20 searches per second or roughly 1000 bytes per second. The rate seems to be the same for at least the distributed branch level that I verified (2, 5, 6), however level 0 and 1 really need to be verified as the rate could flatten out after a certain branch level.

This could have causes:

JurgenR commented 1 month ago

At branch level 4, I saw an average of 15 searches per second, +- 750-760 bps