Πώς το Docker Business Scale για να εξυπηρετήσει εκατομμύρια προγραμματιστές, Μέρος 2: Εξερχόμενα δεδομένα

Πώς το Docker Business Scale για να εξυπηρετήσει εκατομμύρια προγραμματιστές, Μέρος 2: Εξερχόμενα δεδομένα

Αυτό είναι το δεύτερο άρθρο μιας σειράς άρθρων που θα καλύψει τους περιορισμούς κατά τη λήψη εικόνων κοντέινερ.

В το πρώτο μέρος ρίξαμε μια πιο προσεκτική ματιά στις εικόνες που είναι αποθηκευμένες στο Docker Hub, το μεγαλύτερο μητρώο εικόνων κοντέινερ. Το γράφουμε για να σας βοηθήσουμε να κατανοήσετε καλύτερα πώς οι ενημερωμένοι Όροι Παροχής Υπηρεσιών θα επηρεάσουν τις ομάδες ανάπτυξης που χρησιμοποιούν το Docker Hub για τη διαχείριση εικόνων κοντέινερ και αγωγών CICD.

Τα όρια συχνότητας λήψης είχαν ανακοινωθεί προηγουμένως στο δικό μας Όροι χρήσης. Ρίξτε μια πιο προσεκτική ματιά στα όρια συχνότητας που θα τεθούν σε ισχύ την 1η Νοεμβρίου 2020:

Δωρεάν πρόγραμμα, ανώνυμοι χρήστες: 100 λήψεις σε 6 ώρες
Δωρεάν πρόγραμμα, εξουσιοδοτημένοι χρήστες: 200 λήψεις σε 6 ώρες
Pro σχέδιο: απεριόριστο
Ομαδικό σχέδιο: απεριόριστο

Η συχνότητα λήψης του Docker ορίζεται ως ο αριθμός των αιτημάτων δήλωσης προς το Docker Hub. Τα όρια συχνότητας λήψης εικόνας εξαρτώνται από τον τύπο του λογαριασμού που ζητά την εικόνα και όχι από τον τύπο του λογαριασμού κατόχου εικόνας. Για ανώνυμους (μη εξουσιοδοτημένους) χρήστες, η συχνότητα λήψης συνδέεται με τη διεύθυνση IP.

Σημείωση Θα λάβετε περισσότερες λεπτότητες και περιπτώσεις βέλτιστων πρακτικών στο μάθημα Docker από επαγγελματίες. Επιπλέον, μπορείτε να το περάσετε όταν σας βολεύει - τόσο στο χρόνο όσο και στη διάθεση.

Λαμβάνουμε ερωτήσεις από πελάτες και την κοινότητα σχετικά με τα επίπεδα εικόνας κοντέινερ. Δεν λαμβάνουμε υπόψη τα επίπεδα εικόνας όταν περιορίζουμε τη συχνότητα λήψης, επειδή περιορίζουμε τις λήψεις δήλωσης και ο αριθμός των επιπέδων (αιτήματα blob) είναι προς το παρόν απεριόριστος. Αυτή η αλλαγή βασίζεται στα σχόλια της κοινότητας για να γίνει πιο φιλική προς τον χρήστη, ώστε οι χρήστες να μην χρειάζεται να υπολογίζουν επίπεδα σε κάθε εμφάνιση που χρησιμοποιούν.

Λεπτομερής ανάλυση των συχνοτήτων λήψης εικόνων Docker Hub

Ξοδέψαμε πολύ χρόνο αναλύοντας τη λήψη εικόνων από το Docker Hub για να προσδιορίσουμε τον λόγο για το όριο ταχύτητας, καθώς και πώς ακριβώς να το περιορίσουμε. Αυτό που είδαμε επιβεβαίωσε ότι σχεδόν όλοι οι χρήστες κάνουν λήψη εικόνων με προβλέψιμο ρυθμό για τυπικές ροές εργασίας. Ωστόσο, υπάρχει μια αξιοσημείωτη επιρροή ενός μικρού αριθμού ανώνυμων χρηστών, για παράδειγμα, περίπου το 30% όλων των λήψεων προέρχεται μόνο από το 1% των ανώνυμων χρηστών.

Πώς το Docker Business Scale για να εξυπηρετήσει εκατομμύρια προγραμματιστές, Μέρος 2: Εξερχόμενα δεδομένα

Τα νέα όρια βασίζονται σε αυτήν την ανάλυση, επομένως οι περισσότεροι χρήστες μας δεν θα επηρεαστούν. Αυτά τα όρια έχουν δημιουργηθεί για να αντικατοπτρίζουν την κανονική χρήση από προγραμματιστές - εκμάθηση Docker, ανάπτυξη κώδικα, δημιουργία εικόνων και ούτω καθεξής.

Βοηθώντας τους προγραμματιστές να κατανοήσουν καλύτερα τα όρια συχνότητας λήψης

Τώρα που καταλάβαμε τον αντίκτυπο και επίσης πού έπρεπε να είναι τα όρια, έπρεπε να καθορίσουμε τους τεχνικούς όρους για τη λειτουργία αυτών των περιορισμών. Ο περιορισμός της λήψης εικόνων από το μητρώο του Docker είναι αρκετά δύσκολος. Δεν θα βρείτε ένα API για λήψεις στην περιγραφή του μητρώου - απλώς δεν υπάρχει. Στην πραγματικότητα, η λήψη μιας εικόνας είναι ένας συνδυασμός αιτημάτων δήλωσης και κηλίδων στο API και εκτελούνται διαφορετικά, ανάλογα με την κατάσταση ο πελάτης και η ζητούμενη εικόνα.

