Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какую платформу выбрать для JetSpeed 2? Tomcat vs Geronimo vs WebSphereAppServer 
:(
    Опции темы
Barvetal
Дата 27.3.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Всем здравствуйте!

Разрабатываем корпоративный сайт компании. Почти на 100%решили, что будем использовать JetSpeed2. Пока только не можем определиться с платформой.

Выбираем между Apache Tomcat, Apache Geronimo, WebSphere Application Server.

Помогите определиться, какую платформу лучше всего выбрать и почему?

Всем заранее спасибо!
PM MAIL   Вверх
tux
Дата 27.3.2006, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Учитывая что вам нужен только веб-контейнер, достаточно Tomcat. Geronimo и Websphere - серверы более тяжелые (Websphere - гораздо более тяжелый), к тому же в Geronimo вы получите Tomcat плюс кучу ненужной функциональности. Другое дело, если портал - это не единственное, что вы собираетесь хостить на сервере. Если там будут решения, использующий, например, EJB, то это другой разговор.
PM MAIL Skype GTalk Jabber YIM   Вверх
Barvetal
Дата 27.3.2006, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Дело ж в том, что EJB 2.1 использовать, я считаю, вообще не нужно. Есть же более легкие и быстрые решения: Spring, Hibernate... Тем более, что на подходе EJB 3.0, в котором как раз и будут использованы Spring и Hibernate... А в WebSphere AppServer, как я думаю, реализация EJB3 будет очень нескоро. Поэтому не вижу смысла в покупке WebSphere... Завяжемся на АппСервер, функционал которого мы не сможем использовать... И перейти никуда не сможем на другой сервер, так как деньги уже уплачены... Или я ошибаюсь?

PM MAIL   Вверх
tux
Дата 28.3.2006, 02:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Цитата(Barvetal @ 27.3.2006, 20:02 Найти цитируемый пост)
И перейти никуда не сможем на другой сервер, так как деньги уже уплачены... Или я ошибаюсь?

Насчет денег думаю абсолютно прав. Какое же начальство даст поменять плаформу, в которую такие средства вложены. smile
А JBoss совсем не рассматривается? Тоже вполне себе production-ready, знаю примеры очень крупных банков, которые у себя в production его используют.

В общем так. На мой взгляд основные отличия JBoss и Geronimo от Websphere - это более скудная документация и отсутствие техподдержки (поскольку деньги не платили, но в принципе можно заплатить, поддержка будет и для них). Что касается поддержки, по заверениям знакомых она и в Штатах оставляет желать лучшего, а в РФ, думаю, вообще никакая. Так что не вижу никаких доводов в пользу Websphere, при том что функциональность примерно одинакова.

Относительно Tomcat vs JBoss и Geronimo. Если вы сейчас собираетесь разрабатывать только веб-приложения, то можно остановиться и на Tomcat, в конце концов JBoss и Geronimo - это Tomcat плюс другая функциональность (или Jetty плюс другая функциональность) и переехать при необходимости труда не составит. Но меня бы, например, Tomcat как production не устроил бы поскольку у него нет полноценного сервиса JNDI (о чем уже писалось в форуме) и JMS, которые я, бывает, использую.

Так что думайте smile
PM MAIL Skype GTalk Jabber YIM   Вверх
Barvetal
Дата 28.3.2006, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Цитата(tux @ 28.3.2006, 02:07)
Но меня бы, например, Tomcat как production не устроил бы поскольку у него нет полноценного сервиса JNDI

А что, вы используете EJB? Или JNDI еще где-то применяют?
PM MAIL   Вверх
tux
Дата 28.3.2006, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Используем и EJB и JNDI. А без JNDI как? На него ведь в J2EE многое завязано.
PM MAIL Skype GTalk Jabber YIM   Вверх
Barvetal
Дата 28.3.2006, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Цитата(tux @ 28.3.2006, 11:31)
Используем и EJB и JNDI. А без JNDI как? На него ведь в J2EE многое завязано.

Дело в том, что исследуя технологию EJB 2.1, я пришел к выводу, что использование ее есть неэффективным.
Во первых, hibernate и JDO являются более легкими и эффективными решениями для маппинга данных, по сравнению с сущностными EJB. Во-вторых, spring framework является легким и эффективным фреймворком, и, как мне кажется, его можно использовать взамен сесионных бинов.
В-третьих, технология EJB 3.0, которая на данный момент уже в состоянии final draft, включает в себя именно технологии hibernate и spring, как ядро технологии.
Именно поэтому считаю, что использование EJB 2.1 не имеет смысла, и поэтому есть смысл либо использовать EJB 3.0 в апп серверах по типу JBoss, или прикручивать spring/hibernate к существующим контейнерам сервлетов.
В любом случае не вижу большого смысла в использовании JNDI.
Поэтому и говорю, что не вижу смысла в использовании аппсерверов с EJB 2.1...
Если ошибаюсь, подскажите плиз, буду очень благодарен...
PM MAIL   Вверх
tux
Дата 28.3.2006, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Цитата(Barvetal @ 28.3.2006, 16:44 Найти цитируемый пост)
Дело в том, что исследуя технологию EJB 2.1, я пришел к выводу, что использование ее есть неэффективным.
Во первых, hibernate и JDO являются более легкими и эффективными решениями для маппинга данных, по сравнению с сущностными EJB. Во-вторых, spring framework является легким и эффективным фреймворком, и, как мне кажется, его можно использовать взамен сесионных бинов.
В-третьих, технология EJB 3.0, которая на данный момент уже в состоянии final draft, включает в себя именно технологии hibernate и spring, как ядро технологии.
Именно поэтому считаю, что использование EJB 2.1 не имеет смысла, и поэтому есть смысл либо использовать EJB 3.0 в апп серверах по типу JBoss, или прикручивать spring/hibernate к существующим контейнерам сервлетов.

Готов подписаться под каждым словом. Просто дело в том, что у нас кой-какой софт начинал разрабатываться едва ли не в прошлом веке. Тогда, естественно, ни о каких Spring, Hibernate и т.п. и речи не было, все позднее появилось. Кроме того, общеизвестно как выглядит разработка веб-приложения с точки зрения Sun Microsystems, ну вот по тому пути и пошли. А приложения теперь хостить где-то надо. И вообще говоря, у EJB есть своя ниша - действительно большие системы, где нужна беспрецедентная масштабируемость, но в большинстве случаев EJB все-таки неоправданно используется.

Цитата(Barvetal @ 28.3.2006, 16:44 Найти цитируемый пост)
В любом случае не вижу большого смысла в использовании JNDI.

А вот здесь не согласен. Для многих задач JNDI мне кажется наиболее подходящим решением. JNDI вообще говоря представляет собой систему каталогов, к которой можно обращаться удаленно. Вот один из примеров, где использование JNDI оправдано - комплекс приложений с общей системой безопасности. Если приложения деплоятся на разных хостах, то возникает проблема как хранить информацию о правах пользователя, вот тогда JNDI и придет на помощь. И это не единственный способ применения. Про JNDI можно здесь почитать - http://forum.vingrad.ru/index.php?showtopic=83074.
PM MAIL Skype GTalk Jabber YIM   Вверх
w1nd
Дата 29.3.2006, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вертилятор
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 22.3.2006
Где: Москва

Репутация: 7
Всего: 54



Цитата

Дело в том, что исследуя технологию EJB 2.1, я пришел к выводу, что использование ее есть неэффективным.

Неэффективным для чего?

Цитата

Во первых, hibernate и JDO являются более легкими и эффективными решениями для маппинга данных, по сравнению с сущностными EJB.

Сущностные EJB предназначены отнюдь не только для маппинга данных из БД.
Цитата

Во-вторых, spring framework является легким и эффективным фреймворком, и, как мне кажется, его можно использовать взамен сесионных бинов.
В-третьих, технология EJB 3.0, которая на данный момент уже в состоянии final draft, включает в себя именно технологии hibernate и spring, как ядро технологии.

Только в двух серверах приложений есть более-менее сносная поддержка EJB3 - JBossAS и OracleAS. При этом пирог еще сырой. А использовать навесные framework'и на сервере - все равно, что ездить на грузовике в сортир. Так что пока для тех, кто использует сервера приложений, никаких альтернатив EJB2 нет и не предвидится еще как минимум в течение года.

Кстати, почему все называют hibernate или jdo технологией, тогда как первое - вполне определенный продукт, а второе - спецификация? Технология - ORM.

Это сообщение отредактировал(а) w1nd - 29.3.2006, 10:30


--------------------
user posted imageuser posted image
PM MAIL ICQ   Вверх
Barvetal
Дата 29.3.2006, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Цитата(tux @ 28.3.2006, 12:01)
Вот один из примеров, где использование JNDI оправдано - комплекс приложений с общей системой безопасности. Если приложения деплоятся на разных хостах, то возникает проблема как хранить информацию о правах пользователя, вот тогда JNDI и придет на помощь. И это не единственный способ применения. Про JNDI можно здесь почитать - http://forum.vingrad.ru/index.php?showtopic=83074.

За линк спасибо!

Кстати, а не проще и эффективнее ли хранить информацию о правах пользователя в какой-нибудь БД?
PM MAIL   Вверх
tux
Дата 29.3.2006, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Цитата(Barvetal @ 29.3.2006, 15:57 Найти цитируемый пост)
Кстати, а не проще и эффективнее ли хранить информацию о правах пользователя в какой-нибудь БД?

Четыре довода в пользу JNDI в сравнении с использованием БД (при условии что это комплекс приложений с общей системой безопасности):
  • в JNDI можно хранить обыкновенные объекты Java со всей информацией о правах пользователя, то есть отпадает этап преобразования "таблица БД - объект". Ну это, конечно, если абстрагироваться от того, как этот самый объект в JNDI попал smile
  • если эти самые приложения используют разные СУБД (бывает такое), то это вынуждает некоторые из них работать с двумя СУБД сразу, не бог весть какой недостаток, но неприятно
  • многие администраторы предпочитают не открывать БД вообще для удаленного доступа либо открывать только в нужном направлении. Тоже возможна проблема
  • при условии использования одного и того же сервера приложений (одной реализации сервиса JNDI) не нужно никаких дополнительных драйверов и т.п.

PM MAIL Skype GTalk Jabber YIM   Вверх
Barvetal
Дата 29.3.2006, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 181
Регистрация: 31.10.2005

Репутация: 5
Всего: 5



Цитата

Цитата

Дело в том, что исследуя технологию EJB 2.1, я пришел к выводу, что использование ее есть неэффективным.

Неэффективным для чего?

Для написания большинства корпоративных систем. Технология тяжелая и сложная. Для каждой записи данных необходимо создавать тяжелый класс со своей транзакционностью, безопасностью и т.д... CMP очень ограничены в функционале выборки данных... При помощи BMP, например, для вытаскивания N записей нужно N+1 обращение к бекэнд системе, вместо одного.
И вообще: http://www.javable.com/javaworld/12_01/01/

Цитата

Цитата

Во первых, hibernate и JDO являются более легкими и эффективными решениями для маппинга данных, по сравнению с сущностными EJB.

Сущностные EJB предназначены отнюдь не только для маппинга данных из БД.

конечно, еще и для маппинга в БД smile И для работы с нереляционными источниками. И для обеспечения транзакционности/безопасности (только это на уровне сущностных бинов в 99 процентах случаев не нужно)

Цитата
Только в двух серверах приложений есть более-менее сносная поддержка EJB3 - JBossAS и OracleAS. При этом пирог еще сырой. А использовать навесные framework'и на сервере - все равно, что ездить на грузовике в сортир.

А чем плохо использовать hibernate как "навесной framework"?

Цитата
Так что пока для тех, кто использует сервера приложений, никаких альтернатив EJB2 нет и не предвидится еще как минимум в течение года.

А что делать через год, когда выйдет EJB3, которая будет с принципиально-отличной архитектурой, чем EJB2? Переписывать все свои наработки за этот год? Нет уж, лучше использовать, пуская и не утвержденную, но EJB3, переделок при появлении спецификации будет при этом намного меньше...
И кроме того, лучше использовать хорошую нестандартизованную технологию hibernate, чем плохую специализированную EJB2.1, которая все равно скоро умрет...
Добавлено @ 11:48
Цитата(tux @ 29.3.2006, 11:22)
Четыре довода в пользу JNDI в сравнении с использованием БД (при условии что это комплекс приложений с общей системой безопасности)

Да, согласен, веские доводы...

Это сообщение отредактировал(а) Barvetal - 29.3.2006, 11:47
PM MAIL   Вверх
w1nd
Дата 29.3.2006, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вертилятор
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 22.3.2006
Где: Москва

Репутация: 7
Всего: 54



Цитата

Для написания большинства корпоративных систем. Технология тяжелая и сложная. Для каждой записи данных необходимо создавать тяжелый класс со своей транзакционностью, безопасностью и т.д... CMP очень ограничены в функционале выборки данных... При помощи BMP, например, для вытаскивания N записей нужно N+1 обращение к бекэнд системе, вместо одного.

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

Тяжести и сложности я вообще не усматриваю. Что сложного? Например, экскаватор много сложнее лопаты, так что - рыть котлован лопатой? Да это ни один заказчик оплачивать не станет. Сложно научиться использованию экскаватора? Не учитесь, не ройте котлованы, удовольствуйтесь клумбами, а котлованы будет рыть кто-то другой. Тестировать без сервера нельзя? Так ведь корпоративные системы на коленке не делаются и мощные сервера для разработки - данность.

Что касается ограничений в выборке CMP - тут, конечно, сложнее, но, к счастью, основные сервера реализуют примерно одинаковый набор расширений. Насчет количества выборок вы неправы, это зависит от настроек приложения и реализации BMP.

Цитата

А чем плохо использовать hibernate как "навесной framework"?
... лучше использовать хорошую нестандартизованную технологию hibernate, чем плохую специализированную EJB2.1, которая все равно скоро умрет...

Плохо тем, что не получится использовать давно существующие и отлаженные в серверах приложений механизмы кластеризации, мониторинга, управления и т. п. Плохо полным отсутствием поддержки со стороны производителя сервера. Да и сами подумайте: покупать ту же WebSphere ради того, чтобы прикрутить к ней hibernate и spring? Помилуйте.

И что значит - умрет? В день публикации финальной спецификации EJB3 ваше приложение работать перестанет, что ли? Кроме того, пока в реалиациях новой спецификации пофиксят все баги и вовсе тыща лет пройдет smile



--------------------
user posted imageuser posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0675 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.