- Serveur de cache à très faible latence et haute efficacité, écrit en C et fonctionnant comme un binaire unique, conçu pour les environnements Linux et macOS 64 bits
- Prend en charge les protocoles HTTP, Memcache, RESP (Valkey/Redis) et Postgres Wire, ce qui permet d’utiliser directement diverses bibliothèques clientes et CLI existantes
- Peut être exécuté comme processus serveur ou intégré directement dans une application existante sous forme d’embarqué via un unique fichier source C (
pogocache.c)
- Sur le même matériel, utilise une latence de requête plus faible et moins de cycles CPU que Redis, Valkey, Dragonfly, Garnet et Memcache, avec une montée en charge évolutive du mono-thread au multicœur
- Propose de nombreuses options d’exploitation, de sécurité et de tuning — TLS/jetons d’authentification, fichiers de persistance, plafond mémoire et politiques d’éviction, sharding et paramètres détaillés de hashmap — et peut aussi être lancé immédiatement via une image Docker
- Atteint une faible surcharge grâce à une hashmap shardée à fort fan-out basée sur le hachage Robin Hood, des spinlocks légers, une file d’événements (epoll/kqueue) et io_uring en option, ce qui en fait une option intéressante pour améliorer le coût et l’efficacité énergétique d’une infrastructure de cache
5 commentaires
Waouh ; c'est vraiment impressionnant, ce truc..
Les performances sont dingues ; c'est écrasant, de fou
À chaque fois que quelque chose sort avec les titres « faible latence » et « haute efficacité »,
ça finit par ressembler à des termes marketing.
J’ai l’impression que cela varie selon la personne qui en parle. Les bibliothèques créées par cette personne sont, pour la plupart, vraiment rapides.
Du point de vue d’un nouvel acteur open source, j’ai l’impression que si ce genre d’éléments n’y figure pas, personne ne le choisira.
Je pense aussi qu’on n’y peut rien, car même le choix des logiciels open source est entré dans une logique de concurrence, donc j’ai repris tel quel le contenu du dépôt, snif