A Memcached like interface to Riak
Project description
A Memcached like interface to the Riak HTTP Client. Read The Docs
Installing
From PyPI
pip install riakcached
From Git
git clone git://github.com/brettlangdon/riakcached.git
cd ./riakcached
pip install -r requirements.txt
python setup.py install
Usage
Basic Usage
from riakcached.clients import RiakClient
client = RiakClient("my_bucket")
client.set("hello", "world")
print client.get("hello")
# 'hello'
client.delete("hello")
print client.get("hello")
# None
values = {
"hello": "world",
"foo": "bar",
}
client.set_many(values)
keys = ["hello", "foo", "test"]
print client.get_many(keys)
# {'foo': 'bar', 'hello': 'world'}
client.close()
Connection Pool Settings
from riakcached.clients import RiakClient
from riakcached.pools import Urllib3Pool
pool = Urllib3Pool(base_url="http://my-host.com:8098/", timeout=1)
client = RiakClient("my_bucket", pool=pool)
client.get("foo")
Custom Connection Pool
from riakcached.clients import RiakClient
from riakcache.pools import Pool
class CustomPool(Pool):
__slots__ = ["connection"]
def connect(self):
self.connection = make_a_connection()
def close(self):
if self.connection:
close_connection(self.connection)
def request(self, method, url, body=None, headers=None):
results = make_request(self.connection, method, url, body, headers, timeout=self.timeout)
return results.status, results.data, results.headers
custom_pool = CustomPool(base_url="http://my-host.com:8098", timeout=1)
client = RiakClient("my_bucket", pool=pool)
Threaded Client
The exists a riakcached.clients.ThreadedRiakClient which inherits from riakcached.clients.RiakClient and which uses threading to try to parallelize calls to get_many, set_many and delete_many.
Documentation
The documentation can be found in the /docs directory in this repository and should be fairly complete for the codebase.
Building Documentation
git clone git://github.com/brettlangdon/riakcached.git
cd riakcached
pip install -r docs-requirements.txt
cd ./docs
make html
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
riakcached-0.1.0.zip
(10.7 kB
view details)
riakcached-0.1.0.tar.gz
(6.9 kB
view details)
File details
Details for the file riakcached-0.1.0.zip
.
File metadata
- Download URL: riakcached-0.1.0.zip
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe8585f384afa1878d616da1b7d8ef8f4eac27e49a1025b01a4e1b6e2fe5b9fb |
|
MD5 | 27e480fc7279cfe50e674f0b3b5975b5 |
|
BLAKE2b-256 | 3db2b76c74e87f419a7708de2af76dd7c37dfec006b40cd82b0feba6862b4040 |
Provenance
File details
Details for the file riakcached-0.1.0.tar.gz
.
File metadata
- Download URL: riakcached-0.1.0.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6cbe0a770bb7d58b8c3abdf6ba7e0e0df1da76010c7611081017b63a0a2bbd6 |
|
MD5 | 2cd55cff146af6af4f68f1ced6d051d9 |
|
BLAKE2b-256 | 7b8aa9ca27fd8a118861a67bc80adfa3f63fe7650a4c950039662acb0e3bd147 |