Каковы преимущества архитектуры приложений на основе JBoss AS? - PullRequest
1 голос
/ 29 июня 2010

Я пытаюсь понять, что JBoss AS может привнести в проект по сравнению с автономной архитектурой?

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

JBoss для меня - это оболочка для (в целом) нескольких приложений, предоставляющая моему приложению некоторые стандартные сервисы.Эта оболочка также полезна - «получить все или ничего», что-то можно включить / выключить (непредсказуемо повлиять на ваше приложение или повлиять на другую часть JBoss) или заменить (очень сложно и уже довольно хакерски) другимверсия или другой модуль.

Автономное приложение для меня - это что-то из кусочков с клеем среди них (если хотите, Spring) с проводкой IoC.С JBoss мы можем получить все, что могли, но отдельно.Spring или другой клей служит здесь как сервер приложений, но он тоньше, и мы по-прежнему можем заменить детали или даже сам Spring (схема IoC проста с точки зрения кодирования).

Для меня автономно, без ASТакой подход дает больше контроля и гибкости.Более того, последние версии JBoss AS являются чисто документированными, некоторые функции (наиболее заинтересованные) вообще не документированы.

Итак, почему кто-то все еще выбирает JBoss - какие преимущества?

Iпредпочитает более автономный подход к применению, но нужно больше фактов, чтобы лучше понять и убедить других.

Ответы [ 3 ]

2 голосов
/ 29 июня 2010

Мне кажется, что вы описываете классический выбор между лучшими в своем классе (собирая все части и склеивая их вместе) и интегрированным стеком (JBoss написал все части и интегрировал их для вас).Это дебаты, которые будут продолжаться вечно.Если у вас работает лучший в своем классе продукт, то придерживайтесь его.

JBoss - это контейнер J2EE.Посмотрите на спецификацию J2EE, если вы не знакомы с ней.По сути, процесс сообщества Sun разработал среду разработки, которая содержит компоненты, которые могут быть вам интересны при создании крупномасштабных приложений.J2EE содержит несколько под-спецификаций, таких как сервлеты, EJB, JTA, JMS и целый ряд других технологий алфавитного супа.Если вы не используете ни одну из этих технологий, вам не нужен контейнер J2EE.Если вы просто заинтересованы в использовании сервлетов и JSP, то лучше использовать контейнер сервлетов, такой как Tomcat, Jetty, Resin и т. Д.

Предоставление корпоративных функций, таких как масштабируемость, поддержка транзакций, федеративное управление пользователями и т. Д.Сложны.Контейнер J2EE обеспечивает стандартный уровень этих функций.Если вы сможете найти их в другом месте на уровне, который удовлетворяет вашему удовлетворению, тогда больше сил для вас.

1 голос
/ 16 июля 2010

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

Начиная с минимальной конфигурации JBoss и создавая собственную конфигурацию, вы получитеустановка, в которой у вас нет запущенных сервисов, которые вам не нужны.Лично мне нравится знать, что работает моя AS, поэтому я предпочитаю начинать с минимальной конфигурации, добавляя только необходимые части.

0 голосов
/ 09 июля 2010

Я бы сказал, что единственной причиной использования JBoss является необходимость доступа к службам Java EE (таким как обмен сообщениями, транзакции, управляемые контейнером и т. П.).

Имейте в виду, что JBoss (грубо описан) - это сервис Tomcat плюс Java EE (да, да, я знаю, это очень упрощенный подход, просто потерпите меня). Я упоминаю это, как я бы сказал, ваше решение:

  • Если вам нужен только IoC и некоторые другие возможности, которые вы можете получить с помощью Spring и Tomcat, используйте это
  • Если вашему приложению требуются сервисы Java EE, используйте JBoss

Имейте в виду, что вы всегда можете начать с базовой системы (Spring + Tomcat) и перейти к JBoss, если потребуется позже. Ничто не запрещает этого. И, вероятно, если вы начнете с этого подхода, то покажете, действительно ли вам нужны сервисы Java EE или вы чрезмерно проектировали решение.

...