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
Scaling Interconnect #15348
Comments
One idea is to add a feature to fetch these packages from a scalable package-serving-infrastructure - lets call it download.opensuse.org. For that we need a way to link certain OBS projects to certain download base-URLs (maybe even more than 1). A similar mechanism could be used by
when it could have got the file from download.opensuse.org/distribution/leap/15.5/repo/oss/x86_64/ |
#15361 should make it much better |
(the original report, not the osc side) |
@mlschroe it helped a little but it's still not enough. This is a typical situation right now
The majority of those interconnect requests come from SUSE, followed by other well known interconnects. All in all there are 25 interconnect instances that do more than 1K requests per hour whenever something happens that causes them to re-evaluate openSUSE/SUSE distros. Those are the requests during made during the time for over 1K times during the hour of 10:00 -> 11:00
|
@mlschroe mabye you have another idea for serialization? |
What we know about the problem:
Some ideas on how we can improve the situation:
|
Is your feature request related to a problem? Please describe.
If you have a popular public instance of OBS (let's call it https://build.opensuse.org) that many other OBS interconnect to, to be able to build against some popular project (let's call it openSUSE:Factory), sooner or later you will run into the situation that events on your OBS (let's say a glibc update that causes a rebuild of many things in one of your popular projects) cause a storm of interconnect API requests and you run into scaling issues.
Describe the solution you'd like
Scale better.
The text was updated successfully, but these errors were encountered: