-
Notifications
You must be signed in to change notification settings - Fork 79
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
Disable multicurl by default #480
base: master
Are you sure you want to change the base?
Conversation
Multicurl is not quite an improvement anymore. It picks up chunks based on the filesize that make it connect to 4-5 mirrors for each file. The thing is that the connection overhead on high latency mirrors is so high that there isn't a way to get decent performance, and given the really bad connection reusage we are always in tcp slow start.
Question to this: Does that also mean we do not need to care anymore about zsync downloads or mirrors we get from the servers? In that case we might also remove that from the new media backend making the code easier to maintain. Michael is on vacation for a week, lets also see what he has to say about it |
@bzeller I think zsync would still be beneficial. I can btw disable the multicurl also server side, so we can first run some experiments globally. |
@dirkmueller Without the MultiCurl backend or the new one in development there is no zsync though. The MediaCurl backend does not support it, only MultiCurl and MediaNetwork do. But if the server does not respond with a metalink file then the MultiCurl code is not triggered anyway and the file is downloaded directly. |
@dirkmueller so we just had a discussion about this in our meeting, our suggestion would be:
Thoughts? |
Yes, that seems to be a more flexible approach to quicker evaluate the impact. I'll see what I can do about that.
do you mean mediacurl here rather than multicurl? there are reports btw that zsync is not as good as believed together with cdn (still needs a deeper investigation, see openSUSE/openSUSE-repos#27 (comment) for details
I think that's a great idea. lets do that, then we can default to medianetwork eventually. |
No, really only MultiCurl could do this. MediaCurl is just a very thin layer around libcurl, it can't do much more than simply download a plain file. Complex things like multipart requests is not possible there.
Great , lets do that 👍 |
Multicurl is not quite an improvement anymore. It picks up chunks based on the filesize that make it connect to 4-5 mirrors for each file. The thing is that the connection overhead on high latency mirrors is so high that there isn't a way to get decent performance, and given the really bad connection reusage we are always in tcp slow start.