Διαφήμιση
Το Διαδίκτυο είναι καταπληκτικό, νομίζω ότι μπορούμε όλοι να συμφωνήσουμε σε αυτό. Αλλά έχετε καθίσει ποτέ και σκεφτήκατε πώς στην πραγματικότητα ένας ιστότοπος οδηγεί στον υπολογιστή σας; Ποιες τεχνολογίες βρίσκονται πίσω από το MakeUseOf, για παράδειγμα; Είναι πολύ περισσότερο από μια απλή συλλογή αρχείων HTML και εικόνων.
Διαβάστε παρακάτω για να μάθετε τι ακριβώς ισχύει για την εκτέλεση, τη φιλοξενία και την εξυπηρέτηση ενός ιστότοπου για κατανάλωση, αγαπητοί αναγνώστες.
Σκεύη, εξαρτήματα
Ας ξεκινήσουμε από το πιο βασικό στοιχείο της φιλοξενίας ενός ιστότοπου - του υλικού. Ουσιαστικά, τα μηχανήματα που χρησιμοποιούνται για τη φιλοξενία ενός ιστότοπου δεν είναι πραγματικά διαφορετικά από τους επιτραπέζιους υπολογιστές που έχετε ή στο σπίτι σας. Έχουν περισσότερη μνήμη, εφεδρικές μονάδες δίσκου και συχνά συνδέσεις δικτύωσης οπτικών ινών - αλλά βασικά είναι οι ίδιες. Στην πραγματικότητα, κάθε παλιός υπολογιστής μπορεί να φιλοξενήσει έναν ιστότοπο - είναι απλώς μια περίπτωση για το πόσο γρήγορα θα μπορεί να στέλνει σελίδες στους χρήστες.
Μπορείτε να διαβάσετε περισσότερα εδώ για το διάφορα είδη φιλοξενίας Οι διάφορες μορφές φιλοξενίας ιστοσελίδων εξηγούνται [Η τεχνολογία εξηγείται] Διαβάστε περισσότερα διαθέσιμο, από ένα μόνο μηχάνημα που μοιράζεται μεταξύ χιλιάδων ιστότοπων, ο καθένας πληρώνει 5 $ / μήνα, σε έναν πλήρη αποκλειστικό διακομιστή ικανό να εκτελεί κάτι όπως το MakeUseOf που κοστίζει χιλιάδες δολάρια το μήνα.

Λειτουργικό σύστημα
Οι περισσότερες μηχανές διακομιστή ιστού διαθέτουν μια βελτιστοποιημένη γεύση του Linux - αν και υπάρχει μεγάλος αριθμός διακομιστών Εκεί εκτελούνται Windows, γενικά σε εταιρικά περιβάλλοντα όπου οι εφαρμογές ιστού βασίζονται σε ASP ή dotNet. Από τον Ιανουάριο του τρέχοντος έτους, η πιο δημοφιλής διανομή Linux για την επιλογή webhosting είναι Ντέμπιαν, ακολουθούμενο από κοντά CentOS (βασισμένο στο RedHat), και οι δύο διαθέσιμοι δωρεάν για λήψη και δοκιμή μόνοι σας - και ο καθένας λέγεται ότι φιλοξενεί περίπου το 30% όλων των ιστότοπων. Η Google τρέχει φυσικά το δικό της προσαρμοσμένο Linux, καθώς και το δικό του προσαρμοσμένο σύστημα αρχείων.
Λογισμικό Webserver
Εδώ αρχίζουν να διαφοροποιούνται τα πράγματα. Το λογισμικό διακομιστή ιστού είναι η εφαρμογή που λαμβάνει εισερχόμενα αιτήματα και εξυπηρετεί τις σελίδες ή τα αρχεία. Το ίδιο το λογισμικό διακομιστή ιστού δεν ασχολείται σε μεγάλο βαθμό με τη γλώσσα της ιστοσελίδας στην οποία εξυπηρετεί - Ένας διακομιστής Apache είναι αρκετά ικανός να εξυπηρετεί Python, PHP, Ruby ή οποιονδήποτε αριθμό διαφορετικών Γλώσσες; αλλά αυτό δεν είναι καθολικό. Το τρέχον μερίδιο αγοράς υποδεικνύει ότι το Apache τρέχει περίπου το 65% των κορυφαίων ιστότοπων, το Microsoft IIS 15% και το nginx 10%. Το nginx θεωρείται καλύτερο στον χειρισμό ιστότοπων υψηλής ταυτότητας - δηλαδή, όπου πολλές χιλιάδες χρήστες ενδέχεται να βρίσκονται στον ιστότοπο ταυτόχρονα - και στην πραγματικότητα χρησιμοποιείται εδώ στο MakeUseOf.

