-
Notifications
You must be signed in to change notification settings - Fork 14
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
Crate should follow crates.io crawler policy #10
Comments
Hi @jtgeibel, fair point, and apologies for late answer on this. I'll look into it w/ @gnunicorn, and will keep you posted. |
Hey @Xanewok, @stiiifff, and @gnunicorn. Thanks for updating this to use the index instead of the API! We've seen a few more instances of |
@jtgeibel sure thing. we were planning on releasing a 1.0 with semverver-support, but this might be a little longer. we will release an intermediary alpha.11, I keep you updated on that! |
@jtgeibel Glad to inform you alpha.11 is out. feel free to deprecate and soon block the older version, telling them to upgrade: |
According to the crates.io crawler policy, API requests should be limited to 1 per second. I'm seeing many occurrences of this tool sending large bursts of parallel requests. For example, the first occurrence I looked at shows 146 requests with this user agent from a single IP address within a 1 second interval!
When this occurs, a client can consume all database connections causing other requests to block and impacting overall site performance. While technically the tool should only send 1 request per second, at a minimum limiting itself to a single request in flight at a time (i.e. no parallel requests) would greatly alleviate the issue and would probably go unnoticed. Ideally, the tool would be able to read from the local cargo index cache to lookup the needed version information without querying the API.
Feel free to reach out to me here or to the team on the crates-io-team Discord channel if you have any questions.
The text was updated successfully, but these errors were encountered: