Cache - :package: Nothing but Cache.

  •        35

Cache doesn't claim to be unique in this area, but it's not another monster library that gives you a god's power. It does nothing but caching, but it does it well. It offers a good public API with out-of-box implementations and great customization possibilities. Cache utilizes Codable in Swift 4 to perform serialization. Cache is built based on Chain-of-responsibility pattern, in which there are many processing objects, each knows how to do 1 task and delegates to the next one. But that's just implementation detail. All you need to know is Storage, it saves and loads Codable objects.

http://hyper.no
https://github.com/hyperoslo/Cache

Tags
Implementation
License
Platform

   




Related Projects

PINCache - Fast, non-deadlocking parallel object cache for iOS, tvOS and OS X

  •    Objective-C

PINCache is a fork of TMCache re-architected to fix issues with deadlocking caused by heavy use. It is a key/value store designed for persisting temporary objects that are expensive to reproduce, such as downloaded data or the results of slow processing. It is comprised of two self-similar stores, one in memory (PINMemoryCache) and one on disk (PINDiskCache), all backed by GCD and safe to access from multiple threads simultaneously. On iOS, PINMemoryCache will clear itself when the app receives a memory warning or goes into the background. Objects stored in PINDiskCache remain until you trim the cache yourself, either manually or by setting a byte or age limit. Both PINMemoryCache and PINDiskCache use locks to protect reads and writes. PINCache coordinates them so that objects added to memory are available immediately to other threads while being written to disk safely in the background. Both caches are public properties of PINCache, so it's easy to manipulate one or the other separately if necessary.

SPTPersistentCache - Everyone tries to implement a cache at some point in their iOS app’s lifecycle, and this is ours

  •    Objective-C

Everyone tries to implement a cache at some point in their app’s lifecycle, and this is ours. This is a library that allows people to cache NSData with time to live (TTL) values and semantics for disk management.SPTPersistentCache is designed as an LRU cache which makes use of the file system to store files as well as inserting a cache header into each file. This cache header allows us to track the TTL, last updated time, the redundancy check and more. This allows the cache to know how often a file is accessed, when it was made, whether it has become corrupt and allows decisions to be made on whether the cache is stale.

MapDB - Embedded Database Engine

  •    Java

MapDB is an embedded database engine. It provides Maps and other collections backed by disk or memory storage. It offers excellent performance comparable to java collections, but is not limited by GC overhead. It is also a full database engine with storage backends, transactions, cache algorithms, expiration and many other options. MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap memory.

Reservoir - Android library to easily serialize and cache your objects to disk using key/value pairs

  •    Java

Reservoir is a simple library for Android that allows you to easily serialize and cache your objects to disk using key/value pairs. Reservoir uses the internal cache storage allocated to your app. Before you can do anything, you need to initialize Reservoir with the cache size.

Apache Mnemonic - Non-volatile hybrid memory storage oriented library

  •    Java

Apache Mnemonic is a non-volatile hybrid memory storage oriented library, it proposed a non-volatile/durable Java object model and durable computing service that bring several advantages to significantly improve the performance of massive real-time data processing/analytics. developers are able to use this library to design their cache-less and SerDe-less high performance applications.


AFCache - AFCache is an HTTP cache for iOS and OSX seeking towards full RFC2616 compliance

  •    Objective-C

AFCache is an HTTP disk cache for use on iPhone/iPad and OSX. It can be linked as a static library or as a framework. The cache was initially written because on iOS, NSURLCache ignores NSURLCacheStorageAllowed and instead treats it as NSURLCacheStorageAllowedInMemoryOnly which is pretty useless for a persistent cache. Build a fully RFC2616 compliant cache instead of doing simple time-based caching Status: Works for general use, some edge cases might not be compliant/implemented yet.

node-cache-manager - Cache module for Node.JS

  •    Javascript

A cache module for nodejs that allows easy wrapping of functions in cache, tiered caches, and a consistent interface. See the Express.js cache-manager example app to see how to use node-cache-manager in your applications.

Redisson - Redis based In-Memory Data Grid for Java

  •    Java

Redisson - distributed Java objects and services (Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Executor service, Tomcat Session Manager, Scheduler service, JCache API) on top of Redis server. Rich Redis client.

node-cache - A simple in-memory cache for nodejs

  •    Javascript

