Требуется руководство Re: Факторинг приложений Erlang - PullRequest
0 голосов
/ 31 июля 2011

Во-первых, короткое, но глубокое спасибо всем, кто до сих пор ответил на мои вопросы.

Я поднимаюсь по кривой обучения Erlang OTP и наслаждаюсь каждым шагом.Теперь копаться в разработке приложений и интеграции.Мой вопрос сегодня таков:

Предположим, у меня есть набор библиотечных модулей: myLibrary.Я хочу использовать эти функции в приложении Erlang, включающем набор модулей для приложения: myApp.Mylibrary вполне может обслуживать приложения за пределами myApp.

Я хочу, в свою очередь, развернуть myApp через Интернет, скажем, через Webmachine.Я также хочу, чтобы данные сохранялись для myApp, это могут быть Dets, Mnesia или Riak - еще предстоит решить.

Во-первых, должен ли я поместить мою библиотеку в то же приложение, что и myApp?Или они должны быть отдельными приложениями?

Во-вторых, как мне лучше интегрировать все эти приложения в один функциональный выпуск?(Я жгу нефть в опубликованных документах: этот вопрос, но я нахожу их немного запутанными).

Спасибо,

LRP

1 Ответ

2 голосов
/ 31 июля 2011

Прежде всего, я очень рад, что вы изучаете эрланг и получаете ответы на свои вопросы от сообщества. Однако я хотел бы предложить, чтобы вы ответили доброй волей, отметив правильные ответы, которые мы предоставили, как «принятые». Теперь, когда у нас это есть, перейдем к фактическому ответу ...

myLibrary должен быть собственным репозиторием, если вы считаете, что он может использоваться повторно. См. edate в качестве примера такой библиотеки.

Я согласен, что бизнес упаковки приложений и их зависимостей в erlang на данный момент немного сбивает с толку. Вы можете начать с моих ответов здесь и здесь .

Этот набор из трех постов проведет вас через процесс интеграции святой троицы веб-машины, erlydtl и riak. Материал немного устарел, но, насколько я помню, автор затрагивает ряд вопросов, имеющих отношение к вашему вопросу.

Этот пост часто дается как справочник по использованию арматуры и созданию реальных выпусков.

На момент написания этой статьи я на самом деле не выпускал настоящие эрланг-релизы. Я использую rebar для компиляции, тестирования и управления своими зависимостями, и на этом все - на своих производственных серверах я просто клонирую свой репозиторий, запускаю make и все готово. Но если вам нужен полный опыт управления релизами, арматура может помочь вам и в этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...