Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    Debian feed mirror Performance

    Scheduled Pinned Locked Moved Support
    9 Posts 5 Posters 55 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D Offline
      dan.brown_0128
      last edited by

      Is anybody else attempting to use Proget's debian feeds to mirror the official mirror for use in isolated environments?

      I am curious what sort of performance others are seeing in that use case. Our prior tests found that mirroring via Proget was substantially slower than the official mirrors.

      1 Reply Last reply Reply Quote 0
      • atrippA Offline
        atripp inedo-engineer
        last edited by

        Hi Dan,

        In general, a ProGet feed will be slower than a "real" Debian repository. The reason is that Debian repositories are just static file system like this:
        http://ftp.us.debian.org/debian/dists/bookworm/

        There is obviously a lot more overhead with each ProGet request, since index files are dynamically generated, involve connectors, need to be permission-checked, etc.

        In addition, ProGet indexes the Debian indexes on-demand, which means downloading all of the Contents-*.gz files and indexing those. Like in here: http://ftp.us.debian.org/debian/dists/bookworm/main/

        While these files are cached, they do need to be updated when the remote repository updates.

        And note that each web node maintains its own local index cache, so you will see these long-running requests multiple times. Some organizations will periodically "warm up" the indexes periodically by just hitting the InRelease endpoint.

        Hope that helps,
        Alana

        1 Reply Last reply Reply Quote 0
        • D Offline
          dan.brown_0128
          last edited by

          To share with the community some things learned from a private support ticket -- There's currently a defect in the logic where if no packages were downloaded/uploaded to a debian type feed, the in-memory cache is never started. This leads to very long runtimes when running apt update since the response times for the /Release and /InRelease endpoints (from our experience) are at best 1 minute, at worst 10 minutes.

          The workaround support gave was to manually download a package via http before attempting to use apt. From our experience, this doesn't persist overnight, so it would basically need done daily and truly is counterintuitive to having a package manager like apt.

          1 Reply Last reply Reply Quote 1
          • S Offline
            stefan.hakansson_8938
            last edited by

            Hi @dan-brown_0128 have you made any further progress on this? I'm seeing exactly the same behaviour, and it makes things like Ansible playbooks involving apt: update_cache: yes time out.

            Any tip on how to improve the performance would be great (I have a default ProGet installation with default database and web server BTW).

            Thanks,
            Stefan

            1 Reply Last reply Reply Quote 0
            • D Offline
              dan.brown_0128
              last edited by

              @stefan-hakansson_8938 No, we haven't had any more luck and have put the debian mirror back on the backburner for the time being

              S 1 Reply Last reply Reply Quote 0
              • S Offline
                stefan.hakansson_8938 @dan.brown_0128
                last edited by

                @dan-brown_0128 thanks for the update. I'll ponder about what we should do and provide an update here if we find a solution involving ProGet as debian mirror with a decent performance.

                stevedennisS 1 Reply Last reply Reply Quote 0
                • stevedennisS Offline
                  stevedennis inedo-engineer @stefan.hakansson_8938
                  last edited by

                  @stefan-hakansson_8938 as you noticed, ProGet's Debian connectors are not currently designed to handle the gigantic, operating-system mirrors very well. This is because they are always refreshed "on demand" - which is what you want for CI/CD workflows.

                  It's not great for public repository mirroring, however. In Q4 or later, we will explore adding an option to do periodic updates.

                  S 1 Reply Last reply Reply Quote 1
                  • S Offline
                    stefan.hakansson_8938 @stevedennis
                    last edited by

                    @stevedennis thank you for the update and insights. Looking forward to what Q4 (or later) will bring!

                    1 Reply Last reply Reply Quote 0
                    • S Offline
                      stno_9153
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0

                      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                      With your input, this post could be even better 💗

                      Register Login
                      • 1 / 1
                      • First post
                        Last post
                      Inedo Website Home • Support Home • Code of Conduct • Forums Guide • Documentation