Διαφήμιση

Πώς λειτουργεί το Facebook; The Nuts and Bolts [Τεχνολογία που εξηγείται] 0 εισαγωγή στο FacebookΗ κοινωνική δικτύωση είναι η τέχνη της σύνδεσης με όσους έχουν κοινά ενδιαφέροντα. Το "˜network" σας είναι μια κοινότητα που σας βοηθά να διατηρείτε ενωμένους με τους άλλους και προσφέρει πολλά οφέλη. Η δικτύωση μέσω ιστότοπων κοινωνικών μέσων έχει φέρει επανάσταση στον τρόπο με τον οποίο χρησιμοποιούμε το Διαδίκτυο και βρίσκεται στην πρώτη γραμμή αυτού που τώρα ονομάζουμε Web 2.0.

Facebook είναι κοινωνική δικτύωση. Οι άνθρωποι «facebooking» ο ένας τον άλλο για περίπου 6 χρόνια τώρα, φτιάχνοντας Facebook το πιο χρησιμοποιημένο κοινωνικό δίκτυο με περισσότερους από 350 εκατομμύρια χρήστες παγκοσμίως. Αλλά πώς λειτουργεί το Facebook;

Σε αυτό το άρθρο, θα συζητήσω τις εσωτερικές λειτουργίες του Facebook, καλύπτοντας το αρχιτεκτονική και υποδομή frontend / backend "" τα παξιμάδια και τα μπουλόνια που συγκρατούν το Facebook μαζί.

Πώς λειτουργεί το Facebook; "" Το Front End

Το Facebook χρησιμοποιεί μια ποικιλία υπηρεσιών, εργαλείων και γλωσσών προγραμματισμού για να δημιουργήσει την βασική του υποδομή. Στο μπροστινό μέρος, οι διακομιστές τους εκτελούν μια στοίβα LAMP (Linux, Apache, MySQL και PHP) με Memcache. Δεν είστε ειδικός στην επιστήμη των υπολογιστών; Ας ρίξουμε μια ματιά σε τι ακριβώς σημαίνει αυτό.

instagram viewer

Linux και Apache

πώς λειτουργεί το facebook

Αυτό το μέρος είναι αρκετά αυτονόητο. Linux είναι ένας πυρήνας λειτουργικού συστήματος που μοιάζει με Unix. Είναι ανοιχτού κώδικα, πολύ προσαρμόσιμο και καλό για την ασφάλεια. Το Facebook εκτελεί το λειτουργικό σύστημα Linux σε διακομιστές Apache HTTP. Απάχης είναι επίσης δωρεάν και είναι ο δημοφιλέστερος διακομιστής ιστού ανοιχτού κώδικα που χρησιμοποιείται.

MySQL

πώς λειτουργεί το facebook

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

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

PHP

πώς λειτουργεί το facebook

Το Facebook χρησιμοποιεί PHP επειδή είναι μια καλή γλώσσα προγραμματισμού Ιστού με εκτεταμένη υποστήριξη και μια ενεργή κοινότητα προγραμματιστών και είναι καλό για ταχεία επανάληψη. PHP είναι μια δυναμική δακτυλογραφημένη / ερμηνευμένη γλώσσα δέσμης ενεργειών.

Memcache

πώς λειτουργεί το facebook

Memcache είναι ένα σύστημα μνήμης προσωρινής αποθήκευσης που χρησιμοποιείται για την επιτάχυνση δυναμικών ιστότοπων που βασίζονται σε βάσεις δεδομένων (όπως το Facebook) μέσω αποθήκευσης δεδομένων και αντικειμένων στην μνήμη RAM για μείωση του χρόνου ανάγνωσης. Το Memcache είναι η κύρια μορφή προσωρινής αποθήκευσης του Facebook και βοηθά στην ανακούφιση της φόρτωσης της βάσης δεδομένων.

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

Μειονεκτήματα στη χρήση LAMP

Το Facebook συνειδητοποίησε ότι υπάρχουν μειονεκτήματα στη χρήση της στοίβας LAMP. Συγκεκριμένα, η PHP δεν είναι απαραίτητα βελτιστοποιημένη για μεγάλους ιστότοπους και επομένως είναι δύσκολο να κλιμακωθεί. Επίσης, δεν είναι η γλώσσα με την ταχύτερη εκτέλεση και το πλαίσιο επέκτασης είναι δύσκολο στη χρήση.

πώς λειτουργεί το facebook

Ο Mike Schroepfer, Αντιπρόεδρος της Μηχανικής του Facebook, πρόσφατα έκανε μια συνέντευξη στο EmTech @ MIT σχετικά με αυτό. «Η κλιμάκωση οποιουδήποτε ιστότοπου είναι μια πρόκληση», δήλωσε ο Schroepfer, «αλλά η κλιμάκωση ενός κοινωνικού δικτύου έχει μοναδικές προκλήσεις».

