действительно необходимо выполнить Apache как фронтенд к Glassfish/JBoss/Tomcat?

Если у Вас есть 2 машины, позволяет и с четверкой cor процессорам и с 8 - 16 ГБ памяти в каждом поле, то Вы готовите на газе! можно выполнить до 4 серверов легко на каждом сервере. Как Вы сказали, Вы знакомы с VMware, затем используете ESXI (hvmware.com/products/esxi/) или думаете о Xenserver (http://www.citrix.com/lang/English/lp/lp_1688615.asp), оба освобождают, но Xen требует обработки на 64 бита.

Можно легко купить обычные материнские платы класса ПК, которые поддерживают до 16 ГБ памяти, они стоят больше чем 80£ здесь в Великобритании. Конечно, можно купить высококачественные материнские платы, но тем не менее я думаю, что можно установить vm инфраструктуру дома со сдвижением с места приблизительно 500£, и это включает маленькое san устройство также.Удачи

14
задан 3 February 2011 в 17:56
5 ответов

Большинство людей собирается сказать, что Вам нужно что-то впереди из-за статических файлов.

Это является несколько немым потому что:

  • Можно настроить Tomcat для использования того же IO в качестве апача с APR
  • Необходимо использовать CDN (Сеть доставки контента) так или иначе.

Настоящая причина Вам нужно что-то перед tomcat/jetty/jboss для загрузки обработки отказа дескриптора и баланса.

Я рекомендую не слушать "... Механизмом Tomcat является Ахиллесова пята всей экосферы...", поскольку все мы знаем, что это не верно..., Ваша база данных и ее организация пула подключений будут этим.

8
ответ дан 2 December 2019 в 21:10

Это зависит от экосистемы вокруг Вашего приложения. В среде интранета - Вам, вероятно, ничто не нужно перед Tomcat.

Если один в Интернете как общедоступный сервис, это зависит. Apache хорош из-за модулей, которые он обеспечивает как mod_security. Но если Вы не хорошо осведомлены с конфигурацией апача (или ngix) - затем Вы могли подвергнуть себя ЕЩЕ БОЛЬШЕМУ КОЛИЧЕСТВУ нападений или точек отказа из-за неверной конфигурации.

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

FAQ Tomcat действительно также говорит об этом также, которое обращается к некоторым дополнительным точкам: http://wiki.apache.org/tomcat/FAQ/Connectors#Q3

4
ответ дан 2 December 2019 в 21:10

Apache не является хорошим кандидатом для обслуживания статического содержания из-за его характера мультипроцесса. Nginx подходит лучше, так как он использует асинхронный ввод-вывод для обработки запросов. Современные Коты могут использовать асинхронный ввод-вывод (NIO в терминологии Java) также. Например, необходимо установить tomcat-native пакет в Fedora, чтобы заставить Tomcat использовать асинхронный ввод-вывод.

1
ответ дан 2 December 2019 в 21:10

Удивительный, некоторые из этих ответов - делают какого-либо из Вас, люди на самом деле возрастают, многоярусная производительность и Tomcat mutli-сервера поддержала веб-сайты? OP, Ваша исходная гипотеза, что Tomcat не является "медленным"..., ошеломляют. Механизмом Tomcat является Ахиллесова пята всей экосферы.

Да, Вы хотите Apache впереди - он обеспечивает прежде всего mod_rewrite (Вы уже реализовали UrlRewriteFilter в своем Tomcat?), а также htaccess файлы, которые делают защиту веб-сервера настолько важной. Apache может позволить Вам загрузить узлы Tomcat баланса позади него, служить Вашему статическому намного более быстрому содержанию и вытащить лучшую производительность из Tomcat, потому что Вы не перегружаетесь, это - канал запроса с не-Java (js/css/html/jpg/etc). вещи. Можно разгрузить SSL в Apache (не разгрузив в аппаратных средствах LB) легко и даже не иметь для контакта с той пародией, названной Java Keystore. Существует именно так много побед - можно настроить mod_jk на узлы базы данных для удержаний от переполнения плохого небольшого мозга Java, потому что это обычно не может обрабатывать крупный трафик со средними классами кодера Java.

Остерегайтесь любого, кто говорит Вам, что Apache (или nginx, и т.д. - но производительность Apache затмит Tomcat так или иначе, таким образом, это не будет иметь значения) не является хорошей идеей перед Tomcat.

1
ответ дан 2 December 2019 в 21:10

Если это - просто вопрос обязательного порта полномочий, не будучи корнем при использовании Tomcat, Вы не должны выходить на него с Apache httpd. Tomcat поставками по умолчанию с jsvc то, что необходимо скомпилировать.

jsvc сервисная обертка Java должна запустить Tomcat как услуга. Этот сервис запускается как корень, но запустите Tomcat как обычного пользователя. Таким образом, можно связать Tomcat с привилегированными портами.

Я не знаю о Glassfish, но уверен, что решения существуют и если не можно, конечно, использовать методы перенаправления портов (iptables, и т.д....)

Я думаю, что выбор противостояния на сервер приложений с веб-сервером (Apache httpd, например) для выравнивания нагрузки, кластеризируясь, или служите статическим ресурсам только с веб-сервером и динамическими ресурсами с сервером приложений.

0
ответ дан 2 December 2019 в 21:10

Теги

Похожие вопросы