Our great sponsors
-
shelfcache
Discontinued A persistent thread- and multiprocess-safe caching store including a wrapper around requests.get()
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
FWIW, it was added in 1992. https://github.com/python/cpython/commit/dd9ed839d6958f73704... with gdbm added in 1994. https://github.com/python/cpython/commit/4b4c664d2e93279c8d7... .
I once wrote a locking wrapper around the shelve module so I could use it as a thread- and multiprocess-safe key-value cache (including a wrapper around the requests modules `get()` to transparently cache/validate http resources according to headers):
https://github.com/cristoper/shelfcache
It works despite some cross-platform issues (flock and macos's version of gdbm interacting to create a deadlock), but if I were to do again I would just use sqlite (which Python's standard library has an interface for).
Related posts
- Creating a Sales Analysis Application with Streamlit: A Practical Approach to Business Intelligence
- Building a Production-Ready Web App with T3 Stack
- Show HN: I built a small utility that handles multiple browser instances for you
- Show HN: Open-source SDK for creating custom code interpreters with any LLM
- PyNQ: Python LINQ for the Masochistic and Deranged