
Συμπίεση
Η συμπίεση ιστού μειώνει το μέγεθος των αρχείων που μεταφέρονται μεταξύ server και browser κωδικοποιώντας τα δεδομένα πιο αποδοτικά, με τα gzip και Brotli να είναι οι πιο συνηθισμένοι αλγόριθμοι που χρησιμοποιούνται.
Όταν ένας browser ζητά μια ιστοσελίδα, ο server μπορεί να συμπιέσει την απάντηση πριν την αποστείλει. Ο browser στη συνέχεια την αποσυμπιέζει, όλη αυτή η διαδικασία είναι διαφανής για τους χρήστες, αλλά μπορεί να μειώσει τα μεγέθη μεταφοράς κατά 60-90% για αρχεία κειμένου όπως HTML, CSS, JavaScript, JSON και SVG. Το gzip είναι ο τυπικός αλγόριθμος συμπίεσης για τον ιστό από τα τέλη της δεκαετίας του 1990. Συνήθως επιτυγχάνει αναλογίες συμπίεσης 60-80% σε αρχεία κειμένου.
Το Brotli, που αναπτύχθηκε από την Google και κυκλοφόρησε το 2015, προσφέρει 15-25% καλύτερη συμπίεση από το gzip, ειδικά για στατικό περιεχόμενο. Οι περισσότεροι σύγχρονοι browsers υποστηρίζουν και τα δύο. Η συμπίεση ενεργοποιείται σε επίπεδο server ή CDN. Οι περισσότεροι web servers (Nginx, Apache) και πλατφόρμες cloud (Vercel, Cloudflare, AWS) ενεργοποιούν τη συμπίεση από προεπιλογή. Ο browser δηλώνει ποιους αλγορίθμους συμπίεσης υποστηρίζει μέσω του header Accept-Encoding και ο server απαντά με την καλύτερη διαθέσιμη επιλογή.
Στην πράξη
- Το JavaScript bundle ενός εταιρικού ιστότοπου 500KB συμπιέστηκε σε 95KB με gzip και 80KB με Brotli, φορτώνοντας σε 0,5 δευτερόλεπτα αντί για 3 δευτερόλεπτα σε κινητό
- Μια απάντηση API που ήταν 2MB JSON συμπιέστηκε σε 180KB με Brotli, μειώνοντας την καθυστέρηση του API από 4 δευτερόλεπτα σε λιγότερο από 1 δευτερόλεπτο σε συνδέσεις 4G
- Μια μετεγκατάσταση φιλοξενίας απενεργοποίησε κατά λάθος τη συμπίεση gzip, διπλασιάζοντας τους χρόνους φόρτωσης σελίδας μέσα σε μια νύχτα, η επανενεργοποίησή της αποκατέστησε αμέσως την απόδοση
- Ένας στατικός ιστότοπος που χρησιμοποιούσε προ-συμπίεση Brotli κατά τον χρόνο build (αντί για on-the-fly) πέτυχε μέγιστες αναλογίες συμπίεσης χωρίς καμία επιβάρυνση CPU στον server
Περισσότερα για: Απόδοση
Δεν είστε σίγουροι πώς εφαρμόζεται σε εσάς;
Ένας έμπειρος μηχανικός εξετάζει τον ιστότοπό σας, την παρουσία σας στις αναζητήσεις και τον τρόπο που σας φτάνουν τα αιτήματα, και μετά καταγράφει τα τρία πράγματα που αξίζει να διορθωθούν πρώτα. Κρατάτε το έγγραφο είτε έτσι είτε αλλιώς.