libcluster
erlcloud
libcluster | erlcloud | |
---|---|---|
10 | 1 | |
1,978 | 652 | |
- | 0.2% | |
4.6 | 6.2 | |
3 months ago | about 1 month ago | |
Elixir | Erlang | |
MIT License | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libcluster
-
Elixir clustering using Postgres
libcluster is the go-to package for connecting multiple BEAM instances and setting up healing strategies. libcluster provides out-of-the-box strategies and it allows users to define their own strategies by implementing a simple behavior that defines cluster formation and healing according to the supporting service you want to use.
- Phoenix 1.7 for Elixir: Edit a Form in a Modal
- Elixir for Ruby developers: the three most important differences
-
cannot query kubernetes (unauthorized): endpoints is forbidden: User cannot list endpoints in the namespace
I am using libcluster to connect my nodesI get the following error:
-
We used Elixir's Observer to hunt down bottlenecks
Distributed Elixir can be done with Docker containers too, see https://github.com/bitwalker/libcluster which by default has some Kubernetes support but you can also have third party (or custom) clustering strategies. I've not done this myself but I've seen articles about this a lot during the past years.
Hot code updates for most applications aren't really worth it in my opinion, assuming you do something like blue/green rollover deployments. It's cool that it's possible though. But it requires appup files and afaik Distillery is one of the release tools that has support for it built-in.
-
If you were in charge of a startup tech stack, how would you use elixir to actually scale and make every work seamlessly?
On the deployment level, you can use synchronous communication using API-based solutions or asynchronous communication using external solutions (RabbitMQ, Kafka,...) or Erlang/Elixir tools (message passing, pg2, PubSub, Libcluster,...)
- Nodes
- Nodes Elixir
-
Clustering nodes with different basenames
Looking throught libcluster code (https://github.com/bitwalker/libcluster/blob/master/lib/strategy/kubernetes_dns.ex#L150) it does seem to require that both nodes share the same basename.
-
Building a Distributed Turn-Based Game System in Elixir
libcluster – Automatic cluster formation/healing for Elixir applications.
erlcloud
-
Amazon S3 and python requests/curl
There is a library I found for erlang here that could help: https://github.com/erlcloud/erlcloud
What are some alternatives?
Nomad - Elixir/Phoenix Cloud SDK and Deployment Tool
ex_aws - A flexible, easy to use set of clients AWS APIs for Elixir
horde - Horde is a distributed Supervisor and Registry backed by DeltaCrdt
aws - AWS clients for Elixir
Kubex - Kubex is the kubernetes integration for Elixir projects and it is written in pure Elixir.
GCloudex - Friendly set of wrappers for Google Cloud Platform services' API's in Elixir.
discovery - An OTP application for auto-discovering services with Consul
Cloudi - A Cloud at the lowest level!
nodefinder - Strategies For Automatic Node Discovery
Oceanex