Facebook stellt intern genutzte C++-Bibliothek bereit
Die Komponenten der jetzt quelloffenen C++-Bibliothek Folly kommen bei Facebook vor allem im Umfeld hochperformanter serverseitiger Anwendungen zum Einsatz.
- Alexander Neumann
Auf einer eigenen C++-Konferenz hat das soziale Netzwerk Facebook eine C++-Bibliothek als Open-Source-Software veröffentlicht, deren wiederverwendbare Komponenten innerhalb der Infrastruktur zum Betreiben des Netzes zum Einsatz kommen. Folly – so der aus Facebook Open Source Library hervorgegangene Name – umfasst zum Auftakt rund 50 auf C++11 beruhende Softwarekomponenten, die Facebook auf der Hosting-Plattform GitHub zum Download bereit gestellt hat. Diese werden bei Facebook vor allem im Umfeld hochperformanter serverseitiger Anwendungen eingesetzt. Weitere Komponenten sollen anscheinend folgen.
Die einzelnen Softwareteile sind offenbar lose miteinander verbunden, weswegen sich auch nur einzelne Bestandteile nutzen lassen. Dabei sollen diese sich laut Facebook-Ingenieur Jordan DeLong schneller verhalten als vergleichbare Techniken der C++-Bibliotheken Boost oder STL (Standard Template Library). Einige Komponenten gehen Aspekte wie die effizientere Speicherausnutzung an, andere weiter gefasste Aufgaben, etwa die In-Memory-Bibliothek im Umgang mit JSON (JavaScript Object Notation) oder die Bibliothek zum Formatieren von Zeichenketten.
Schon frĂĽher hatte Facebook andere Komponenten seiner internen Software quelloffen zur VerfĂĽgung gestellt, etwa mit HipHop for PHP einen Compiler, der PHP-Code in C++ umwandelt, die Codegenerierungs-Engine Thrift und die NoSQL-Datenbank Cassandra. Zum Betreiben ihrer Webseiten greifen die Betreiber des sozialen Netzes darĂĽber hinaus massiv auf Open-Source-Software wie MySQL, PHP und memcached zurĂĽck.
[Update 4. Juni, 11:15 Uhr]
Der Quellcode der Folly-Bibliothek steht unter der Apache Software Licence 2.0.
(ane)