Gibson is a high efficiency, tree based memory cache server. It is not meant to replace a database, since it was written to be a key-value store to be used as a cache server, but it's not the usual cache server.

Normal key-value stores ( memcache, redis, etc ) uses a hash table as their main data structure, so every key is hashed with a specific algorithm and the resulting hash is used to identify the given value in memory. This approach, although very fast, doesn't allow the user to execute globbing expressions/selections on a given (multiple) keyset, thus resulting on a pure one-by-one access paradigm.

Gibson is different, it uses a special tree based structure allowing the user to perform operations on multiple key sets using a prefix expression achieving the same performance grades.

Features

  • Very fast and with the lowest memory footprint possible.
  • Unlike many other stores, inserts, deletions and retrievals have the same time complexity.
  • Fast LZF object compression.
  • Builtin object Time-To-Live.
  • Cached object locking and unlocking.
  • Multiple key set operation with M* operators.

Join our mailing list or take a look at the issues panel to stay in touch with us.


Learn more →