Я пытаюсь создать файл worker.properties, чтобы mod_jk взаимодействовал с веб-сервером Apache 2.2.x. Документ администрирования GlassFish 3.1 включает следующий пример для worker.properties:
# Define 1 real worker using ajp13
worker.list=worker1
# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
# GlassFish server settings
maxThreads=256
Предполагается ли в этом примере, что mod_jk / Glassfish установлен на другом физическом сервере, чем веб-сервер Apache? В частности, если в моей ситуации, когда веб-сервер Apache, Glassfish и mod_jk находятся на одном физическом сервере, нужно ли мне указывать номер порта (например, 8009)?
То есть я думал, что концепция портов заключалась в облегчении межмашинного взаимодействия. Если все находится на одной машине, нужен ли им вообще номер порта для связи? Или порт 8009 нужен по какой-то другой причине? В моей ситуации я бы хотел использовать веб-сервер Apache в качестве интерфейса для Glassfish, чтобы Glassfish не общался напрямую с внешними клиентами.
Итак, главный вопрос здесь заключается в том, как адаптировать приведенный выше пример файла для случая, когда все установлено на одном сервере, а Glassfish использует mod_jk как простой проход с веб-сервера Apache?
Второй вопрос: каково максимальное количество maxThreads
можно установить? (Это ограничено протоколом AJP13 или чем-то еще?)
У вас есть пара вопросов, я постараюсь ответить на них по порядку.
То есть я думал, что концепция портов заключалась в облегчении межмашинного взаимодействия. Если все находится на одной машине, нужен ли им вообще номер порта для связи?
Да и нет. Порты используются для того, чтобы несколько служб на основе IP могли общаться друг с другом. Это не обязательно означает, что это компьютер к компьютеру. На самом деле это только означает, что вы разговариваете со службой на основе IP.
Итак, главный вопрос здесь заключается в том, как адаптировать приведенный выше пример файла для случая, когда все установлено на одном сервере, а Glassfish использует mod_jk как простой проход с веб-сервера Apache?
Пример правильный, вам все равно нужно указать порт ajp, иначе mod_jk не сможет подключиться к экземпляру. Даже если подумать, что это на том же компьютере, вы все еще подключаетесь к IP-сокету - это просто через адаптер обратной петли, а не стандартный адаптер, такой как eth0
Второй вопрос: какое максимальное количество maxThreads можно установить? (Это ограничено протоколом AJP13 или чем-то еще?)
Я думаю, что это просто INT, но я настоятельно рекомендую НЕ устанавливать для него самые высокие настройки - начните где-то с 256, это хорошая отправная точка и отслеживайте, что происходит с вашим приложением и сколько подключений ему действительно нужно.