Συνέχισε λέγοντας ότι σε αντίθεση με άλλους ιστότοπους, δεν μπορείτε απλά να προσθέσετε περισσότερους διακομιστές για να λύσετε το πρόβλημα γιατί του «τεράστιου διασυνδεδεμένου συνόλου δεδομένων» του Facebook. Οι νέες συνδέσεις δημιουργούνται συνεχώς λόγω της δραστηριότητας του χρήστη.

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

Πώς λειτουργεί το Facebook; "" Το Back End

Οι υπηρεσίες backend του Facebook είναι γραμμένες σε μια ποικιλία διαφορετικών γλωσσών προγραμματισμού, όπως C ++, Java, Python και Erlang. Η φιλοσοφία τους για τη δημιουργία υπηρεσιών έχει ως εξής:

1. Δημιουργήστε μια υπηρεσία αν χρειαστεί

2. Δημιουργήστε ένα πλαίσιο / σύνολο εργαλείων για ευκολότερη δημιουργία υπηρεσιών

3. Χρησιμοποιήστε τη σωστή γλώσσα προγραμματισμού για την εργασία

Μπορείτε να βρείτε μια λίστα με όλες τις εξελίξεις ανοιχτού κώδικα του Facebook εδώ. Θα συζητήσω μερικά από τα βασικά εργαλεία που έχει αναπτύξει το Facebook.

Thrift (πρωτόκολλο)

Πώς λειτουργεί το Facebook; Τα περικόχλια και τα μπουλόνια [Τεχνολογία εξηγείται] 7 fbΛιτότητα είναι ένα ελαφρύ πλαίσιο κλήσεων απομακρυσμένης διαδικασίας για επεκτάσιμη ανάπτυξη γλωσσικών υπηρεσιών. Η Thrift υποστηρίζει C ++, PHP, Python, Perl, Java, Ruby, Erlang και άλλα. Είναι γρήγορο, εξοικονομεί χρόνο ανάπτυξης και παρέχει καταμερισμό εργασίας σε διακομιστές και εφαρμογές υψηλής απόδοσης.

Scribe (διακομιστής καταγραφής)

Γραφέας είναι ένας διακομιστής για τη συγκέντρωση δεδομένων καταγραφής που μεταδίδονται σε πραγματικό χρόνο από πολλούς άλλους διακομιστές. Είναι ένα επεκτάσιμο πλαίσιο χρήσιμο για την καταγραφή ενός ευρέος φάσματος δεδομένων. Είναι χτισμένο στην κορυφή του Thrift.

Κασσάνδρα (βάση δεδομένων)

πώς λειτουργεί το facebook

Κασσάνδρα είναι ένα σύστημα διαχείρισης βάσεων δεδομένων που έχει σχεδιαστεί για να χειρίζεται μεγάλες ποσότητες δεδομένων που κατανέμονται σε πολλούς διακομιστές. Ενισχύει τη λειτουργία αναζήτησης εισερχομένων του Facebook και παρέχει ένα δομημένο κατάστημα κλειδιών-τιμών με ενδεχόμενη συνέπεια.

HipHop για PHP

HipHop για PHP είναι ένας μετασχηματιστής πηγαίου κώδικα για κώδικα σεναρίου PHP και δημιουργήθηκε για εξοικονόμηση πόρων διακομιστή. Το HipHop μετατρέπει τον πηγαίο κώδικα PHP σε βελτιστοποιημένο C ++. Αφού το κάνει αυτό, χρησιμοποιεί το g ++ για να το μεταγλωττίσει στον κώδικα του μηχανήματος.

συμπέρασμα

Με λίγα λόγια, αυτό είναι το Facebook. Αυτό το άρθρο θα μπορούσε εύκολα να έχει περισσότερες από 37 σελίδες αν ήθελα να αναφερθώ σε περισσότερες λεπτομέρειες, αλλά για να απαντήσω στην ερώτηση «Πώς λειτουργεί το Facebook;» Νομίζω ότι αυτό θα αρκεί. Αν κοιτάξετε πέρα ​​από όλες τις δυνατότητες και τις καινοτομίες, η κύρια ιδέα πίσω από το Facebook είναι πραγματικά πολύ βασική. Το Facebook συνειδητοποιεί τη δύναμη της κοινωνικής δικτύωσης και καινοτομεί συνεχώς για να διατηρήσει τις υπηρεσίες του τις καλύτερες στην επιχείρηση.

Βρήκατε αυτό το άρθρο χρήσιμο; Αφήστε τις σκέψεις, τα σχόλια και τις ιδέες σας παρακάτω!

Ο Steve, κοινοτικός διευθυντής στο VaynerMedia, είναι παθιασμένος με τα μέσα κοινωνικής δικτύωσης και την ανάπτυξη εμπορικών σημάτων.