Packages
cloister
0.10.2
0.18.1
0.18.0
0.17.3
0.17.2
0.17.1
0.17.0
0.16.0
0.15.0
0.14.0
0.13.0
0.12.5
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.0
0.10.3
0.10.2
0.10.1
0.10.0
0.9.0
0.8.0
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.5
0.6.4
0.6.3
retired
0.6.2
retired
0.6.1
retired
0.6.0
retired
0.5.0
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
The helper application to manage cluster, that uses hash ring to route requests to nodes. Automatically keeps track of connected nodes, provides helpers to determine where the term is to be executed, to multicast to all the nodes in the cluster and to retrieve current state of the cluster.
Current section
Files
Jump to
Current section
Files
README.md
# Cloister [](https://kantox.com/)  
**The helper application to manage cluster of nodes.**
## Installation
- Add the dependency to your `mix.exs` file:
```elixir
def deps do
[
{:cloister, "~> 0.5"},
...
]
end
```
- Make sure both `:cloister` and `:libring` applications are configured properly in your `config.exs`
```elixir
config :cloister,
sentry: ~w|node1@127.0.0.1 node2@127.0.0.1|a,
consensus: 2
```
- Make sure `:cloister` application is started. This does not require any action unless you have the list of applications specified explicitly. If so, add `:cloister` there.
## Changelog
- **`0.10.0`** `Cloister.siblings!/0` and `Cloister.consensus/0`, better tests
- **`0.9.0`** `Cloister.multiapply/4` to wrap `:rpc.multicall/4`
- **`0.7.0`** `magic? :: boolean()` and `loopback? :: boolean()` config params to avoid cluster building in tests
- **`0.6.0`** support many hashrings within the same cloister
- **`0.2.0`** use `Application.c:start_phase/3` callback to postpone application start until the consensus is reached
---
## [Documentation](https://hexdocs.pm/cloister).