An Erlang Session Management system
The standard session management system for Nitrogen
- Data Persistence (stored in mnesia)
- Data is replicated across all connected node
- Automatic self-healing in the event of split brain, new nodes being added to the cluster, and more.
- Expired sessions automatically deleted accordingly
Add as a rebar dependency in your rebar.config
{deps, [canister]}.
Put it in your app.src
file or start it explicitly with:
application:ensure_all_started(canister).
canister:put(SessionID, Key, Value).
Returns: Previously stored Value
or undefined
canister:get(SessionID, Key).
Returns: Value
or undefined
canister:session_info(SessionID).
Retrieves all data variables as well as relevant dates and times: when it was last accessed, updated, or deleted
See canister.config for explanation of configuration variables.
Note: session_timeout
variable will also check the nitrogen
and nitrogen_core
app configs, just in case.
Copyright 2022 Jesse Gumm