Crate forceps[−][src]
forceps
is a crate that provides a simple and easy-to-use on-disk cache/database.
This crate is intended to be used with the tokio
runtime.
This crate is designed to be thread-safe, performant, and asyncronous for use in HTTP servers
and other network applications. Because of it’s use-case, it is optimized for workloads that
include many cache HIT
s as compared to MISS
es.
It was originally designed to be used in scalpel
,
the MD@Home implementation for the Rust language.
Features
- Asynchronous APIs
- Fast and reliable reading/writing
- Tuned for large-file databases
- Easily accessible value metadata
- Optimized for cache
HIT
s - Easy error handling
Examples
use forceps::CacheBuilder; let cache = CacheBuilder::new("./cache") .build() .await .unwrap(); cache.write(b"MY_KEY", b"Hello World").await.unwrap(); let data = cache.read(b"MY_KEY").await.unwrap(); assert_eq!(&data, b"Hello World");
Structs
Cache | The main component of |
CacheBuilder | A builder for the |
Metadata | Metadata information about a certain entry in the cache |
Enums
ForcepError | Global error type for the |
Type Definitions
Error | Re-export of |
Md5Bytes | Type definition for an array of bytes that make up an |
Result | Result that is returned by all error-bound operations of |