У меня есть базовое серверное приложение Erlang (еще не полностью OTP), которое я запускаю из командной строки. Я хочу превратить его в интерактивную систему, используя браузер как графический интерфейс с Nitrogen (версия 2.0.4). Общий план состоит в том, чтобы
- превратить текущий модуль в gen_server как часть МОДЕЛИ; он анализирует данные и генерирует из них события, которые отражают определенные свойства данных, которые меня интересуют.
- добавить модуль CONTROLLER, который является как gen_event (для сбора событий, генерируемых моделью), так и gen_server (для разрешения запросов из интерфейса GUI)
- использовать азот в качестве ВИДА, обновляя соответствующие страницы средствами Ajax посредством вызовов модуля контроллера (который, в свою очередь, запрашивает модель)
Насколько я понимаю, мне нужен общий супервизор приложения с тремя дочерними элементами: моделью, представлением и контроллером. Затем они будут общаться друг с другом через API-интерфейсы, привязанные к режимам связи OTP.
И здесь я застрял: следует ли мне поместить все это в дерево каталогов Nitrogen? Должен ли я создать новую структуру каталога приложений и разместить там три компонента (включая азот)? Что именно мне нужно сделать, чтобы запустить сервер Nitrogen в качестве дочернего элемента моего супервизора приложения (сценарий запуска Nitrogen выглядит более сложным, чем я ожидал)? Я начал изучать Erlang и OTP в действии, но еще не закончил. А мне нужно послезавтра провести демонстрацию системы;)
Я хочу набрать start.sh в командной строке, а затем использовать браузер для подключения к приложению через Nitrogen.