2010-04-30 2 views
0

Как бы вы могли модулизировать большое приложение, которое имеет некоторые входящие (SOAP) веб-сервисы, некоторые исходящие веб-сервисы, преобразования между ними и внутренними форматами, внутренние службы ведения журналов, обращается к внешнему архивированию веб-сервисов, задерживает материал и работает над этим асинхронно и так далее?Модифицировать приложение преобразования b2b webservice

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

Другим способом было бы превратить все в гигантскую ВОЙНУ, чтобы вы могли общаться напрямую. Не совсем модуляция. Что бы вы сделали?

ответ

0

На мой взгляд, сильно зависит от зависимостей между модулями. Могут ли они жить сами по себе, наполняя что-то полезное при беге? Если это так, может иметь смысл развернуть их отдельно, чтобы вы могли обновить свою систему, пока другие части продолжают работать. Если они могут только делать что-то полезное в сочетании, единственной причиной их развертывания на разных машинах может быть ограниченность аппаратного обеспечения.

+0

Модули не очень полезны сами по себе - для выполнения запроса требуется несколько из них. Но я не обязательно говорил о развертывании на нескольких машинах - проблема в том, как структурировать приложение также возникает на одной машине. –

+0

Но тогда вы не получите преимущества для развертывания в разных jvms. Вы просто получаете дополнительные jvms для мониторинга и должны иметь дело с зависимостями при обновлении одного модуля. – Dominik

+0

Я не хотел говорить о разных jvms, хотя это был бы вариант. (Я уточнил, что немного в этом вопросе.) В настоящее время мы используем коллекцию WARs в нескольких EAR на одном сервере приложений, которые обмениваются данными через внутренние веб-службы, но мне было интересно, стоит ли это делать лучше всего. –