Motivation de sa création
- Parmi les bibliothèques de cache pour Go, il n’existe pas de véritable solution sans contention. La plupart ne sont guère plus que des maps avec mutex et politique d’éviction
- Elles n’atteignent donc pas la vitesse des caches d’autres langages (par ex. Caffeine)
- Ristretto, le cache le plus rapide de Dgraph Labs, était jusqu’à 30 % plus rapide que ses concurrents (Otter est bien plus rapide), mais son hit ratio n’était pas bon
- Dans les applications réelles, cela peut poser problème, car on ne veut pas que les performances de la bibliothèque de cache deviennent un goulot d’étranglement
- C’est ce qui a conduit à vouloir créer le cache le plus rapide et le plus simple à utiliser
Fonctionnalités principales
- API simple : il suffit de définir les paramètres souhaités dans le Builder puis de l’utiliser
- Configuration automatique : la configuration se fait automatiquement en fonction des capacités de parallélisme de l’application
- Génériques : tout type comparable peut être utilisé en toute sécurité comme clé, et tout type peut être utilisé comme valeur
- TTL : les valeurs expirées sont automatiquement supprimées du cache
- Éviction basée sur le coût : prise en charge de l’éviction selon le coût de chaque élément
- Débit exceptionnel : il s’agit actuellement de la bibliothèque de cache la plus rapide, devant largement les solutions concurrentes (Theine, Ristretto, Bigcache, Fastcache)
- Excellent hit ratio : elle utilise le nouvel algorithme S3-FIFO, qui montre d’excellents résultats
1 commentaires
Le nom me disait vaguement quelque chose, alors j’ai cherché et il y avait ça.
Otter : un modèle multimodal capable d’ajuster des instructions en contexte
À ce stade, il vaudrait peut-être mieux arrêter de créer des choses avec des noms d’animaux. Sauf si c’est vraiment très rare, la plupart existent déjà.
L’avis de l’analyse IA était pas mal aussi, donc je l’ajoute.
L’avis de GN⁺