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

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

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

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

Οι περιορισμοί συχνότητας λήψης ανακοινώθηκαν νωρίτερα στο δικό μας Όροι Παροχής Υπηρεσιών. Θα ρίξουμε μια πιο προσεκτική ματιά στους περιορισμούς συχνότητας που θα τεθούν σε ισχύ την 1η Νοεμβρίου 2020:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Πηγή: www.habr.com

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster