Python缓存神奇库cacheout全

发布时间:2019-09-09 08:51:11编辑:auto阅读(2453)

    python的缓存库(cacheout)

    链接:

    项目: https://github.com/dgilland/cacheout

    文档地址: https://cacheout.readthedocs.io

    PyPI(下载链接): https://pypi.python.org/pypi/cacheout/

    TravisCI(下载链接): https://travis-ci.org/dgilland/cacheout

    特性:

    后端使用字典进行缓存

    使用缓存管理轻松访问多个缓存对象

    当使用模块级缓存对象,重构运行时的缓存设置

    最大缓存大小限制

    默认的缓存时间设置以及缓存项自定义存活时间

    批量的设置、获取、删除操作

    线程安全

    多种缓存机制的实现:

    FIFO(先进先出)

    LIFO(后进先出)

    LRU (最近最少使用机制)

    MRU (最近最多使用机制)

    LFU (最小频率使用机制)

    RR (随机替换机制)

    线路图:

     层级缓存(多层级缓存)

    支持缓存事件监听

    获取缓存对象时的常规表示方法

    获取缓存对象不存在时的回调处理支持

    统计缓存

    要求:

    Python >= 3.4

    快速开始:

    下载安装:


    通过创建一个缓存对象来开始了解:


    默认的缓存的大小为256,默认存活时间是关闭的,这些属性可以通过如下设置:


    设置一个缓存可以通过cache.set():


    获取缓存键的值通过:cache.get():


    为每个键值对设置存活过期时间:


    缓存函数的计算结果:


    为缓存函数提供了键值对的存活时间:


    函数解除缓存:


    复制机制:


    删除缓存中的一个键值对:


    清除整个缓存:


    为get、set、delete设置了批量方法:


    重置已经初始化的缓存对象:


    通过cache.keys(), cache.values(), and cache.items()获取所有的键、值、以及键值对:


    迭代整个缓存的键:


    检测键是否还存在于缓存中通过cache.has() and key in cache方法:


    通过使用CacheManager来管理多个缓存对象:


    更多的细节请查看整篇文档https://cacheout.readthedocs.io.

关键字