Πέρυσι κατά τη διάρκεια μιας συνεδρίας δοκιμών χρήστη για την εφαρμογή News BBC, ένας από τους χρήστες έκανε ένα σχόλιο που έχει πραγματικά κολλήσει μαζί μου. Δήλωσαν: "Μου αρέσει να ρέει". Δεν νομίζω ότι υπάρχει μια καλύτερη περίληψη των επιδόσεων που σημαίνει στους χρήστες μας. Σε μια γρήγορη εφαρμογή ή ιστότοπο, ο χρήστης μπορεί να ρέει, να αλληλεπιδράσει και να εμπλακεί με το περιεχόμενο.
Οι ρέουσες εμπειρίες είναι καλές για τους ιδιοκτήτες ιστοτόπων επίσης. Μια γρήγορη εμπειρία βοηθά τους χρήστες να επιτύχουν τους στόχους τους και με τη σειρά τους να επιτύχουμε τους στόχους των οργανώσεών μας. Ο Amazon και άλλοι έχουν επιδείξει τον ισχυρό σύνδεσμο μεταξύ της δραστηριότητας απόδοσης και χρηστών: καθώς η αναμονή για τις σελίδες πέφτει, το χρονικό διάστημα και τα χρήματα που ο χρήστης ξοδεύει ανεβαίνει.
Διαβάστε περισσότερα: Αναθεώρηση Nordvpn
Οι προσωρινές μνήμες δημιουργούνται όταν μια μικρή ποσότητα κάτι αποθηκεύεται πιο κοντά στο σημείο όπου χρειάζεται, κανονικά για να αποφευχθεί η επαναφορά. Για παράδειγμα, αν τρώω skittles, τείνω να ρίχνω λίγα στο χέρι μου και στη συνέχεια να φάω από εκεί. Στην πραγματικότητα, δημιουργώ μια κρυφή μνήμη skittles στο χέρι μου, καθώς είναι πιο γρήγορη να τα φάτε έτσι ώστε να επιστρέψει στο πακέτο.
Το ίδιο μοτίβο χρησιμοποιείται στην τεχνολογία. Υπάρχουν τρεις caches που πρέπει να λάβουμε υπόψη:
Η προσωρινή αποθήκευση μπορεί να κάνει μια τεράστια βελτίωση των επιδόσεων. Στο BBC έχω δει την προσωρινή προσωρινή αύξηση της απόδοσης περισσότερο από 20 φορές στον κώδικα παραγωγής. Είναι επωφελές και για τους επιχειρηματίες. Με την προσωρινή αποθήκευση, περισσότεροι χρήστες μπορούν να υποστηριχθούν από το ίδιο υλικό. Αυτό μειώνει το κόστος στο υλικό ανά χρήστη και συνεπώς μειώνει το λειτουργικό κόστος του ιστότοπου.
Για να είναι αποτελεσματική, θέλουμε να χρησιμοποιήσουμε τα προσωρινά δεδομένα όσο το δυνατόν περισσότερο. Για να επεκταθεί η αναλογία των skittles, αν θέλω ένα μπλε skittle, αλλά δεν έχω καμία μπλε skittles στο χέρι μου (γνωστός aka cache μου), θα πρέπει να επιστρέψω στο πακέτο. Αυτό είναι γνωστό ως το ποσοστό "HIT". Είναι ένα «χτύπημα» όταν το στοιχείο βρίσκεται στην κρυφή μνήμη και ένα 'miss' όταν δεν είναι. Θέλουμε ένα υψηλό ποσοστό επιτυχίας έτσι ώστε η προσωρινή μνήμη να πάρει το μεγαλύτερο μέρος του φορτίου.
Μία από τις απλούστερες μεθόδους για την αύξηση του ρυθμού χτύπησης είναι η μείωση της διακύμανσης. Τεντώστε τα σκουλαρίκια μου αναλογία λίγο, φανταστείτε αν όλα τα skittles ήταν κόκκινα. Με αυτόν τον τρόπο, κάθε σκάνδαλο στο χέρι μου θα ήταν ένα χτύπημα κρυφής μνήμης. Ποτέ δεν θα χρειαστεί να επιστρέψω στο πακέτο. Εφαρμόζοντας αυτό στο διαδίκτυο, αν μπορούμε να δώσουμε την ίδια σελίδα σε όσο το δυνατόν περισσότερους χρήστες, η προσωρινή μνήμη γίνεται πιο αποτελεσματική καθώς περισσότερα αιτήματα θα χτυπήσουν την κρυφή μνήμη.
Έτσι είναι η θεωρία. Ας πάρουμε πρακτικό. Ας ξεκινήσουμε εξετάζοντας την προσωρινή αποθήκευση του αιτήματος για το HTML. Η προσωρινή αποθήκευση όλων των τύπων αρχείων ελέγχεται χρησιμοποιώντας κεφαλίδες HTTP. Οι κεφαλίδες είναι μετα-δεδομένα (δεδομένα σχετικά με τα δεδομένα) που αποστέλλονται από το διακομιστή στο πρόγραμμα περιήγησης και ορατά σε όλο το υλικό δικτύου στο μεταξύ. Για να πείτε στον κόσμο, έχει άδεια να κρυφτεί τις σελίδες μας και να μοιραστείτε την προσωρινή μνήμη μεταξύ χρηστών, ορίζουμε την ακόλουθη κεφαλίδα:
Cache-Control: public, max-age=30
Εδώ, έχουμε ορίσει επίσης ένα χρονικό όριο: Ο μέγιστος χρόνος που η μνήμη cache θα πρέπει να επαναχρησιμοποιήσει αυτή τη σελίδα για, σε δευτερόλεπτα. Για αυτό το παράδειγμα, το έχω ορίσει σε 30 δευτερόλεπτα.
Ρύθμιση της σελίδας στο «κοινό», το πρόγραμμα περιήγησης του χρήστη (και οποιοδήποτε υλικό κατά μήκος του δρόμου) θα διατηρήσει ένα αντίγραφο. Έτσι, το φορτίο της πρώτης σελίδας θα κάνει ένα αίτημα, αλλά όλα τα φορτία σελίδας μετά από αυτό θα επαναχρησιμοποιήσουν την αρχική απόκριση, μέχρι να επιτευχθεί το χρονικό όριο.
Η επίδραση του υλικού δικτύου κατά μήκος του τρόπου μπορεί να είναι βαθιά. Πολλά μεγάλα δίκτυα (όπως ISPs) θα έχουν κοινή μνήμη cache μεταξύ των χρηστών. Οι φορείς εκμετάλλευσης κινητής τηλεφωνίας χρησιμοποιούν επίσης αυτή την τεχνική σε μεγάλο βαθμό - για παράδειγμα, για την προσωρινή μνήμη και οι ραντεβούσαν εικόνες που σερβίρονται πάνω από 3G. Οι φορείς εκμετάλλευσης ιστότοπων μπορούν επίσης να τοποθετήσουν μια κρυφή μνήμη http μπροστά από την υπηρεσία τους. Αυτό κάναμε στο BBC.
Μια τεχνική που χρησιμοποιούμε πολλά στο BBC είναι να αντιμετωπίζουμε διαφορετικά στατικά περιουσιακά στοιχεία (όπως εικόνες, CSS και σεναρίων) διαφορετικά για το πώς αντιμετωπίζουμε τις σελίδες. Οι σελίδες Caching HTML για πολύ καιρό μπορούν να οδηγήσουν σε χρήστες που λείπουν τις ενημερώσεις περιεχομένου, αλλά μπορούμε να επωφεληθούμε από αυτή τη συμπεριφορά όταν πρόκειται για στατικά περιουσιακά στοιχεία.
Στο BBC στέλνουμε όλα τα στατικά περιουσιακά στοιχεία με μέγιστη ηλικία 31.536.000 δευτερολέπτων που ρυθμίζονται στην κεφαλίδα της κρυφής μνήμης. Αυτό εξασφαλίζει τα περιουσιακά στοιχεία αποθηκευτούν για 365 ημέρες. Στην πραγματικότητα, τα περιουσιακά στοιχεία ζητούνται μόνο μία φορά. Αυτό είναι καλό για την απόδοση αλλά κακή για την ευελιξία καθώς οι αλλαγές στο εν λόγω περιουσιακό στοιχείο θα χρειαστούν πολύ χρόνο για να φτάσουν στον χρήστη.
Προκειμένου να λειτουργούμε γύρω από αυτό, κάθε φορά που κυκλοφόρτουμε μια νέα έκδοση μιας σελίδας, αλλάζουμε τη διεύθυνση URL όπου διατηρούνται τα περιουσιακά στοιχεία. Αυτό το τέχνασμα σημαίνει ότι οι νέες αλλαγές τοποθετούνται μπροστά στους χρήστες αμέσως, αλλά εξακολουθούμε να έχουμε τα ίδια οφέλη απόδοσης.
Η προσωρινή αποθήκευση προκειμένου να ενισχυθεί η απόδοση του ιστότοπου θα μειωθεί με τη μείωση του λειτουργικού κόστους για τους ιστοτόπους μας και θα διατηρήσει τη ροή των χρηστών μας, οδηγώντας σε μια μεγάλη εμπειρία χρήστη.
Το άρθρο αυτό δημοσιεύθηκε αρχικά στην έκδοση 279 του Net, το περιοδικό Best-Selling στον κόσμο για τους σχεδιαστές και τους προγραμματιστές ιστοσελίδων. Αγορά Τεύχος 279 ή Εγγραφείτε στο NET .
Ο Jason Lengstorf είναι ένας προγραμματιστής, σχεδιαστής, συγγραφέας και φιλική αρκούδα. Η εστίασή του είναι στην αποτελεσματικότητα και την απόδοση των ανθρώπων, των ομάδων και λογισμικού. Στην IBM, δημιουργεί διαδικασίες και συστήματα για να κάνει το σωστό το εύκολο πράγμα. Εν πάση περιπτώσει, περιπλανιέται τη Γη σε αναζήτηση νέων και καλύτερων σνακ.
Στο εργαστήρι του σύγχρονες στρατηγικές και τεχνικές απόδοσης του μπροστινού άκρου στο Δημιουργία της Νέας Υόρκης από τις 25-27 Απριλίου 2018 , Ο Jason θα παρουσιάσει τους συμμετέχοντες πώς να βελτιώσουν τους αντιληπτούς χρόνους φόρτωσης - Πόσο καιρό αισθάνεται σαν να χρειάζεται να φορτώσει μια σελίδα - καθώς και πραγματικούς χρόνους φόρτωσης, χρησιμοποιώντας μόνο τεχνικές εμπρόσθιου άκρου, όπως:
Δημιουργία της Νέας Υόρκης πραγματοποιείται από τις 25-27 Απριλίου 2018. Πάρτε το εισιτήριό σας τώρα .
Σχετικά Άρθρα:
(Credit Image: Yan από Pexels) Προσπαθώντας να επιλέξετε ένα όνομα ιστότοπο..
Σελίδα 1 από 2: Πώς να σχεδιάσετε ένα άλογο: Βήμα προς βήμα..
Είτε ξεκινάτε απλώς σε γραφιστική ή σε ένα καρυκεύματα, υπάρχει πάντα κάτι νέο για να μάθετε αν θέλετε να..
Η χρωματική εκτροπή (παραμόρφωση), επίσης γνωστή ως «έγχρωμο fringing» είν�..
Να σας ζητηθεί να περιγράψω το δικό μου Τεχνική ζωγραφικής είν..
Vertex Leader Workshop Glen νότια μοιράζεται τις κορυφαίες σ�..
Ο χρόνος ήταν ένα φόντο ιστοσελίδας ήταν μια μικροσκοπική εικόνα πλακ�..
Για αυτό το εργαστήριο ζωγραφίζω ένα από τα αγαπημένα μου θέματα: μια γέφυρα της Νέας Υόρκης. Έχω ζωγραφί..