Socket
Socket
Sign inDemoInstall

async-disk-cache

Package Overview
Dependencies
25
Maintainers
3
Versions
25
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    async-disk-cache

Async disk cache


Version published
Weekly downloads
451K
decreased by-32.39%
Maintainers
3
Install size
1.47 MB
Created
Weekly downloads
 

Readme

Source

async-disk-cache Build status Build Status

An async disk cache. inspired by jgable/cache-swap

A sync sibling version is also available: stefanpenner/sync-disk-cache

By default, this will usge TMPDIR/<username>/ for storage, but this can be changed by setting the $TMPDIR environment variable.

Example

var Cache = require('async-disk-cache');
var cache = new Cache('my-cache');
// 'my-cache' also serves as the global key for the cache.
// if you have multiple programs with this same `cache-key` they will share the
// same backing store. This by design.

// checking
cache.has('foo').then(function(wasFooFound) {

});

// retrieving (cache hit)
cache.get('foo').then(function(cacheEntry) {
  cacheEntry === {
    isCached: true,
    key: 'foo',
    value: 'content of foo'
  }
});

// retrieving (cache miss)
cache.get('foo').then(function(cacheEntry) {
  cacheEntry === {
    isCached: false,
    key: 'foo',
    value: undefined
  }
});

// setting
cache.set('foo', 'content of foo').then(function() {
  // foo was set
});

// clearing one entry from the cache
cache.remove('foo').then(function() {
  // foo was removed
})

// clearing the whole cache
cache.clear().then(function() {
  // cache was cleared
})

Enable compression:

var Cache = require('async-disk-cache');
var cache = new Cache('my-cache', {
  compression: 'gzip' | 'deflate' | 'deflateRaw', // basically just what nodes zlib's ships with
  supportBuffer: 'true' | 'false' // add support for file caching (default `false`)
})

HELP!...my TMP dir is growing unbounded!

description

In general most OS distributions come with cron like tasks, which purge unused files in $TMPDIR. For example, ubuntu typically uses tmpreaper and macOS uses various tasks in /etc/periodic/*.

options

If your OS distribution does not provide such a cleanup mechanism:

a) We stronglly recommend utilizing one, as other sync-disk-cache is not alone in rely on this behavior b) If that is not possible, we recommend changing your $TMPDIR to something project specific and manually purging it.

License

Licensed under the MIT License, Copyright 2015 Stefan Penner

Keywords

FAQs

Last updated on 24 Jun 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc