-
-
Notifications
You must be signed in to change notification settings - Fork 864
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
Refactoring CurlEngine + Add Curl Socket Reuse Support #2604
Refactoring CurlEngine + Add Curl Socket Reuse Support #2604
Conversation
Add socket cleanup/setup/execution Add response class
A This is why, the current 'alpha-5' spins up a new API instance + associated curl instance for each upload|download thread (plus any other API query) The aim here is to find the right balance between threads and 'requests per curl instance total' so that a |
When a 429 is presented, the response includes a 'retry-after' header, which, with all the handling, should be correctly handled and used before the request is tried again. |
Not a bug per se, but I experienced throttling for approximately 3~4 minutes while running requests every 1 ~ 2 minutes (over 1K total requests per minute) in the local first mode with a resync. If we won't get banned or incur a penalty added in the 'retry-after' header due to hitting 429 frequently, then it's okay. |
@JC-comp |
@abraunegg |
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
This pull request resolves the CurlEngine refactoring part of #2530. And introduce socket pool support for caching and reusing sockets, addressing the session rate issue discussed in detail at #2585 (reply in thread).
Changes
Notes