memcachir v3.2.2 Memcachir
Module with a friendly API for memcached servers.
It provides connection pooling, and cluster support.
Example
{:ok} = Memcachir.set("hello", "world")
{:ok, "world"} = Memcachir.get("hello")
Link to this section Summary
Functions
Removes the item with the specified key. Returns {:ok, :deleted}
Accepts a memcache operation closure, a grouped map of %{node => args} and executes the operations in parallel for all given nodes. The result is of form {:ok, enumerable} where enumerable is the merged result of all operations
Removes all the items from the server. Returns {:ok}
Gets the value associated with the key. Returns {:error, "Key not found"}
if the given key doesn’t exist
increments the key by value
List all currently registered node names, like [:"localhost:11211"]
Accepts a list of mcached keys, and returns either {:ok, %{key => val}}
for each
found key or {:error, any}
Accepts a list of {key, val}
pairs and returns the store results for each
node touched
Multi-set with cas option
Sets the key to value
Called when an application is started
Link to this section Functions
Removes the item with the specified key. Returns {:ok, :deleted}
Accepts a memcache operation closure, a grouped map of %{node => args} and executes the operations in parallel for all given nodes. The result is of form {:ok, enumerable} where enumerable is the merged result of all operations.
Additionally, you can pass args
to supply memcache ops to each of the executions
and merge_fun
(a 2-arity func) which configures how the result is merged into the final result set.
For instance, mget/2
returns a map of key, val pairs in its result, and utilizes Map.merge/2
.
Removes all the items from the server. Returns {:ok}
.
Gets the value associated with the key. Returns {:error, "Key not found"}
if the given key doesn’t exist.
increments the key by value
List all currently registered node names, like [:"localhost:11211"]
.
Accepts a list of mcached keys, and returns either {:ok, %{key => val}}
for each
found key or {:error, any}
Accepts a list of {key, val}
pairs and returns the store results for each
node touched
Multi-set with cas option
Sets the key to value.
Called when an application is started.
This function is called when an application is started using
Application.start/2
(and functions on top of that, such as
Application.ensure_started/2
). This function should start the top-level
process of the application (which should be the top supervisor of the
application’s supervision tree if the application follows the OTP design
principles around supervision).
start_type
defines how the application is started:
:normal
- used if the startup is a normal startup or if the application is distributed and is started on the current node because of a failover from another node and the application specification key:start_phases
is:undefined
.{:takeover, node}
- used if the application is distributed and is started on the current node because of a failover on the nodenode
.{:failover, node}
- used if the application is distributed and is started on the current node because of a failover on nodenode
, and the application specification key:start_phases
is not:undefined
.
start_args
are the arguments passed to the application in the :mod
specification key (e.g., mod: {MyApp, [:my_args]}
).
This function should either return {:ok, pid}
or {:ok, pid, state}
if
startup is successful. pid
should be the PID of the top supervisor. state
can be an arbitrary term, and if omitted will default to []
; if the
application is later stopped, state
is passed to the stop/1
callback (see
the documentation for the c:stop/1
callback for more information).
use Application
provides no default implementation for the start/2
callback.
Callback implementation for Application.start/2
.