-
Notifications
You must be signed in to change notification settings - Fork 111
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
[Feat]: HEAD /v2/$tag/blobs/$digest
could be faster
#2590
Comments
Hello @the-sun-will-rise-tomorrow Do you use authorization, can you post the config you are using? Thank you! |
Hi! Here is the config: #2589 (comment) Authorization is not needed for these HEAD requests in our case (anonymous read access). |
Hei @the-sun-will-rise-tomorrow I investigated this issue, and I put the profiler and run our benchmark tool to see what piece of code takes so much time. The issue is Thanks! |
Good insight, thank you. Maybe that function could be memoized (with the cache flushed every minute to avoid indefinitely retaining sensitive information in memory)? That should fix the performance problem in theory. |
I am not sure how I would try this; the |
Is your feature request related to a problem? Please describe.
HEAD /v2/$tag/blobs/$digest
requests take an unusual amount of time. Even performing repeated requests with the same$digest
is slow, 200-500ms every time.Describe the solution you'd like
I am not sure why exactly
HEAD /v2/$tag/blobs/$digest
requests are slow, but if it's not possible to make the underlying operation itself faster, then an in-memory cache of the results would at least speed up repeated queries.Describe alternatives you've considered
#2589, perhaps.
Additional context
I am experimenting with efficient uploading of images with many layers (built using Nix). In my experiments, the vast majority of the time seems to be spent on Skopeo asking Zot if a layer blob is already in the registry.
The text was updated successfully, but these errors were encountered: