main), на которой запущено приложение с GenServer. Приложение контролирует очередь, принимает запросы на заполнение некоторыми значениями. Есть несколько нод, которые должны получать самое последнее значение из этой очереди, осуществлять некоторые вычисления с ним и возвращать результирующее значение на main-ноду. Т.е. всегда высший приоритет отдаётся последнему пришедшему значению. Необходимо скоординировать расчёт с помощью Elixir. Пока склоняюсь к использованию модуля https://github.com/joekain/BlockingQueue (через push\pop вполне реализуется приоритизация). Но может быть существуют более продвинутые решения?
т.е очередь не должна принимать новые значения пока не будет произведен расчет на других нодах?
Обсуждают сегодня