Αυτό είναι το δεύτερο άρθρο μιας σειράς άρθρων που θα καλύψει τους περιορισμούς κατά τη λήψη εικόνων κοντέινερ.
В
Τα όρια συχνότητας λήψης είχαν ανακοινωθεί προηγουμένως στο δικό μας
Δωρεάν πρόγραμμα, ανώνυμοι χρήστες: 100 λήψεις σε 6 ώρες
Δωρεάν πρόγραμμα, εξουσιοδοτημένοι χρήστες: 200 λήψεις σε 6 ώρες
Pro σχέδιο: απεριόριστο
Ομαδικό σχέδιο: απεριόριστο
Η συχνότητα λήψης του Docker ορίζεται ως ο αριθμός των αιτημάτων δήλωσης προς το Docker Hub. Τα όρια συχνότητας λήψης εικόνας εξαρτώνται από τον τύπο του λογαριασμού που ζητά την εικόνα και όχι από τον τύπο του λογαριασμού κατόχου εικόνας. Για ανώνυμους (μη εξουσιοδοτημένους) χρήστες, η συχνότητα λήψης συνδέεται με τη διεύθυνση IP.
Σημείωση Θα λάβετε περισσότερες λεπτότητες και περιπτώσεις βέλτιστων πρακτικών
Λαμβάνουμε ερωτήσεις από πελάτες και την κοινότητα σχετικά με τα επίπεδα εικόνας κοντέινερ. Δεν λαμβάνουμε υπόψη τα επίπεδα εικόνας όταν περιορίζουμε τη συχνότητα λήψης, επειδή περιορίζουμε τις λήψεις δήλωσης και ο αριθμός των επιπέδων (αιτήματα blob) είναι προς το παρόν απεριόριστος. Αυτή η αλλαγή βασίζεται στα σχόλια της κοινότητας για να γίνει πιο φιλική προς τον χρήστη, ώστε οι χρήστες να μην χρειάζεται να υπολογίζουν επίπεδα σε κάθε εμφάνιση που χρησιμοποιούν.
Λεπτομερής ανάλυση των συχνοτήτων λήψης εικόνων Docker Hub
Ξοδέψαμε πολύ χρόνο αναλύοντας τη λήψη εικόνων από το Docker Hub για να προσδιορίσουμε τον λόγο για το όριο ταχύτητας, καθώς και πώς ακριβώς να το περιορίσουμε. Αυτό που είδαμε επιβεβαίωσε ότι σχεδόν όλοι οι χρήστες κάνουν λήψη εικόνων με προβλέψιμο ρυθμό για τυπικές ροές εργασίας. Ωστόσο, υπάρχει μια αξιοσημείωτη επιρροή ενός μικρού αριθμού ανώνυμων χρηστών, για παράδειγμα, περίπου το 30% όλων των λήψεων προέρχεται μόνο από το 1% των ανώνυμων χρηστών.
Τα νέα όρια βασίζονται σε αυτήν την ανάλυση, επομένως οι περισσότεροι χρήστες μας δεν θα επηρεαστούν. Αυτά τα όρια έχουν δημιουργηθεί για να αντικατοπτρίζουν την κανονική χρήση από προγραμματιστές - εκμάθηση Docker, ανάπτυξη κώδικα, δημιουργία εικόνων και ούτω καθεξής.
Βοηθώντας τους προγραμματιστές να κατανοήσουν καλύτερα τα όρια συχνότητας λήψης
Τώρα που καταλάβαμε τον αντίκτυπο και επίσης πού έπρεπε να είναι τα όρια, έπρεπε να καθορίσουμε τους τεχνικούς όρους για τη λειτουργία αυτών των περιορισμών. Ο περιορισμός της λήψης εικόνων από το μητρώο του Docker είναι αρκετά δύσκολος. Δεν θα βρείτε ένα API για λήψεις στην περιγραφή του μητρώου - απλώς δεν υπάρχει. Στην πραγματικότητα, η λήψη μιας εικόνας είναι ένας συνδυασμός αιτημάτων δήλωσης και κηλίδων στο API και εκτελούνται διαφορετικά, ανάλογα με την κατάσταση ο πελάτης και η ζητούμενη εικόνα.
Για παράδειγμα, εάν έχετε ήδη μια εικόνα, το Docker Engine θα εκδώσει ένα αίτημα για μια δήλωση, θα κατανοήσει ότι έχει ήδη όλα τα απαραίτητα επίπεδα με βάση την αποδεκτή δήλωση και, στη συνέχεια, θα σταματήσει. Από την άλλη πλευρά, εάν κάνετε λήψη μιας εικόνας που υποστηρίζει πολλές αρχιτεκτονικές, ένα αίτημα δήλωσης θα επιστρέψει μια λίστα με δηλώσεις εικόνας για κάθε υποστηριζόμενη αρχιτεκτονική. Το Docker Engine θα εκδώσει ένα άλλο αίτημα δήλωσης για τη συγκεκριμένη αρχιτεκτονική στην οποία εκτελείται, σε αντάλλαγμα θα λάβει μια λίστα με όλα τα επίπεδα στην εικόνα. Στη συνέχεια θα κάνει ερώτημα για κάθε επίπεδο που λείπει (blob).
Σημείωση Αυτό το θέμα καλύπτεται ευρύτερα στο
Αποδεικνύεται ότι η λήψη μιας εικόνας είναι στην πραγματικότητα ένα ή δύο αιτήματα δήλωσης, καθώς και από το μηδέν έως το άπειρο - αιτήματα για επίπεδα (blob). Ιστορικά, το Docker παρακολουθούσε τη συχνότητα λήψης ανά επίπεδο, καθώς αυτό σχετίζεται περισσότερο με τη χρήση εύρους ζώνης. Ωστόσο, ακούσαμε την κοινότητα, κάτι που είναι πιο δύσκολο, επειδή πρέπει να παρακολουθείτε τον απαιτούμενο αριθμό επιπέδων, κάτι που θα οδηγήσει στην παράβλεψη των βέλτιστων πρακτικών σχετικά με την εργασία με το Dockerfile, και επίσης πιο διαισθητικό για τους χρήστες που θέλουν απλώς να εργαστείτε με το μητρώο χωρίς μεγάλη κατανόηση των λεπτομερειών.
Επομένως, περιορίζουμε τον αριθμό των αιτημάτων με βάση τα αιτήματα δήλωσης. Αυτό σχετίζεται άμεσα με τη λήψη εικόνων, κάτι που είναι εύκολο να κατανοήσουν οι χρήστες. Υπάρχει πραγματικά μια μικρή απόχρωση - εάν προσπαθήσετε να κατεβάσετε μια εικόνα που υπάρχει ήδη, το αίτημα θα ληφθεί υπόψη, ακόμα κι αν δεν κάνετε λήψη των επιπέδων. Σε κάθε περίπτωση, ελπίζουμε ότι αυτή η μέθοδος περιορισμού της συχνότητας των λήψεων θα είναι δίκαιη και φιλική προς τον χρήστη.
Αναμένουμε τα σχόλιά σας
Θα παρακολουθούμε τους περιορισμούς και θα κάνουμε τις κατάλληλες προσαρμογές με βάση τις περιπτώσεις κοινής χρήσης για να διασφαλίσουμε ότι οι περιορισμοί είναι κατάλληλοι για κάθε τύπο χρήστη, και συγκεκριμένα, θα προσπαθήσουμε να μην εμποδίσουμε ποτέ τους προγραμματιστές να κάνουν τη δουλειά τους.
Μείνετε συντονισμένοι τις επόμενες εβδομάδες για ένα άλλο άρθρο σχετικά με την προσαρμογή των συστημάτων CI και μάχης υπό το φως αυτών των αλλαγών.
Τέλος, ως μέρος της υποστήριξής μας για την κοινότητα ανοιχτού κώδικα, θα παρέχουμε νέα σχέδια τιμολόγησης για τον ανοιχτό κώδικα έως την 1η Νοεμβρίου. Για να κάνετε αίτηση, συμπληρώστε τη φόρμα
Για περισσότερες πληροφορίες σχετικά με τις τελευταίες αλλαγές στους Όρους Παροχής Υπηρεσιών, επισκεφτείτε το
Για όσους πρέπει να αυξήσουν τα όρια συχνότητας λήψης εικόνων, το Docker προσφέρει απεριόριστες λήψεις εικόνων ως δυνατότητα.
Πηγή: www.habr.com