Για παράδειγμα, εάν έχετε ήδη μια εικόνα, το Docker Engine θα εκδώσει ένα αίτημα για μια δήλωση, θα κατανοήσει ότι έχει ήδη όλα τα απαραίτητα επίπεδα με βάση την αποδεκτή δήλωση και, στη συνέχεια, θα σταματήσει. Από την άλλη πλευρά, εάν κάνετε λήψη μιας εικόνας που υποστηρίζει πολλές αρχιτεκτονικές, ένα αίτημα δήλωσης θα επιστρέψει μια λίστα με δηλώσεις εικόνας για κάθε υποστηριζόμενη αρχιτεκτονική. Το Docker Engine θα εκδώσει ένα άλλο αίτημα δήλωσης για τη συγκεκριμένη αρχιτεκτονική στην οποία εκτελείται, σε αντάλλαγμα θα λάβει μια λίστα με όλα τα επίπεδα στην εικόνα. Στη συνέχεια θα κάνει ερώτημα για κάθε επίπεδο που λείπει (blob).

Σημείωση Αυτό το θέμα καλύπτεται ευρύτερα στο Μάθημα Docker, στο οποίο θα αναλύσουμε όλα τα εργαλεία του: από τις βασικές αφαιρέσεις μέχρι τις παραμέτρους δικτύου, τις αποχρώσεις της εργασίας με διάφορα λειτουργικά συστήματα και γλώσσες προγραμματισμού. Θα εξοικειωθείτε με την τεχνολογία και θα καταλάβετε πού και πώς να χρησιμοποιήσετε καλύτερα το Docker.

Αποδεικνύεται ότι η λήψη μιας εικόνας είναι στην πραγματικότητα ένα ή δύο αιτήματα δήλωσης, καθώς και από το μηδέν έως το άπειρο - αιτήματα για επίπεδα (blob). Ιστορικά, το Docker παρακολουθούσε τη συχνότητα λήψης ανά επίπεδο, καθώς αυτό σχετίζεται περισσότερο με τη χρήση εύρους ζώνης. Ωστόσο, ακούσαμε την κοινότητα, κάτι που είναι πιο δύσκολο, επειδή πρέπει να παρακολουθείτε τον απαιτούμενο αριθμό επιπέδων, κάτι που θα οδηγήσει στην παράβλεψη των βέλτιστων πρακτικών σχετικά με την εργασία με το Dockerfile, και επίσης πιο διαισθητικό για τους χρήστες που θέλουν απλώς να εργαστείτε με το μητρώο χωρίς μεγάλη κατανόηση των λεπτομερειών.

Επομένως, περιορίζουμε τον αριθμό των αιτημάτων με βάση τα αιτήματα δήλωσης. Αυτό σχετίζεται άμεσα με τη λήψη εικόνων, κάτι που είναι εύκολο να κατανοήσουν οι χρήστες. Υπάρχει πραγματικά μια μικρή απόχρωση - εάν προσπαθήσετε να κατεβάσετε μια εικόνα που υπάρχει ήδη, το αίτημα θα ληφθεί υπόψη, ακόμα κι αν δεν κάνετε λήψη των επιπέδων. Σε κάθε περίπτωση, ελπίζουμε ότι αυτή η μέθοδος περιορισμού της συχνότητας των λήψεων θα είναι δίκαιη και φιλική προς τον χρήστη.

Αναμένουμε τα σχόλιά σας

Θα παρακολουθούμε τους περιορισμούς και θα κάνουμε τις κατάλληλες προσαρμογές με βάση τις περιπτώσεις κοινής χρήσης για να διασφαλίσουμε ότι οι περιορισμοί είναι κατάλληλοι για κάθε τύπο χρήστη, και συγκεκριμένα, θα προσπαθήσουμε να μην εμποδίσουμε ποτέ τους προγραμματιστές να κάνουν τη δουλειά τους.

Μείνετε συντονισμένοι τις επόμενες εβδομάδες για ένα άλλο άρθρο σχετικά με την προσαρμογή των συστημάτων CI και μάχης υπό το φως αυτών των αλλαγών.

Τέλος, ως μέρος της υποστήριξής μας για την κοινότητα ανοιχτού κώδικα, θα παρέχουμε νέα σχέδια τιμολόγησης για τον ανοιχτό κώδικα έως την 1η Νοεμβρίου. Για να κάνετε αίτηση, συμπληρώστε τη φόρμα εδώ.

Για περισσότερες πληροφορίες σχετικά με τις τελευταίες αλλαγές στους Όρους Παροχής Υπηρεσιών, επισκεφτείτε το FAQ.

Για όσους πρέπει να αυξήσουν τα όρια συχνότητας λήψης εικόνων, το Docker προσφέρει απεριόριστες λήψεις εικόνων ως δυνατότητα. Επαγγελματικά ή ομαδικά σχέδια. Όπως πάντα, καλωσορίζουμε σχόλια και ερωτήσεις. εδώ.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο