Skip to content

About

Async Concurrent Hashmap. Unlike Redis it supports multi threading and advanced data structures

Resources

Stars

55 stars

Watchers

2 watching

Forks

Latest commit

 

History

37 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quick-hash-cache

An Async Concurrent Hashmap with LRU Build a blazing fast HashMap Cache structure that can be used for web servers, databases, or other systems with high levels of concurrent access. It improves on the mostly single threaded nature of Redis and supports advanced custom data structures.

Example

use quick_hash_cache::lru::{Evict, LruCache};

#[tokio::main]
async fn main() {
    let cache = LruCache::default();

    for i in 0..20 {
        cache.insert(i, i).await;
    }

    println!("{:?}", cache.get(&2).await);

    let res = cache.evict_many(10, rand::thread_rng()).await;

    assert_eq!(res.len(), 10);

    println!("{:?}", res);
    println!("{} {:?}", cache.size(), cache.get(&0).await);
    println!("{} {:?}", cache.size(), cache.get(&2).await);
}

Methods

hash_builder, hash_and_shard, clear, retain, iter_shards, size, num_shards, try_maybe_contains_hash, contains_hash, contains, remove, insert, get, get_cloned, get_mut, get_or_insert, get_mut_or_insert, get_or_default, get_mut_or_default, batch_read, batch_write

About

Async Concurrent Hashmap. Unlike Redis it supports multi threading and advanced data structures

Resources

Stars

55 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages