λογισμικό

Γνώση Υπολογιστών >> λογισμικό >  >> Twitter

Τι διακομιστή χρησιμοποιεί το Twitter;

Το Twitter χρησιμοποιεί μια πολύπλοκη και κατανεμημένη υποδομή, αλλά εδώ είναι μια κατανομή μερικών από τις τεχνολογίες των βασικών διακομιστών που βασίζονται:

* backend: Χρησιμοποιούν κατά κύριο λόγο τη στοίβα με βάση την JVM.

* Java, Scala και Kotlin: Αυτές είναι οι κύριες γλώσσες προγραμματισμού.

* finagle: Ένα σύστημα RPC ανεκτικής σε σφάλματα, πρωτόκολλο-Agnostic RPC για την κατασκευή διακομιστών υψηλής συγκέντρωσης.

* mesos: Ένας διαχειριστής συμπλέγματος ανοιχτού κώδικα που χρησιμοποιείται για την αφηρημένη CPU, τη μνήμη, την αποθήκευση και άλλους υπολογιστικούς πόρους μακριά από τα μηχανήματα.

* Thrift: Ένα πλαίσιο για την κλιμακωτή ανάπτυξη των υπηρεσιών διασταυρούμενης γλώσσας.

* Αποθήκευση δεδομένων:

* mysql: Χρησιμοποιείται για πολλή αποθήκευση βασικών δεδομένων. Ωστόσο, λόγω της κλίμακας του Twitter, είναι έντονα θορυβώδη τις βάσεις δεδομένων MySQL.

* Cassandra: Μια βάση δεδομένων NOSQL που χρησιμοποιείται για αποθήκευση και ανάκτηση δεδομένων υψηλής όγκου, υψηλής ταχύτητας.

* hadoop/hdfs: Χρησιμοποιείται για επεξεργασία και ανάλυση δεδομένων μεγάλης κλίμακας.

* memcached: Ένα κατανεμημένο σύστημα προσωρινής αποθήκευσης αντικειμένων μνήμης που χρησιμοποιείται για την επιτάχυνση της πρόσβασης σε δεδομένα που ζητούνται συχνά.

* redis: Ένα κατάστημα δομής δεδομένων εντός μνήμης, που χρησιμοποιείται ως βάση δεδομένων, cache και μεσίτης μηνυμάτων.

* Διακομιστές ιστού:

* nginx: Ένας δημοφιλής και υψηλής απόδοσης διακομιστή ιστού και αντίστροφος πληρεξούσιος που χρησιμοποιείται για τη διαχείριση της εισερχόμενης κυκλοφορίας ιστού.

* ουρές μηνυμάτων:

* kafka: Μια κατανεμημένη πλατφόρμα ροής για την κατασκευή αγωγών δεδομένων σε πραγματικό χρόνο και εφαρμογές ροής. Χρησιμοποιείται για τη διαχείριση του μαζικού ρεύματος tweets και άλλων γεγονότων.

* Αναζήτηση:

* Lucene/Elasticsearch: Powers λειτουργικότητα αναζήτησης Twitter.

Σημαντικές εκτιμήσεις:

* Αρχιτεκτονική μικροεπιχειρήσεων: Το Twitter είναι χτισμένο ως συλλογή μικροεπιχειρήσεων, που σημαίνει ότι έχουν πολλές ανεξάρτητες, μικρότερες εφαρμογές που συνεργάζονται. Κάθε microservice μπορεί να χρησιμοποιεί διαφορετικές τεχνολογίες που ταιριάζουν καλύτερα για τον συγκεκριμένο σκοπό της.

* Προσαρμοσμένες λύσεις: Στην κλίμακα τους, το Twitter πιθανότατα έχει αναπτύξει και προσαρμόσει πολλά από τα δικά τους εσωτερικά εργαλεία και συστήματα για να αντιμετωπίσει τις συγκεκριμένες ανάγκες τους.

* υποδομή σύννεφων: Ενώ το Twitter ιστορικά έτρεξε πολλές από τις δικές του υποδομές, εκμεταλλεύονται ολοένα και περισσότερο τους παρόχους σύννεφων όπως το Google Cloud Platform (GCP) και το Amazon Web Services (AWS) για ορισμένες από τις υπηρεσίες τους.

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα