Need help with key-value-store?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

webmozart
127 Stars 10 Forks MIT License 145 Commits 2 Opened issues

Description

A key-value store API with implementations for different backends.

Services available

!
?

Need anything else?

Contributors list

# 7,099
PHP
Symfony
symfony...
symfony...
109 commits
# 9,765
Shell
PHP
Symfony
Perl
8 commits
# 46,242
PHP
Symfony
Compose...
google-...
6 commits
# 289,908
PHP
rabbitm...
Symfony
stomp
2 commits
# 135,719
aura
framewo...
php7
depende...
1 commit

Webmozart Key-Value-Store

Build Status Build status Scrutinizer Code Quality Latest Stable Version Total Downloads Dependency Status

Latest release: 1.0.0

A key-value store API with implementations for different backends.

API Documentation

All contained key-value stores implement the interface

KeyValueStore
. The following stores are currently supported:

The interface

CountableStore
is supported by the following classes:

The interface

SortableStore
is supported by the following classes:

The decorator

CachingDecorator
exists for caching another store instance in a Doctrine cache.

FAQ

Why not use Doctrine Cache?

Caching is not key-value storage. When you use a cache, you accept that keys may disappear for various reasons:

  • Keys may expire.
  • Keys may be overwritten when the cache is full.
  • Keys may be lost after shutdowns.
  • ...

In another word, caches are volatile. This is not a problem, since the cached data is usually stored safely somewhere else. The point of a cache is to provide high-performance access to frequently needed data.

Key-value stores, on the other hand, are persistent. When you write a key to a key-value store, you expect it to be there until you delete it. It would be a disaster if data would silently disappear from a key-value store (or any other kind of database).

Hence the two libraries fulfill two very different purposes, even if their interfaces and implementations are often similar.

The

CachingDecorator
actually uses a Doctrine Cache object to cache the data of a persistent
KeyValueStore
.

Authors

Installation

Use Composer to install the package:

$ composer require webmozart/key-value-store

Contribute

Contributions to the package are always welcome!

Support

If you are having problems, send a mail to [email protected] or shout out to @webmozart on Twitter.

License

All contents of this package are licensed under the MIT license.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.