@keyv/memcache
Table of Contents
Memcache storage adapter for Keyv
Install
npm install --save @keyv/memcache
Usage
import Keyv from 'keyv';
import KeyvMemcache from '@keyv/memcache';
const memcache = new KeyvMemcache('user:pass@localhost:11211');
const keyv = new Keyv({ store: memcache });
//set
await keyv.set("foo","bar", 6000) //Expiring time is optional
//get
const obj = await keyv.get("foo");
//delete
await keyv.delete("foo");
//clear
await keyv.clear();
Usage with Namespaces
import Keyv from 'keyv';
import KeyvMemcache from '@keyv/memcache';
const memcache = new KeyvMemcache('user:pass@localhost:11211');
const keyv1 = new Keyv({ store: memcache, namespace: "namespace1" });
const keyv2 = new Keyv({ store: memcache, namespace: "namespace2" });
//set
await keyv1.set("foo","bar1", 6000) //Expiring time is optional
await keyv2.set("foo","bar2", 6000) //Expiring time is optional
//get
const obj1 = await keyv1.get("foo"); //will return bar1
const obj2 = await keyv2.get("foo"); //will return bar2
Works with Memcached, Memcachier, Redislabs, and Google Cloud
Using Memcached
- Install Memcached and start an instance
//set the server to the correct address and port
const server = "localhost:11211"
const Keyv = require("keyv");
const KeyvMemcache = require("@keyv/memcache");
const memcache = new KeyvMemcache(server);
const keyv = new Keyv({ store: memcache});
Using Memcachier
- Go to https://www.memcachier.com and signup
- Create a cache and setup where.
- In the screen take the username, password, and url and place it into your code:
//best practice is to not hard code your config in code.
const user = "";
const pass = "";
const server = "XXX.XXX.XXX.memcachier.com:11211"
const Keyv = require("keyv");
const KeyvMemcache = require("@keyv/memcache");
const memcache = new KeyvMemcache(user +":"+ pass +"@"+ server);
const keyv = new Keyv({ store: memcache});
Using Redislabs Memcache Protocol
- Go to https://www.redislabs.com and signup
- Create a database and make sure to set the
Protocol
to memcached - In the screen take the username, password, and
endpoint
(the server) and place it into your code:
//best practice is to not hard code your config in code.
const user = "";
const pass = "";
const server = "XXX.XXX.XXX.XXX.cloud.redislabs.com:XXX"
const Keyv = require("keyv");
const KeyvMemcache = require("@keyv/memcache");
const memcache = new KeyvMemcache(user +":"+ pass +"@"+ server);
const keyv = new Keyv({ store: memcache});
Using Google Cloud
- Go to https://cloud.google.com/ and sign up.
- Go to the memcached configuration page in the google cloud console by navigating to Memorystore > Memcached.
- On the memcached page (Eg. https://console.cloud.google.com/memorystore/memcached/instances?project=example), Click Create Instance
- Fill in all mandatory fields as needed. You will need to set up a private service connection.
- To set up a private service connection, click the Set Up Connection button.
- Once required fields are complete, click the Create button to create the instance.
- Google provides further documentation for connecting to and managing your Memecached instance here.
import Keyv from 'keyv';
import KeyvMemcache from '@keyv/memcache';
const memcache = new KeyvMemcache("insert the internal google memcached discovery endpoint");
const keyv = new Keyv({ store: memcache});