معرفی شرکت ها


dcache-0.0.2


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Distributed Cache for Humans
ویژگی مقدار
سیستم عامل -
نام فایل dcache-0.0.2
نام dcache
نسخه کتابخانه 0.0.2
نگهدارنده []
ایمیل نگهدارنده []
نویسنده HBN3tw0rk
ایمیل نویسنده -
آدرس صفحه اصلی https://github.com/HBN3tw0rk/dcache
آدرس اینترنتی https://pypi.org/project/dcache/
مجوز GNU Lesser General Public License v2.1
====== dcache ====== .. image:: https://img.shields.io/pypi/v/dcache.svg :target: https://pypi.python.org/pypi/dcache :alt: PyPI .. image:: https://coveralls.io/repos/github/HBN3tw0rk/dcache/badge.svg?branch=master :target: https://coveralls.io/github/HBN3tw0rk/dcache?branch=master :alt: Coverage Status .. image:: https://readthedocs.org/projects/dcache/badge/?version=latest :target: https://dcache.readthedocs.io/en/latest/?version=latest :alt: Documentation Status Distributed Cache for Humans * Documentation: https://dcache.readthedocs.io. Installation ------------ .. code:: bash pip install dcache How to Use ---------- - TODO Contributing ------------ Contributions are welcome, feel free to open an Issue or Pull Request. Pull requests must be for the `develop` branch. .. code:: bash git clone https://github.com/HBN3tw0rk/dcache cd dcache git checkout develop python -m venv .venv pip install -r requirements_dev.txt pre-commit install pytest Pitch (Portuguese) ------------------ * Part 1: https://www.loom.com/share/ee553d6915ca4dc5ba8609d48b59bd55 * Part 2: https://www.loom.com/share/50cb4ff9560943879d78864f5fa1b4e0 What is ------- * distributed cache for humans * simple API like `lru_cache` * multiple backends * easy to switch the backend * good documentation API --- dcache ^^^^^^ .. code:: python from dcache import dcache @dcache def slow_function(n): return n ** 1000 dcache vs redis ^^^^^^^^^^^^^^^ .. code:: python import redis redis = redis.Redis(host='localhost', port=6379, db=0) def slow_function(n): cached = redis.get(n) if cached: return cached value = n ** 1000 redis.set(n, value) return value def slow_function2(n): cached = redis.get(n) if cached: return cached value = n ** 1000 redis.set(n, value) return value .. code:: python from dcache import cache from dcache.backends import RedisBackend cache = dcache(RedisBackend(host='localhost', port=6379, db=0)) @cache def slow_function(n): return n ** 1000 @cache def slow_function2(n): return n ** 1000 real example ^^^^^^^^^^^^ .. code:: python def process(id, input): cache_path = get_content_cache_path(id, input) if resource.file_exist(cache_path): return resource.get_json(cache_path) response = slow_function(id, input) resource.put_json(body=response, file_path=cache_path) return response .. code:: python from dcache import dcache from dcache.backends import S3Backend @dcache(S3Backend()) def process(id, input): return slow_function(id, input) Ideas ----- * integration tests using containers multiple backends ^^^^^^^^^^^^^^^^^ .. code:: python from dcache import dcache from dcache.backends import InMemoryBackend, RedisBackend @dcache(multiple=[ InMemoryBackend(), RedisBackend(host='localhost', port=6379, db=0), ]) def slow_function(n): return n ** 1000 1. search on the in-memory cache; 2. if exists, return, if not, search on Redis; 3. * if exists on Redis, save in memory and return; 4. * if not, exists on Redis, run the `slow_function`, save on Redis, save in-memory and return; * doesn't run if already returned MVP --- * in memory Roadmap ------- * backends: Redis, Memcached, Filesystem, database, S3, etc. * multiple backends * plugins ========= Changelog ========= (unreleased) ------------ * Add InMemory backend 0.0.1 (2022-07-30) ------------------ * First release on PyPI.


زبان مورد نیاز

مقدار نام
>=3.6 Python


نحوه نصب


نصب پکیج whl dcache-0.0.2:

    pip install dcache-0.0.2.whl


نصب پکیج tar.gz dcache-0.0.2:

    pip install dcache-0.0.2.tar.gz