Όταν φορτώνετε έναν ιστότοπο, ανοίγετε μια υποδοχή - μια σύνδεση - μεταξύ του υπολογιστή σας και του διακομιστή ιστότοπου. Ένας περίτεχνος και μακρύς χορός στο HTTP μελωδία ξεκινά με το μπρος-πίσω των αιτημάτων, των δεδομένων και των κωδικών κατάστασης. Καθώς ζητήσατε αυτήν τη σελίδα, ο διακομιστής μας απάντησε με ένα 200 - ΟΚ, νόημα "Σίγουρα, εδώ πήγαινε"; αν επισκεφτήκατε πριν, το πρόγραμμα περιήγησής σας μπορεί επίσης να σας ρωτήσει "Γεια, έχω ήδη ένα αντίγραφο αυτού του γραφικού στην προσωρινή μνήμη του προγράμματος περιήγησής μου, το χρειάζομαι πάλι;", στην οποία ο διακομιστής μας απάντησε 304 - Δεν έχει τροποποιηθεί, ή "Όχι, αυτό είναι ωραίο, δεν το έχουμε αλλάξει ή τίποτα, απλώς χρησιμοποιήστε αυτό".
Περιστασιακά, θα βρείτε το φόβο 404 δεν βρέθηκε, αλλά δεν χρειάζεται να σας εξηγήσω αυτόν τον κωδικό σφάλματος. Εάν έχετε ανοίξει ποτέ Firebug Οδηγός της Ερασιτεχνικής για την προσαρμογή της σχεδίασης ιστότοπου με το FireBug Διαβάστε περισσότερα ή τη λειτουργία προγραμματιστή του προγράμματος περιήγησής σας, θα εκπλαγείτε να βλέπετε πόσο συνεχίζεται - δεν είναι απλό "Δώσε μου αυτή τη σελίδα" - "Εντάξει, εδώ", αλλά στην πραγματικότητα εκατοντάδες μικρότερες αλληλεπιδράσεις.

