#bash #elixir
#bash #elixir
Вопрос:
Я использую одну библиотеку подключений для подключения моей оболочки Elixir к ActiveMQ и подписки на очереди, как показано ниже, и работает хорошо
iex --erl "-pa ebin -env DYLD_LIBRARY_PATH ./priv -env LD_LIBRARY_PATH ./priv -s qpidpn start"
:qpidpn.subscribe('amqp://127.0.0.1/queue://test')
Может кто-нибудь подсказать мне, как создать новое приложение Elixir Mix [я имею в виду новый модуль в приложении: скрипт bash, но не из оболочки], который будет делать то же самое. Это означает.
- Сначала запустите qpidpn.
- Подписка на получение эхо-сообщений, поступающих в очередь.
Ответ №1:
Вероятно, лучшим способом было бы использовать для этого релиз. Взгляните на exrm. По сути, вы создаете релиз с помощью mix release
, затем запускаете свое приложение с помощью rel/qpidpn/bin/qpidpn start
. Затем вы можете подключиться к узлу с помощью iex с помощью rel/qpidpn/bin/qpidpn remote_console
и поставить подписку в очередь с помощью :qpidpn.subscribe('amqp://127.0.0.1/queue://test')
. Затем вы можете завершить сеанс удаленной оболочки, и ваше приложение будет продолжать работать в фоновом режиме неограниченное время.