使用cherrypy将数据存储到缓存中

时间:2015-12-29 05:43:28

标签: python cherrypy

我是python和cherrypy的新手。我想使用cherrypy将数据存储到缓存中。

是否有任何简单和基本的put,get和delete示例?

1 个答案:

答案 0 :(得分:2)

您可以使用简单的字典作为缓存。虽然您必须自己处理过期。以下是有关如何使用MemoryCache的示例。运行此脚本时,页面http://127.0.0.1:8080/test_cache每隔10秒显示不同的内容。 MemoryCache.put存储每个类似请求的对象,这意味着不同的URI参数对应于不同的" bins"。您可以通过在http://127.0.0.1:8080/test_cache?foo=0http://127.0.0.1:8080/test_cache?bar=42之间切换来尝试。

import cherrypy
import datetime
import sys
from cherrypy.lib.caching import MemoryCache

cache = MemoryCache()
cache.delay = 10 # content auto-expires after 10 seconds

class Root(object):

    @cherrypy.expose
    def test_cache(self, *args, **kwargs):
        data = cache.get()
        if not data:
            obj = datetime.datetime.today()
            size = sys.getsizeof(obj)
            cache.put(obj, size)
            data = obj
        return 'obj: %s, id: %s' % (data, id(data))

cherrypy.quickstart(Root())