Werbung

Wie funktioniert Facebook? The Nuts and Bolts [Technologie erklärt] 0 Intro FacebookSocial Networking ist die Kunst, sich mit Menschen zu verbinden, die gemeinsame Interessen teilen. Ihr „Netzwerk“ ist eine Community, die Sie mit anderen verbindet und viele Vorteile bietet. Die Vernetzung über Social-Media-Websites hat die Nutzung des Internets revolutioniert und steht an der Spitze dessen, was wir heute als Web 2.0 bezeichnen.

Facebook ist soziales Netzwerk. Die Leute "facebooken" sich seit ungefähr 6 Jahren gegenseitig und machen Facebook Das meistgenutzte soziale Netzwerk mit über 350 Millionen Nutzern weltweit. Aber wie funktioniert Facebook?

In diesem Artikel werde ich das Innenleben von Facebook diskutieren und es behandeln die Architektur und Frontend / Backend-Infrastruktur “” die Muttern und Bolzen, die Facebook zusammenhalten.

Wie funktioniert Facebook? “„ Das Frontend

Facebook verwendet eine Vielzahl von Diensten, Tools und Programmiersprachen, um seine Kerninfrastruktur zu bilden. Am Frontend führen ihre Server einen LAMP-Stack (Linux, Apache, MySQL und PHP) mit Memcache aus. Kein Informatikexperte? Schauen wir uns genau an, was das bedeutet.

instagram viewer

Linux & Apache

Wie funktioniert Facebook?

Dieser Teil ist ziemlich selbsterklärend. Linux ist ein Unix-ähnlicher Computer-Betriebssystem-Kernel. Es ist Open Source, sehr anpassbar und gut für die Sicherheit. Facebook führt das Linux-Betriebssystem auf Apache-HTTP-Servern aus. Apache ist ebenfalls kostenlos und der beliebteste verwendete Open Source-Webserver.

MySQL

Wie funktioniert Facebook?

Für die Datenbank verwendet Facebook MySQL aufgrund seiner Geschwindigkeit und Zuverlässigkeit. MySQL wird hauptsächlich als Schlüsselwertspeicher verwendet, da Daten zufällig auf eine große Anzahl logischer Instanzen verteilt werden. Diese logischen Instanzen sind auf physische Knoten verteilt, und der Lastausgleich erfolgt auf der Ebene der physischen Knoten.

In Bezug auf Anpassungen hat Facebook ein benutzerdefiniertes Partitionierungsschema entwickelt, bei dem allen Daten eine globale ID zugewiesen wird. Sie verfügen außerdem über ein benutzerdefiniertes Archivierungsschema, das darauf basiert, wie häufig und aktuell Daten pro Benutzer sind. Die meisten Daten werden zufällig verteilt.

PHP

Wie funktioniert Facebook?

Facebook verwendet PHP, weil es eine gute Webprogrammiersprache mit umfassender Unterstützung und einer aktiven Entwicklergemeinschaft ist und sich für eine schnelle Iteration eignet. PHP ist eine dynamisch typisierte / interpretierte Skriptsprache.

Memcache

wie Facebook funktioniert

Memcache ist ein Speicher-Caching-System, das verwendet wird, um dynamische datenbankgesteuerte Websites (wie Facebook) zu beschleunigen, indem Daten und Objekte im RAM zwischengespeichert werden, um die Lesezeit zu verkürzen. Memcache ist die primäre Form des Zwischenspeicherns bei Facebook und hilft, die Datenbanklast zu verringern.

Mit einem Caching-System kann Facebook so schnell sein wie beim Abrufen Ihrer Daten. Wenn es nicht in die Datenbank gehen muss, werden Ihre Daten nur anhand Ihrer Benutzer-ID aus dem Cache abgerufen.

Nachteile der Verwendung von LAMP

Facebook hat erkannt, dass die Verwendung des LAMP-Stacks Nachteile hat. Insbesondere ist PHP nicht unbedingt für große Websites optimiert und daher schwer zu skalieren. Außerdem ist es nicht die am schnellsten ausgeführte Sprache und das Erweiterungsframework ist schwierig zu verwenden.

wie Facebook funktioniert

Mike Schroepfer, Vice President of Engineering bei Facebook, hat kürzlich ein Interview bei geführt EmTech @ MIT diesbezüglich. "Das Skalieren einer Website ist eine Herausforderung", sagte Schroepfer, "aber das Skalieren eines sozialen Netzwerks birgt einzigartige Herausforderungen."

Im Gegensatz zu anderen Websites können Sie nicht einfach weitere Server hinzufügen, um das Problem zu lösen, da von Facebooks "riesigem, miteinander verbundenem Datensatz". Aufgrund von Benutzeraktivitäten werden ständig neue Verbindungen erstellt.

Facebook ist so schnell gewachsen, dass sie häufig mit Problemen in Bezug auf Datenbankabfragen, Caching und Speicherung von Daten konfrontiert sind. Ihre Datenbank ist riesig und weitgehend komplex. Um dies zu berücksichtigen, hat Facebook viele Open-Source-Projekte und Backend-Dienste gestartet.

Wie funktioniert Facebook? “„ Das Backend

Die Backend-Dienste von Facebook sind in verschiedenen Programmiersprachen geschrieben, darunter C ++, Java, Python und Erlang. Ihre Philosophie für die Schaffung von Dienstleistungen lautet wie folgt:

1. Erstellen Sie einen Service wenn benötigt

2. Erstellen Sie ein Framework / Toolset zur einfacheren Erstellung von Services

3. Verwenden Sie die richtige Programmiersprache für die Aufgabe

Eine Liste aller Open Source-Entwicklungen von Facebook finden Sie hier. Ich werde einige der wesentlichen Tools diskutieren, die Facebook entwickelt hat.

Sparsamkeit (Protokoll)

Wie funktioniert Facebook? Die Muttern und Bolzen [Technologie erklärt] 7 fb SparsamkeitSparsamkeit ist ein leichtes Framework für Remoteprozeduraufrufe für die skalierbare Entwicklung sprachübergreifender Dienste. Thrift unterstützt C ++, PHP, Python, Perl, Java, Ruby, Erlang und andere. Es ist schnell, spart Entwicklungszeit und bietet eine Arbeitsteilung auf Hochleistungsservern und -anwendungen.

Schreiber (Protokollserver)

Schreiber ist ein Server zum Aggregieren von Protokolldaten, die von vielen anderen Servern in Echtzeit gestreamt werden. Es ist ein skalierbares Framework, das zum Protokollieren einer Vielzahl von Daten nützlich ist. Es ist auf Thrift gebaut.

Cassandra (Datenbank)

wie Facebook funktioniert

Kassandra ist ein Datenbankverwaltungssystem, das für die Verarbeitung großer Datenmengen ausgelegt ist, die auf viele Server verteilt sind. Es unterstützt die Posteingangssuche von Facebook und bietet einen strukturierten Schlüsselwertspeicher mit eventueller Konsistenz.

HipHop für PHP

HipHop für PHP ist ein Quellcode-Transformator für PHP-Skriptcode und wurde erstellt, um Serverressourcen zu sparen. HipHop wandelt PHP-Quellcode in optimiertes C ++ um. Danach wird es mit g ++ zu Maschinencode kompiliert.

Fazit

Kurz gesagt, das ist Facebook. Dieser Artikel könnte leicht 37 Seiten länger sein, wenn ich näher darauf eingehen würde, aber um die Frage „Wie funktioniert Facebook?“ Zu beantworten, denke ich, dass dies ausreichen wird. Wenn Sie über alle Funktionen und Innovationen hinausblicken, ist die Hauptidee hinter Facebook wirklich sehr einfach, um die Menschen in Verbindung zu halten. Facebook erkennt die Macht der sozialen Netzwerke und arbeitet ständig an Innovationen, um seinen Service so gut wie möglich im Geschäft zu halten.

Fanden Sie diesen Artikel hilfreich? Hinterlassen Sie Ihre Gedanken, Kommentare und Ideen unten!

Steve, Community Manager bei VaynerMedia, ist begeistert von Social Media und Markenbildung.