Στατικά αρχεία και δίκτυα παράδοσης περιεχομένου
Σε όλους τους ιστότοπους, υπάρχουν μερικά αρχεία που σχεδόν ποτέ δεν αλλάζουν. Πράγματα όπως Javascripts, CSS, εικόνες, PDF ή mp3. Αυτά ονομάζονται στατικά αρχεία, και για να σας εξυπηρετήσουμε, το λογισμικό διακομιστή web πρέπει απλώς να αρπάξει το αρχείο και να το στείλει. Εύκολο, σωστά; Οχι τόσο γρήγορα.
Δυστυχώς, η αποστολή μεγάλου αριθμού στατικών αρχείων είναι μια επίπονη εργασία λόγω του μεγέθους των αρχείων. Εάν έχετε επισκεφθεί ποτέ μια ιστοσελίδα όπου μπορείτε να καθίσετε εκεί βλέποντας τις εικόνες να φορτώνονται, αυτό συμβαίνει επειδή ο διακομιστής ιστού λαμβάνει αυτά τα αρχεία για εσάς - απλά δεν είναι βελτιστοποιημένα για να κάνουν αυτό το είδος δουλειά. Αντ 'αυτού, οι μεγάλοι ιστότοποι εκφορτώνουν όλα αυτά τα στατικά αρχεία σε αυτό που ονομάζεται a Δίκτυο παράδοσης περιεχομένου - διαχωρίστε διακομιστές που έχουν βελτιστοποιηθεί ώστε να προβάλλουν στατικά αρχεία γελοία γρήγορα σε ριπή οφθαλμού.
Το επιτυγχάνουν επίσης εντοπίζοντας φυσικά διακομιστές σε διαφορετικές τοποθεσίες σε όλο τον κόσμο που αντανακλούν ο ένας τον άλλον, έτσι τα δεδομένα έχουν λιγότερη απόσταση για να ταξιδέψουν σε εσάς. Αυτήν τη στιγμή, παρόλο που το άρθρο MakeUseOf που διαβάζετε στην πραγματικότητα φιλοξενείται στις Ηνωμένες Πολιτείες, όλες οι εικόνες και η Javascript έρχονται από κάπου πολύ πιο κοντά σας μέσω ενός τοπικού CDN.
Δυναμικό περιεχόμενο - Γλώσσες προγραμματισμού Ιστού
Σχεδόν όλοι οι σύγχρονοι ιστότοποι έχουν δυναμικό περιεχόμενο κάποιου είδους, είτε αυτό σημαίνει ότι το WordPress προσθέτει σχόλια σε μια ανάρτηση ιστολογίου, είτε το Google προβάλλει αποτελέσματα αναζήτησης. Για να κάνετε μια ιστοσελίδα δυναμική όπως, απαιτούνται γλώσσες προγραμματισμού ιστού. Έγραψα πριν για το διάφορες γλώσσες στη διάθεσή σας Ποια γλώσσα προγραμματισμού πρέπει να μάθετε - Προγραμματισμός ΙστούΣήμερα θα ρίξουμε μια ματιά στις διάφορες γλώσσες προγραμματισμού Ιστού που τροφοδοτούν το Διαδίκτυο. Αυτό είναι το τέταρτο μέρος σε μια σειρά προγραμματισμού για αρχάριους. Στο μέρος 1, μάθαμε τα βασικά ... Διαβάστε περισσότερα (και μπήκα σε μερικές έντονες συζητήσεις για το ότι η PHP ήταν η καλύτερη). Όποια γλώσσα κι αν επιλέξετε, λειτουργεί σε συνδυασμό με το επίπεδο λογισμικού διακομιστή ιστού για να δημιουργήσετε πρώτα δυναμικά τα περιεχόμενα της σελίδας και, στη συνέχεια, να το σερβίρετε.
Βάσεις δεδομένων
Πίσω από όλους τους δυναμικούς ιστότοπους υπάρχουν βάσεις δεδομένων - τεράστια αποθέματα για ανεπεξέργαστα δεδομένα που μας επιτρέπουν να έχουμε πρόσβαση σε αυτά τα δεδομένα με διάφορους τρόπους. Για αυτό, απαιτείται μια ξεχωριστή γλώσσα προγραμματισμού βάσης δεδομένων, το πιο δημοφιλές είναι SQL (Structured Query Language) και είναι πολλές παραλλαγές. Οι βάσεις δεδομένων περιέχουν διαφορετικούς πίνακες δεδομένων για να αντιπροσωπεύουν διαφορετικές δομές δεδομένων - μία μπορεί να είναι μια λίστα άρθρων. άλλο για σχόλια σε αυτά τα άρθρα. Χρησιμοποιώντας το SQL, μπορούμε να ταξινομήσουμε, να συνδυάσουμε και να παρουσιάσουμε αυτά τα δεδομένα με διάφορους τρόπους.
Στο WordPress για παράδειγμα, μια «ανάρτηση» αποτελείται τουλάχιστον από έναν τίτλο και μια ημερομηνία, και πιθανώς από κάποιο πραγματικό περιεχόμενο. Ένας ξεχωριστός πίνακας χρησιμοποιείται για την αποθήκευση των σχολίων σε αυτό το άρθρο, με έναν ακόμη πίνακα για την αποθήκευση μιας λίστας κατηγοριών και στη συνέχεια ακόμη ένα άλλο για να αποθηκεύσετε μια λίστα με τις κατηγορίες που έχουν ανατεθεί σε ποιο άρθρο. Με παραπομπή και λήψη δεδομένων από όλα αυτά, το WordPress συγκεντρώνει όλες τις πληροφορίες που χρειάζεται για μια συγκεκριμένη σελίδα του ιστολογίου σας, πριν από την εφαρμογή του θέματος και την παρουσίασή σας, μέσω του διακομιστή ιστού λογισμικό.

Συστήματα προσωρινής αποθήκευσης
Η εξυπηρέτηση στατικών αρχείων HTML είναι πολύ εύκολη από άποψη υπολογισμού - ο διακομιστής πρέπει απλώς να πάρει το αρχείο - δυναμικό περιεχόμενο Από την άλλη πλευρά, απαιτείται πολλή δουλειά για τη συγκέντρωση της σελίδας, με τη βάση δεδομένων και την επεξεργασία που πραγματοποιείται σε αυτό δεδομένα. Ένα σύστημα προσωρινής αποθήκευσης μας φέρνει πλήρη κύκλο, δημιουργώντας αυτές τις δυναμικές σελίδες και, στη συνέχεια, τις αποθηκεύουμε βασικά ως στατικά αρχεία HTML. Όταν ζητηθεί ξανά η ίδια ακριβώς σελίδα, δεν χρειάζεται να υπολογιστεί εκ νέου, επιταχύνοντας έτσι τον ιστότοπο.
Η προσωρινή αποθήκευση είναι ένας ευρύτερος όρος που μπορεί να σημαίνει πολλά πράγματα - τα CDN είναι ένας τύπος προσωρινής μνήμης. Υπάρχουν επίσης κρυφές μνήμες βάσης δεδομένων για συχνές ερωτήσεις (σκεφτείτε το WordPress που ζητά τη βάση δεδομένων τον τίτλο του ιστολογίου σας κάθε φορά που κάποιος κοιτάζει την ανάρτησή σας - γιατί αυτό ακριβώς είναι συμβαίνει). Έγραψα πριν για το πώς να ρυθμίσω το δημοφιλές Σύστημα W3 Total Cache για WordPress Πώς να διαμορφώσετε τις διάφορες ρυθμίσεις του W3 Total Cache Plugin για το blog σας στο WordpressΠριν από λίγο καιρό μίλησα για τα οφέλη από την εγκατάσταση του W3TC plugin στο Wordpress blog σας, προκειμένου να επιταχυνθεί με διάφορες κρυφές μνήμες, αλλά ορισμένοι αναγνώστες ήταν κατανοητά λίγο επιφυλακτικοί για ... Διαβάστε περισσότερα , χρησιμοποιείται επίσης εδώ στο MakeUseOf. Τα δικα σου Το πρόγραμμα περιήγησης έχει επίσης προσωρινή μνήμη Όλα όσα πρέπει να ξέρετε για την προσωρινή μνήμη του προγράμματος περιήγησης [MakeUseOf Explains]Κάθε φορά που έχετε πρόβλημα με έναν ιστότοπο, μία από τις πρώτες προτάσεις που θα ακούσετε από την υποστήριξη IT είναι "προσπαθήστε να εκκαθαρίσετε την προσωρινή μνήμη του προγράμματος περιήγησής σας" μαζί με "και να διαγράψετε τα cookie σας". Λοιπόν, τι είναι ... Διαβάστε περισσότερα - σχεδόν τίποτα μπορεί να αποθηκευτεί στην κρυφή μνήμη.
Όπως μπορείτε να δείτε, στην πραγματικότητα υπάρχει ένας τεράστιος όγκος εργασίας και πολλές τεχνολογίες που σχετίζονται με τη φιλοξενία ενός ιστότοπου. Ωστόσο, αυτό δεν σημαίνει ότι δεν μπορείτε να έχετε το δικό σας δημιουργία και λειτουργία ιστολογίου σε λιγότερο από μία ώρα Ρυθμίστε το ιστολόγιό σας με WordPress: Ο απόλυτος οδηγόςΘέλετε να ξεκινήσετε το δικό σας blog αλλά δεν ξέρετε πώς; Κοιτάξτε στο WordPress, την πιο ισχυρή πλατφόρμα blogging που διατίθεται σήμερα. Διαβάστε περισσότερα . Η κλιμάκωση σε πολλές χιλιάδες χρήστες είναι εκεί που ξεκινούν τα προβλήματα.
Καμιά ερώτηση? Ρωτήστε μακριά και θα κάνω ό, τι καλύτερο μπορώ να απαντήσω. Σας εκπλήσσει το πόση προσπάθεια μπορεί να κάνει ένας ιστότοπος;
Ο James έχει πτυχίο Τεχνητής Νοημοσύνης και είναι πιστοποιημένο με CompTIA A + και Network +. Είναι ο κύριος προγραμματιστής του MakeUseOf και περνά τον ελεύθερο χρόνο του παίζοντας VR paintball και boardgames. Δημιουργεί υπολογιστές από τότε που ήταν παιδί.