Nested Parenthetical Madness

    trailpack-cache

    3.0.0 • Public • Published

    trailpack-cache

    Gitter NPM version NPM downloads Build status Dependency Status Code Climate

    📦 Cache Trailpack

    Install

    With yeoman :

    npm install -g yo generator-trails
    yo trails:trailpack trailpack-cache

    With npm (you will have to create config file manually) :

    $ npm install --save trailpack-cache

    Configure

    // config/main.js
    module.exports = {
      packs: [
        // ... other trailpacks
        require('trailpack-cache')
      ]
    }

    Configuration

    const mongoStore = require('cache-manager-mongodb')
    const redisStore = require('cache-manager-redis')
    // config/caches.js
    module.exports = {
      stores: [
      // Example for redis Store
      {
        name: 'my-redis-store',
        store: redisStore,
        host: 'localhost',
        auth_pass: ''
        db: 0,
        ttl: 600 // Default TTL
      },
      // Example for memory store
      {
        name: 'memory-store',
        store: 'memory',
        max: 100,
        ttl: 60
      },
      // Example for mongo store
      {
        name: 'mongo-store',
        store: mongoStore,
        options: {
          host: 'localhost',
          port: '27017',
          username: 'username',
          password: 'password',
          database: 'mymondodb',
          collection: 'cacheManager',
          compression: false,
          poolSize: 5,
          auto_reconnect: true
          ttl: 60
        }
      }],
    
      defaults: ['memory-store']
    }
    

    For more information about store (type and configuration) please see the cache-manager documentation.

    Usage

      const myDefaultCache = this.app.services.CacheService.getStore() // Return the first store into defaults config
      myDefaultCache.set('mystoreddata', 'testValue', {ttl: 10}).then(result => {
      return myDefaultCache.get('mystoreddata').then(result => {
            console.log(result)
            // >> 'testValue'
            return myDefaultCache.del('mystoreddata')
        })
      })
     

    You can retrieve a specific store by name like this: const myMongoCache = this.app.services.CacheService.getStore('mongo-store')

    You can retrieve a multi caching store like this (without parameters to get multi caching with defaults stores): const myMongoCache = this.app.services.CacheService.getMultiCachingStore(['memory-store', 'mongo-store'])

    Contributing

    We love contributions! Please check out our Contributor's Guide for more information on how our projects are organized and how to get started.

    License

    MIT

    Install

    npm i trailpack-cache

    DownloadsWeekly Downloads

    10

    Version

    3.0.0

    License

    MIT

    Last publish

    Collaborators

    • avatar
    • avatar