Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: third_party/google-endpoints/dogpile.cache-0.6.2-py2.7.egg-info/PKG-INFO

Issue 2666783008: Add google-endpoints to third_party/. (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 Metadata-Version: 1.1
2 Name: dogpile.cache
3 Version: 0.6.2
4 Summary: A caching front-end based on the Dogpile lock.
5 Home-page: http://bitbucket.org/zzzeek/dogpile.cache
6 Author: Mike Bayer
7 Author-email: mike_mp@zzzcomputing.com
8 License: BSD
9 Description: dogpile
10 =======
11
12 Dogpile consists of two subsystems, one building on top of the other.
13
14 ``dogpile`` provides the concept of a "dogpile lock", a control structur e
15 which allows a single thread of execution to be selected as the "creator " of
16 some resource, while allowing other threads of execution to refer to the previous
17 version of this resource as the creation proceeds; if there is no previo us
18 version, then those threads block until the object is available.
19
20 ``dogpile.cache`` is a caching API which provides a generic interface to
21 caching backends of any variety, and additionally provides API hooks whi ch
22 integrate these cache backends with the locking mechanism of ``dogpile`` .
23
24 Overall, dogpile.cache is intended as a replacement to the `Beaker
25 <http://beaker.groovie.org>`_ caching system, the internals of which are
26 written by the same author. All the ideas of Beaker which "work" are r e-
27 implemented in dogpile.cache in a more efficient and succinct manner, an d all
28 the cruft (Beaker's internals were first written in 2005) relegated to t he
29 trash heap.
30
31 Documentation
32 -------------
33
34 See dogpile.cache's full documentation at
35 `dogpile.cache documentation <http://dogpilecache.readthedocs.org>`_. T he
36 sections below provide a brief synopsis of the ``dogpile`` packages.
37
38 Features
39 --------
40
41 * A succinct API which encourages up-front configuration of pre-defined
42 "regions", each one defining a set of caching characteristics includin g
43 storage backend, configuration options, and default expiration time.
44 * A standard get/set/delete API as well as a function decorator API is
45 provided.
46 * The mechanics of key generation are fully customizable. The function
47 decorator API features a pluggable "key generator" to customize how
48 cache keys are made to correspond to function calls, and an optional
49 "key mangler" feature provides for pluggable mangling of keys
50 (such as encoding, SHA-1 hashing) as desired for each region.
51 * The dogpile lock, first developed as the core engine behind the Beaker
52 caching system, here vastly simplified, improved, and better tested.
53 Some key performance
54 issues that were intrinsic to Beaker's architecture, particularly that
55 values would frequently be "double-fetched" from the cache, have been fixed.
56 * Backends implement their own version of a "distributed" lock, where th e
57 "distribution" matches the backend's storage system. For example, the
58 memcached backends allow all clients to coordinate creation of values
59 using memcached itself. The dbm file backend uses a lockfile
60 alongside the dbm file. New backends, such as a Redis-based backend,
61 can provide their own locking mechanism appropriate to the storage
62 engine.
63 * Writing new backends or hacking on the existing backends is intended t o be
64 routine - all that's needed are basic get/set/delete methods. A distri buted
65 lock tailored towards the backend is an optional addition, else dogpil e uses
66 a regular thread mutex. New backends can be registered with dogpile.ca che
67 directly or made available via setuptools entry points.
68 * Included backends feature three memcached backends (python-memcached, pylibmc,
69 bmemcached), a Redis backend, a backend based on Python's
70 anydbm, and a plain dictionary backend.
71 * Space for third party plugins, including one which provides the
72 dogpile.cache engine to Mako templates.
73
74
75 Keywords: caching
76 Platform: UNKNOWN
77 Classifier: Development Status :: 5 - Production/Stable
78 Classifier: Intended Audience :: Developers
79 Classifier: License :: OSI Approved :: BSD License
80 Classifier: Programming Language :: Python
81 Classifier: Programming Language :: Python :: 3
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698