Skip to main content
pycacher [![Build Status](https://secure.travis-ci.org/garindra/pycacher.png)](https://secure.travis-ci.org/garindra/pycacher.png)
=======

Python module for easy function caching decoration, batching, and many more.

Complete documentation on:
[http://pycacher.readthedocs.org](http://pycacher.readthedocs.org) (still empty)

###PyPi Page
[http://pypi.python.org/pypi/pycacher](http://pypi.python.org/pypi/pycacher)

###Installation
This package is officially hosted on PyPI, so what you need to do is simply:

pip install pycacher

###Examples:


##### #1 Caching function decorator:

from pycacher import Cacher

cacher = Cacher('localhost', 11211)

@cacher.cache()
def expensive_function(a, b):
return a + b

expensive_function(1, 2) # will actually execute
expensive_function(1, 2) # will get the value from the cache

##### #2 Batching:


batcher = cacher.create_batcher()

batcher.add('test-1')
batcher.add('test-2')
batcher.add('test-3')

batcher.batch()

batcher.get_values()
>> {'test-1':'test-value-1', 'test-2':'test-value-2', 'test-3' : None}

##### #3 Batching Context Manager:


batcher = cacher.create_batcher()

with batcher:
#expensive_function is a pycacher-decorated function.
expensive_function.register(1, 2)
expensive_function.register(1, 3)

#batches the cache key of both those 2 function register calls.
batcher.batch()

with batcher:
expensive_function(1, 2) #will get its value directly from the batched value
expensive_function(1, 3)

You can see more advanced examples on the [documentation](http://pycacher.readthedocs.org).

###Prerequisites

`pycacher` is currently well tested on Python 2.5, 2.6 and 2.7.

###Run unit tests
If you have the `nose` Python unit tester library installed and want to run the unit test suite for this library, then simply run this command:
nosetests

###Travis CI
You can track the project's CI status on Travis at : [http://travis-ci.org/#!/garindra/pycacher](http://travis-ci.org/#!/garindra/pycacher)

###License
MIT 2.0

###Authors:
- Garindra Prahandono (garindraprahandono@gmail.com)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycacher-0.0.2.tar.gz (5.2 kB view details)

Uploaded Source

File details

Details for the file pycacher-0.0.2.tar.gz.

File metadata

  • Download URL: pycacher-0.0.2.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycacher-0.0.2.tar.gz
Algorithm Hash digest
SHA256 24eee0aaec7dce1abdb286a84d1c1a5f808428475c2a6eba0a28a44c56f3a264
MD5 834321ea7441c0ef7f9610ea2fb7ccef
BLAKE2b-256 5b4f31fa390114d08dc562fdfa388b1f7449f6daec935de99a67494930750324

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 file

0.0.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page