Выбор сервера приложений для разработки веб-приложений - PullRequest
3 голосов
/ 22 апреля 2010

Мой менеджер попросил меня предложить сервер приложений для разработки веб-приложений.

Какие факторы необходимо учитывать, прежде чем мы выберем какой-либо сервер приложений для разработки веб-приложений при разработке Java J2EE?

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

Ответы [ 4 ]

3 голосов
/ 22 апреля 2010

Apache Tomcat и Jetty - два самых популярных веб-контейнера. Tomcat - эталонная реализация контейнера сервлетов Java, Jetty - немного быстрее и легче. Я лично поддерживаю Джетти, но вы не ошибетесь ни с одним из них. Небольшое сравнение этих двух можно найти здесь .

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

2 голосов
/ 23 апреля 2010

Хорошо написанное Java-приложение может быть развернуто в любом веб-контейнере, возможно, с небольшой внешней конфигурацией.

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

Для netbeans Tomcat прилагается, и это нормально. В Eclipse пока нет закрытого веб-контейнера, но поддерживается Tomcat.

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

2 голосов
/ 22 апреля 2010

Ответ заключается в том, что вы можете сделать более или менее сложным изменение контейнеров приложений на основе ваших методов разработки. Например, портал Liferay содержит пользовательские файлы конфигурации XML для многих контейнеров приложений, что позволяет использовать его во многих контейнерах. Так что, безусловно, возможно гибкое переключение, но вам необходимо заново выполнить все файлы конфигурации для сервера, и вы не можете полагаться на функции, специфичные для контейнера.

В некоторых случаях сами контейнеры затрудняют это. Например, загрузчик классов JBoss имеет ограниченную поддержку фактических стандартов J2EE и Java EE. Это позволяет легко полагаться на нестандартные функции, а в некоторых случаях практически невозможно использовать стандартные.

Помимо того, что ваш сервер приложений обеспечивает соблюдение стандартов, вам нужно убедиться, что вам нужен полный сервер приложений, а не просто контейнер сервлетов, как упоминалось выше. Вашему приложению нужны EJB или просто сервлеты? Если вы не занимаетесь разработкой EJB, то сервер приложений перегружен.

Если вы занимаетесь разработкой EJB или иным образом используете другие функции EE, помимо того, что поставляет контейнер сервлетов, подумайте об удобстве настройки и администрирования, а также о соответствии стандартам, и я думаю, вы найдете сервер, который соответствует вашим потребностям.

0 голосов
/ 23 апреля 2010

В чистых целях разработки мне нужен сервер с

  • Малой занимаемой площадью и минимальным временем запуска / остановки.
  • Плагины IDE

Итак, мой голос за Jetty для веб-приложения.

Если вы используете Netbeans, Glassfish тоже неплохой выбор, поскольку он показывает превосходную производительность благодаря гризли, использующему NIO.

...