[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#945080: ITP: golang-github-dgraph-io-ristretto -- A high performance memory-bound Go cache



Package: wnpp
Severity: wishlist
Owner: Andreas Henriksson <andreas@fatal.se>

* Package name    : golang-github-dgraph-io-ristretto
  Version         : 0.0~git20191108.8d6a8a7-1
  Upstream Author : Dgraph
* URL             : https://github.com/dgraph-io/ristretto
* License         : Apache-2.0
  Programming Lang: Go
  Description     : A high performance memory-bound Go cache


 Ristretto is a fast, concurrent cache library built with a focus on
 performance and correctness.
 .
 The motivation to build Ristretto comes from the need for a
 contention-free cache in Dgraph (https://github.com/dgraph-io/dgraph).
 .
 Features:
  * High Hit Ratios - with our unique admission/eviction policy
    pairing, Ristretto's performance is best in class.
  * Eviction: SampledLFU - on par with exact LRU and better performance
    on Search and Database traces.
  * Admission: TinyLFU - extra performance with little memory overhead
    (12 bits per counter).
  * Fast Throughput - we use a variety of techniques for managing
    contention and the result is excellent throughput.
  * Cost-Based Eviction - any large new item deemed valuable can evict
    multiple smaller items (cost could be anything).
  * Fully Concurrent - you can use as many goroutines as you want with
    little throughput degradation.
  * Metrics - optional performance metrics for throughput, hit ratios,
    and other stats.
  * Simple API - just figure out your ideal Config values and you're off
    and running.Status Ristretto is usable but still under active
    development. We expect it to be production ready in the near future.

This is a dependency of garagemq a.k.a. kubemq.io


Reply to: