Before reinventing the wheel, I look for pointers to open source projects that meet these requirements.
- implemented in erlang , although you can go either C if not too much baggage (for example: twisting a maze of dependencies.)
- The endpoint or client in erlang (for example: I want erlang code to run when tasks are completed.)
- distributes tasks to nodes and calls the erlang function to perform tasks.
- save work somehow
- no master nodes, no single point of failure
- homogeneous architecture
- manage the queue of jobs that can be copied without dropping jobs to the floor.
- work performed more than once is normal
- a working profile such as Riak or Couchbase (for example: start one node, then start the others and point to it.)
Strong preference for something light. There are many overloaded solutions in the field of higher education that seem to take so long to study, since it would be for me to recreate it from scratch (in fact, I basically archived the solution to this very problem in response to then else the question here is about stackoverflow. I can build what I described, but it looks like one of these needs, which is right in the middle of what erlang was designed for.)
What I reviewed: - ejabbered - more messaging framework - rabitmq - theoretically it does, but every time I go to their site, I drown in a sea of โโabstractions. Everything seems ready. I canโt even say if he has any perseverance.
Edit to add: Here is a slide deck on a distributed lock using a locker. It seems like it solves a key part of the problem (if someone wants to turn off on their own). http://www.slideshare.net/knutnesheim/locker-distributed-consistent-locking
Further editing: I'm really looking for something easier than RabbitMQ. I know that he can do what I want, but it seems that the cost of training is comparable to the cost of its implementation, when in the end the user solution will be closer to what I really need.
source share