This library provides a layer to replicate commands on key value stores.
All the read (get
, getTtl
, has
) operations run only on the source adapter, others on both.
Check out the abstract library to see the other adapters and the Api.
Install it through composer.
{
"require": {
"adammbalogh/key-value-store-replicator": "@stable"
}
}
tip: you should browse the adammbalogh/key-value-store-replicator
page to choose a stable version to use, avoid the @stable
meta constraint.
<?php
use AdammBalogh\KeyValueStore\KeyValueStore;
use AdammBalogh\KeyValueStore\Adapter\MemcachedAdapter;
use AdammBalogh\KeyValueStore\Adapter\RedisAdapter;
use AdammBalogh\KeyValueStore\Adapter\ReplicatorAdapter;
$sourceAdapter = new MemcachedAdapter(new Memcached());
$replicaAdapter = new RedisAdapter(new Predis\Client());
$adapter = new ReplicatorAdapter($sourceAdapter, $replicaAdapter);
$kvs = new KeyValueStore($adapter);
$kvs->set('sample_key', 'Sample value');
$kvs->get('sample_key');
$kvs->delete('sample_key');
Please visit the API link in the abstract library.
Key | Value | Server |
---|---|---|
✔ delete | ✔ get | ✔ flush |
✔ expire | ✔ set | |
✔ getTtl | ||
✔ has | ||
✔ persist |