zoukankan      html  css  js  c++  java
  • 内存缓存memory-cache

    memory-cache 

    A simple in-memory cache for node.js

     

    Installation

    npm install memory-cache --save

    Usage

    var cache = require('memory-cache');
     
    // now just use the cache 
     
    cache.put('foo', 'bar');
    console.log(cache.get('foo'));
     
    // that wasn't too interesting, here's the good part 
     
    cache.put('houdini', 'disappear', 100, function(key, value) {
        console.log(key + ' did ' + value);
    }); // Time in ms 
     
    console.log('Houdini will now ' + cache.get('houdini'));
     
    setTimeout(function() {
        console.log('Houdini is ' + cache.get('houdini'));
    }, 200);
     
     
    // create new cache instance 
    var newCache = new cache.Cache();
     
    newCache.put('foo', 'newbaz');
     
    setTimeout(function() {
      console.log('foo in old cache is ' + cache.get('foo'));
      console.log('foo in new cache is ' + newCache.get('foo'));
    }, 200);

    which should print

    bar
    Houdini will now disappear
    houdini did disappear
    Houdini is null
    foo in old cache is baz
    foo in new cache is newbaz

    API

    put = function(key, value, time, timeoutCallback)

    • Simply stores a value
    • If time isn't passed in, it is stored forever
    • Will actually remove the value in the specified time in ms (via setTimeout)
    • timeoutCallback is optional function fired after entry has expired with key and value passed (function(key, value) {})
    • Returns the cached value

    get = function(key)

    • Retrieves a value for a given key
    • If value isn't cached, returns null

    del = function(key)

    • Deletes a key, returns a boolean specifying whether or not the key was deleted

    clear = function()

    • Deletes all keys

    size = function()

    • Returns the current number of entries in the cache

    memsize = function()

    • Returns the number of entries taking up space in the cache
    • Will usually == size() unless a setTimeout removal went wrong

    debug = function(bool)

    • Turns on or off debugging

    hits = function()

    • Returns the number of cache hits (only monitored in debug mode)

    misses = function()

    • Returns the number of cache misses (only monitored in debug mode)

    keys = function()

    • Returns all the cache keys

    exportJson = function()

    • Returns a JSON string representing all the cache data
    • Any timeoutCallbacks will be ignored

    importJson = function(json: string, options: { skipDuplicates: boolean })

    • Merges all the data from a previous call to export into the cache
    • Any existing entries before an import will remain in the cache
    • Any duplicate keys will be overwritten, unless skipDuplicates is true
    • Any entries that would have expired since being exported will expire upon being imported (but their callbacks will not be invoked)
    • Available options:
      • skipDuplicates: If true, any duplicate keys will be ignored when importing them. Defaults to false.
    • Returns the new size of the cache

    Cache = function()

    • Cache constructor
    • note that require('cache') would return the default instance of Cache
    • while require('cache').Cache is the actual class
  • 相关阅读:
    软件性能测试指标及其注意地方
    Oracle过程及函数的参数模式详解
    【转】Web Service单元测试工具实例介绍之SoapUI
    【转】如何读懂Oracle文档中的语法图
    浅谈session测试
    Cookie管理工具
    php 在linux 用file_exists() 函数判断 另外一台服务器映射过来的文件是否存在 总是返回false
    SecureCRT 设置字体跟颜色
    bootstrat 设置 select option 选项的值
    php 如何把中文写入json中 当json文件中还显示的是中文
  • 原文地址:https://www.cnblogs.com/BlingSun/p/7890074.html
Copyright © 2011-2022 走看看