Moteur de mise en cache enfichable pour créer et faire évoluer des services de cache hautes performances. Voir www.cachelib.org pour la documentation et plus d'informations.
CacheLib est une bibliothèque C++ fournissant un mécanisme de mise en cache hautes performances en cours de processus. CacheLib fournit une API thread-safe pour créer des services de mise en cache à haut débit et à faible surcharge, avec la capacité intégrée d'exploiter la mise en cache DRAM et SSD de manière transparente.
CacheLib fournit un CacheBench
exécutable autonome qui peut être utilisé pour évaluer les performances des plates-formes heuristiques et matérielles de mise en cache par rapport aux charges de travail de production. De plus, CacheBench
permet la mise en œuvre de tests de résistance et les modifications de conception de CacheLib pour détecter les problèmes d'exactitude et de performances.
Voir CacheBench pour plus de détails et d'exemples d'utilisation.
CacheLib a un seul numéro de version facebook::cachelib::kCachelibVersion
qui peut être localisé dans CacheVersion.h. Ce numéro de version doit être incrémenté lorsque des modifications incompatibles sont introduites. Une modification est incompatible si elle peut entraîner une complication en raison de la suppression de l'API publique ou si elle nécessite la suppression du cache. Des détails sur les informations de compatibilité lorsque le numéro de version augmente peuvent être trouvés dans le journal des modifications.
CacheLib fournit un script de construction qui prépare et installe toutes les dépendances et prérequis, puis construit CacheLib. Le script de build a été testé pour fonctionner sur CentOS 8, Ubuntu 18.04 et Debian 10.
git clone https://github.com/facebook/CacheLib
cd CacheLib
./contrib/build.sh -d -j -v
# The resulting library and executables:
./opt/cachelib/bin/cachebench --help
La réexécution de ./contrib/build.sh
mettra à jour CacheLib et ses dépendances vers leurs dernières versions et les reconstruira.
Voir build pour plus de détails sur le processus de construction et d'installation.
Nous serions ravis d'avoir votre aide pour améliorer CacheLib. Si vous êtes intéressé, veuillez lire notre guide pour contribuer
CacheLib est sous licence Apache , comme indiqué dans le fichier LICENSE.
Veuillez ne pas ouvrir de problèmes GitHub ni de demandes d'extraction - cela rend le problème immédiatement visible par tout le monde, y compris les acteurs malveillants. Les problèmes de sécurité dans CacheLib peuvent être signalés en toute sécurité via le programme Whitehat Bug Bounty de Facebook :
https://www.facebook.com/whitehat
L'équipe de sécurité de Facebook triera votre rapport et déterminera s'il est éligible ou non à une prime dans le cadre de notre programme.
En cliquant sur un badge, vous verrez les versions récentes de ce système d'exploitation. Si la version de votre système d'exploitation cible échoue, vous pouvez consulter la dernière version. Si la version est trop obsolète pour vous, vous souhaiterez peut-être vérifier les problèmes récents et les PR pour connaître les solutions de contournement connues.