Το internet τρέχει με ιλιγγιώδεις ταχύτητες. Οι νέες σελίδες είναι όλο και πιο βαριές, γεμάτες γραφικά, εικόνες, βίντεο. Κι εμείς, ως χρήστες, γινόμαστε όλο και πιο απαιτητικοί: “Γιατί δε φορτώνει άμεσα η σελίδα που ζήτησα; Γιατί κολλάει στο κατέβασμα;”
Το HTTP/2 ήρθε για να δώσει λύση στην ανυπομονησία μας! Να μειώσει την ταχύτητα φόρτωσης των ιστοσελίδων και να βελτιώσει την εμπειρία του σερφαρίσματος.
Τι είναι όμως το HTTP/2 και γιατί μας ενδιαφέρει;
Τι είναι το HTTP;
To ‘http://’ (Hypertext Transfer Protocol), που βλέπουμε να εμφανίζεται στην αρχή του κάθε URL, είναι το σημαντικότερο πρωτόκολλο επικοινωνίας που χρησιμοποιείται από τους browsers, ώστε να μεταφερθούν τα απαραίτητα δεδομένα μεταξύ ενός server και του χρήστη. Το HTTP κάνει όλη τη δύσκολη δουλειά: εντοπίζει και φέρνει πληροφορίες από το διαδίκτυο στον browser σου. Πληκτρολογώντας ένα URL βασικά δημιουργείς ένα HTTP αίτημα και ζητάς στον server να σου βρει και να εμφανίσει μια συγκεκριμένη σελίδα.
Η ιδέα για το πρωτόκολλο αυτό ξεκίνησε το 1991 και το HTTP/1.1, η έκδοση που χρησιμοποιούσαμε μέχρι και σήμερα, δημιουργήθηκε το 1999. Από τότε σιγή.
Η εξέλιξη: ΗTTP/2
Kι όμως! Η νέα έκδοση του HTTP, το ΗTTP/2 ήρθε το 2015 για να ενθουσιάσει τους γνώστες του αντικειμένου και να πάει το πρωτόκολλο ένα βήμα… πιο γρήγορα! Με την εξέλιξη αυτή, το πρώτο πράγμα που μπορεί να παρατηρήσει ο χρήστης είναι η ταχύτερη φόρτωση της ιστοσελίδας που θέλει να επισκεφτεί. Αυτό γίνεται εξαιτίας των καινούριων χαρακτηριστικών του ΗTTP/2 και κυρίως λόγω του multiplexing, της δυνατότητας του εξελιγμένου πρωτοκόλλου να επεξεργαστεί περισσότερα HTTP requests μαζεμένα.
Πώς λειτουργεί το πρωτόκολλο;
Multiplexing
Για να εμφανιστεί μια ιστοσελίδα, ο browser δημιουργεί αιτήματα (requests) στον server για να του φέρει τα στοιχεία που απαιτούνται. To ΤCP είναι το πρωτόκολλο που είναι υπεύθυνο για να ‘σπάει’ τα δεδομένα σε πακετάκια και να τα μεταφέρει ασφαλή από δίκτυο σε δίκτυο. Μέχρι τώρα, το HTTP1.1 μπορούσε να επεξεργαστεί ένα request τη φορά, απαιτώντας έτσι πολλές TCP συνδέσεις για να φορτώσει ένα site. Η multiplexing δυνατότητα του HTTP/2 επιτρέπει στο πρωτόκολλο να ανοίγει μια και μοναδική TCP σύνδεση αλλά να επεξεργάζεται πολλά requests ταυτόχρονα και παράλληλα, χωρίς να επηρεάζεται η ακεραιότητα του καθενός από τα υπόλοιπα. Ο χρήστης στέλνει πολλαπλά αιτήματα και λαμβάνει πίσω πληροφορίες σε οποιαδήποτε σειρά, χωρίς αναμονή. Αν για παράδειγμα έχουν σταλεί δυο requests για να εμφανιστούν δυο φωτογραφίες, και το ένα καθυστερεί για να εμφανίσει τη φωτογραφία, το δεύτερο δε θα περιμένει, αλλά θα επιστρέψει κανονικά με τα στοιχεία του. Έτσι οι σελίδες φορτώνουν ταχύτερα, απαιτούνται λιγότεροι πόροι και διευκολύνεται η χρήση ασφαλών συνδέσεων.
Prioritization
Από την άλλη όμως, πρέπει να εμφανίζονται τα requests με μια σειρά προτεραιότητας ώστε το site να φορτώνει βγάζοντας νόημα. Το HTTP/2 έχει αυτή την ικανότητα να θέτει προτεραιότητες και επικοινωνόντας με τον server να υποδεικνύει τη σειρά με την οποία πρέπει να μεταφέρονται τα δεδομένα.
Συμπίεση των headers
Ο χρήστης χρησιμοποιεί τα headers για να ενημερώσει τους servers σχετικά με το ποιες πληροφορίες απαιτούνται και σε τι μορφή (format) τις θέλει. Τα headers δεν αλλάζουν ιδιαίτερα μεταξύ requests. Έτσι το HTTP1.1 έχανε πολύτιμο χρόνο μεταφέροντας ξανά και ξανά τα ίδια δεδομένα, τα οποία συχνά ήταν και πολύ βαριά. Το HTTP/2 έχει τη δυνατότητα συμπίεσης των headers, μειώνοντας έτσι τον όγκο τους αλλά και τις ‘βόλτες’ που πρέπει να γίνουν για τη μεταφορά τους. Τα χαρακτηριστικά αυτά δίνουν μεγάλη ώθηση στην ταχύτητα φόρτωσης ενός site και βελτιώνουν ιδιαίτερα την εμπειρία του χρήστη από mobile συσκευές.
Server Push
Για να εξοικονομηθεί ακόμη περισσότερος χρόνος, το HTTP/2 αναλύει τα requests του χρήστη και μπορεί πλέον να “προβλέψει” τα επόμενα αιτήματα του. Έτσι, o server στέλνει, εκ των προτέρων, κάποιες σχετικές, έξτρα πληροφορίες που κρίνει ότι είναι πιθανό να χρειαστούν στο μέλλον.
Binary
Ένα ακόμη από τα βασικά χαρακτηριστικά που κάνουν το HTTP/2 να επιταχύνει την κίνηση πληροφοριών είναι ότι λειτουργεί σε δυαδικό σύστημα, το οποίο είναι και η ‘μητρική’ γλώσσα του υπολογιστή. Αυτό βοηθά στην αποσυμφόρηση του δικτύου, ενισχύοντας την ταχύτητά του. Μέχρι τώρα, το προηγούμενο πρωτόκολλο χρησιμοποιούσε εντολές κειμένου για την ολοκλήρωση των requests, τις οποίες έπρεπε στη συνέχεια να μεταφράζει σε δυαδικό σύστημα.
Δείτε σε αυτό το demo πώς φόρτωνε μια σελίδα και πώς φορτώνει πλέον με το HTTP/2.
Το ΗΤΤP/2 αγαπάει το Internet
Δες παρακάτω μερικά από τα βασικά πλεονεκτήματα που προσφέρει η εξέλιξη του πρωτοκόλλου:
- Βελτίωση εμπειρίας και ταχύτητας φόρτωσης -και σε mobile
Τα χαρακτηριστικά του HTTP/2 συμβάλλουν στη σημαντική μείωση των καθυστερήσεων πρόσβασης σε υπηρεσίες διαδικτύου.
- Φτηνότερο internet
Αυξάνοντας και βελτιώνοντας την διακίνηση δεδομένων, οι εταιρείες τηλεπικοινωνίας θα μειώσουν τα κόστη λειτουργίας τους διατηρώντας υψηλές ταχύτητες στο ίντερνετ.
- Αποσυμφόρηση δικτύων – ελεύθεροι πόροι για απομακρυσμένες περιοχές
Όσοι περισσότεροι υιοθετήσουν το νέο πρωτόκολλο, τόσο περισσότερο θα αποσυμφορίζονται οι πόροι. Συνεπώς, θα ελευθερώνεται bandwidth και πόροι για γεωγραφικά απομακρυσμένες περιοχές.
- Εμπλουτισμένη, multimedia εμπειρία πλοήγησης
Τα χαρακτηριστικά και οι τεχνολογίες του HTTP/2, όπως για παράδειγμα η συμπίεση header, “κόβουν” αρκετά bytes από τον όγκο πλούσιου multimedia περιεχομένου.
- Ασφάλεια
Από μόνο του το γεγονός ότι χρειάζεται κρυπτογραφημένη σύνδεση για να λειτουργήσει το HTTP/2, προάγει την ασφάλεια στο ίντερνετ. Επίσης, το ότι οι εντολές βρίσκονται σε δυαδικό σύστημα (binary) συμβάλλει στην προστασία των ευαίσθητων δεδομένων που ανταλλάσονται.
- Καινοτομία
H εξέλιξη του HTTP/2 είναι η μεγαλύτερη καινοτομία που έχει γίνει στο συγκεκριμένο πρωτόκολλο, από το 1999!
- Καλύτερο SEO
Πλέον, για να βελτιώσει κανείς το SEO σε μια σελίδα, πρέπει να πάει ένα βήμα παραπέρα από το front-end, μάρκετινγκ. Το νέο HTTP -με τις καινοτόμες τεχνολογίες του- φέρνει μια μεγάλη αλλαγή και επαναπροσδιορίζει τι σημαίνει βελτίωση SEO, από τη βάση.
HTTP/2 στους server του Papaki
Το HTTP/2 πλέον υποστηρίζεται με κάθε νέο paid πακέτο που ανοίγει στο Papaki. Έχει επίσης ενεργοποιηθεί σε 16 υπάρχοντες servers μας. Έτσι θα προσφέρεις στους επισκέπτες του site σου ταχύτερη και καλύτερη εμπειρία πλοήγησης (UX).
Τι πρέπει να κάνεις
Το HTTP/2 απαιτεί κρυπτογραφημένη σύνδεση για να λειτουργήσει. Πρέπει δηλαδή το site σου να είναι “https” που σημαίνει να έχεις ενεργοποιημένο κάποιο πιστοποιητικό SSL. Εάν έχεις πληρωμένο πακέτο web hosting στο Papaki και βρίσκεσαι σε έναν από τους servers που υποστηρίζουν το HTTP/2, πρέπει να προμηθευτείς και να ενεργοποιήσεις ένα SSL πιστοποιητικό ώστε να ενεργοποιηθεί το “https” στο site σου. Δεν χρειάζεται να κάνεις κάτι άλλο -το HTTP/2 είναι σε λειτουργία και τρέχει στο hosting σου :)
Μπες στη συζήτηση