A simple in-memory cache. put(), get() and del()

AwesomeCache - Delightful on-disk cache (written in Swift)

  •    Swift

Delightful on-disk cache (written in Swift). Backed by NSCache for maximum performance and support for expiry of single objects. AwesomeCache >= 3.0 is designed to have a sync API, making it easy to reason about the actual contents of the cache. This decision has been made based on feedback from the community, to keep the API of AwesomeCache small and easy to use.

Apache Ignite - High performance in-memory data grid

  •    Java

Apache Ignite In-Memory Data Fabric is a high-performance, integrated and distributed in-memory platform for computing and transacting on large-scale data sets in real-time, orders of magnitude faster than possible with traditional disk-based or flash technologies.

Kingfisher - A lightweight, pure-Swift library for downloading and caching images from the web.

  •    Swift

Kingfisher is a lightweight, pure-Swift library for downloading and caching images from the web. This project is heavily inspired by the popular SDWebImage. It provides you a chance to use a pure-Swift alternative in your next app. Kingfisher will download the image from url, send it to both the memory cache and the disk cache, and display it in imageView. When you use the same code later, the image will be retrieved from cache and shown immediately.

go-cache - An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications

  •    Go

go-cache is an in-memory key:value store/cache similar to memcached that is suitable for applications running on a single machine. Its major advantage is that, being essentially a thread-safe map[string]interface{} with expiration times, it doesn't need to serialize or transmit its contents over the network. Any object can be stored, for a given duration or forever, and the cache can be safely used by multiple goroutines.

cache-loader - Caches the result of following loaders on disk

  •    Javascript

Add this loader in front of other (expensive) loaders to cache the result on disk. ⚠️ Note that there is an overhead for saving the reading and saving the cache file, so only use this loader to cache expensive loaders.

TMCache - Fast parallel object cache for iOS and OS X.

  •    Objective-C

⚠️ ⚠️ ⚠️ TMCACHE IS NO LONGER BEING ACTIVELY MAINTAINED. DETAILS HERE. TMCache is a key/value store designed for persisting temporary objects that are expensive to reproduce, such as downloaded data or the results of slow processing. It is comprised of two self-similar stores, one in memory (TMMemoryCache) and one on disk (TMDiskCache), all backed by GCD and safe to access from multiple threads simultaneously. On iOS, TMMemoryCache will clear itself when the app receives a memory warning or goes into the background. Objects stored in TMDiskCache remain until you trim the cache yourself, either manually or by setting a byte or age limit.

Ehcache

  •    Java

Ehcache is an open source, standards-based cache used to boost performance, offload the database and simplify scalability. Ehcache is robust, proven and full-featured and this has made it the most widely-used Java-based cache.

Clean-Me - A small macOS app that acts as a system cleaner (logs, cache, ...)

  •    Swift

I do NOT recommend you to delete ALL of your cache (or cache of some specific programs). Cache files is what makes your program load faster and preform tasks faster. If you delete it, your program will not only start slower, but will REGENERATE the cache files again. This will NOT save you some precious space on your disk. But if you do have a problem and want to delete the cache of some programs, I suggest you to click on the folder icon and search for that program and delete it this way. If you have large log files, then you can delete these but first check the log files. A large log file mostly indicates that a problem (or your system) really has some problems.

FastImageCache - iOS library for quickly displaying images while scrolling

  •    Objective-C

Fast Image Cache is an efficient, persistent, and—above all—fast way to store and retrieve images in your iOS application. Part of any good iOS application's user experience is fast, smooth scrolling, and Fast Image Cache helps make this easier. A significant burden on performance for graphics-rich applications like Path is image loading. The traditional method of loading individual images from disk is just too slow, especially while scrolling. Fast Image Cache was created specifically to solve this problem.

VelocityNuke

  •    

This project is a DotNetNuke Cache Provider supporting the newly announced Velocity cache platform from Microsoft. “Velocity” is a distributed in-memory application cache platform for developing scalable, available, and high-performance applications. “Velocity” fuses memory a...

gcache - Cache library for golang. It supports expirable Cache, LFU, LRU and ARC.

  •    Go

Cache library for golang. It supports expirable Cache, LFU, LRU and ARC.Supports expirable Cache, LFU, LRU and ARC.