Module redis

Source
Expand description

A Redis-backed StoreBackend implementation, storing all data on a Redis server at the provided address. This store backend is recommended for most situations, as the data is stored in a persistent* and distributed*, but still very high-performance way, which also allows any* number of links instances to connect and share the same underlying data source.

* If Redis is configured appropriately.

This is tested with and developed against Redis 6.2 and 7.0. Older Redis versions may be supported in the future. Newer Redis versions will be supported as they are released.

On Redis, redirects and vanity paths are stored in the specified database with keys in the following format:

  • links:redirect:[ID] for redirects (with string values of URLs)
  • links:vanity:[vanity] for vanity paths (with string values of IDs)
  • links:stat:[link]:[type]:[time]:[data] for statistics (with int values)

Some extra metadata is also needed for certain operations:

  • links:stat-all set of all statistics (json)
  • links:stat-link:[link] set of all statistics with that link (json)
  • links:stat-type:[type] set of all statistics with that type (json)
  • links:stat-time:[time] set of all statistics with that time (json)
  • links:stat-data:[data] set of all statistics with that data (json)

Structsยง

Store
A Redis-backed StoreBackend implementation. The best option for most links deployments.