Sha256: 046f2438d3b89e9ebc342e760a6e0b034be5fbfe771069beed673892fc2b141b
Contents?: true
Size: 1.28 KB
Versions: 2
Compression:
Stored size: 1.28 KB
Contents
Store large objects in memcache or others by slicing them. - uses read_multi for fast access - returns nil if one slice is missing - low performance overhead, only uses single read/write if data is below 1MB Install ======= ```Bash gem install large_object_store ``` Usage ===== ```Ruby Rails.cache.write("a", "a"*10_000_000) # => false -> oops too large store = LargeObjectStore.wrap(Rails.cache) store.write("a", "a"*10_000_000) # => true -> always! store.read("a").size # => 10_000_000 using multi_get store.read("b") # => nil store.fetch("a"){ "something" } # => "something" executes block on miss store.write("a" * 10_000_000, compress: true) # compress when greater than 16k store.write("a" * 1000, compress: true, compress_limit: 100) # compress when greater than 100 store.write("a" * 1000, raw: true) # store as string to avoid marshaling overhead ``` Author ====== [Ana Martinez](https://github.com/anamartinez)<br/> acemacu@gmail.com<br/> [Michael Grosser](https://github.com/grosser)<br/> michael@grosser.it<br/> License: MIT<br/> [![CI](https://github.com/anamartinez/large_object_store/actions/workflows/actions.yml/badge.svg)](https://github.com/anamartinez/large_object_store/actions/workflows/actions.yml)
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
large_object_store-1.5.0 | Readme.md |
large_object_store-1.4.0 | Readme.md |