webmozart / key-value-store
一个支持不同后端实现的关键字值存储API。
1.0.0
2016-08-09 15:13 UTC
Requires
- php: ^5.3.3|^7.0
- webmozart/assert: ^1.0
Requires (Dev)
- basho/riak: ^1.4
- doctrine/cache: ^1.4
- doctrine/dbal: ^2.4
- mongodb/mongodb: ^1.0
- phpunit/phpunit: ^4.6
- predis/predis: ^1.0
- sebastian/version: ^1.0.1
- symfony/filesystem: ^2.5
- webmozart/json: ^1.1.1
Suggests
- basho/riak: to enable the RiakStore
- doctrine/cache: to enable the CachedStore
- doctrine/dbal: to enable the DbalStore
- mongodb/mongodb: to enable the MongoDbStore
- predis/predis: to enable the PredisStore
- webmozart/json: to enable the JsonFileStore
This package is auto-updated.
Last update: 2024-09-07 23:59:30 UTC
README
最新版本: 1.0.0
一个支持不同后端实现的关键字值存储API。
所有包含的关键字值存储都实现了接口 KeyValueStore
。当前支持以下存储
接口 CountableStore
由以下类支持
接口 SortableStore
由以下类支持
装饰器 CachingDecorator
用于在 Doctrine 缓存中缓存另一个存储实例。
常见问题解答
为什么不使用 Doctrine Cache?
缓存不是关键字值存储。当您使用缓存时,您接受键可能会因为各种原因消失。
- 键可能会过期。
- 当缓存满时,键可能会被覆盖。
- 关闭后键可能会丢失。
- ...
换句话说,缓存是 易失的。这并不是一个问题,因为缓存数据通常存储在安全的地方。缓存的目的在于提供对常用数据的快速访问。
另一方面,关键字值存储是 持久的。当您将键写入关键字值存储时,您期望它在您删除它之前都在那里。如果数据从关键字值存储(或任何其他类型的数据库)中无声地消失,那将是一场灾难。
因此,这两个库满足了两个非常不同的目的,尽管它们的接口和实现往往相似。
CachingDecorator
实际上使用 Doctrine Cache 对象来缓存持久 KeyValueStore
的数据。
作者
- Bernhard Schussek a.k.a. @webmozart
- 社区贡献者
安装
使用 Composer 安装包
$ composer require webmozart/key-value-store
贡献
欢迎对包的贡献!
支持
如果您遇到问题,请发送邮件至 [email protected] 或在 Twitter 上向 @webmozart 发声。
许可
本包所有内容均受 MIT 许可证 许可。