API Reference Nebulex v2.5.1



Nebulex is split into 2 main components

Specifies the minimal API required from adapters.

Specifies the entry API required from adapters.

This behaviour provides a callback to compute the hash slot for a specific key based on the number of slots (partitions, nodes, ...).

Specifies the adapter persistence API.

Specifies the query API required from adapters.

Specifies the stats API required from adapters.

Specifies the adapter transactions API.

Adapter module for Local Generational Cache; inspired by epocxy.

Generational garbage collection process.

Adapter module for Multi-level Cache.

The Nil adapter is a special cache adapter that disables the cache; it loses all the items saved on it and it returns nil for all the read and true for all save operations. This adapter is mostly useful for tests.

Built-in adapter for partitioned cache topology.

Built-in adapter for replicated cache topology.

Cache's main interface; defines the cache abstraction layer which is highly inspired by Ecto.

At its core, the abstraction applies caching to Elixir functions, reducing thus the number of executions based on the information available in the cache. That is, each time a targeted function is invoked, the abstraction will apply a caching behavior checking whether the function has been already executed and its result cached for the given arguments. If it has, then the cached result is returned without having to execute the actual function; if it has not, then function is executed, the result cached and returned to the user so that, the next time the method is invoked, the cached result is returned. This way, expensive functions (whether CPU or IO bound) can be executed only once for a given set of parameters and the result reused without having to actually execute the function again. The caching logic is applied transparently without any interference to the invoker.

Declarative annotation-based caching via function decorators.

Cache key generator. Used for creating a key based on the given module, function name and its arguments (the module and function name are used as context).

Default key generator implementation.

Defines a Cache Entry.

Pre/Post Hooks

Raised at runtime when a key already exists in cache.

Raised at runtime when the query is invalid.

RPC utilities for distributed task execution.

Raised at runtime when a RPC error occurs.

Raised at runtime when a RPC multi_call error occurs.

Raised at runtime when the cache was not started or it does not exist.

Stats data type.

Telemetry wrapper.

Telemetry handler for aggregating cache stats; it relies on the default stats implementation based on Erlang counters. See Nebulex.Adapter.Stats.

Time utilities.


Mix Tasks

Prints Nebulex tasks and their information.

Generates a new cache.