Общий веб-сервер PAS
В основе веб-сервера PAS для OpenEdge лежит платформа Progress Application Server (PAS), которая поддерживает большинство веб-приложений, соответствующих стандарту Java Servlet 3.0. PAS представляет собой адаптированную версию продукта Apache Tomcat, работающего в Java Virtual Machine (JVM). Это означает, что PAS зависит от конфигурации потоков процесса JVM, распределения памяти и операций ввода-вывода (файловых и сетевых).
PAS и развёрнутые на нём веб-приложения OpenEdge и сторонних разработчиков настраиваются, отслеживаются и управляются аналогично обычным веб-приложениям Apache Tomcat, работающим в JVM. Для получения дополнительной информации о настройке Apache Tomcat и его JVM рекомендуется обратиться к специализированным ресурсам в интернете, содержащим советы и инструкции.
Измерение потребления ресурсов памяти и процессора PAS должно проводиться после полной загрузки всех веб-приложений и завершения первичного распределения памяти.
Потребление памяти сервером PAS
Потребление памяти JVM сервером PAS зависит от нескольких факторов, включая типы настроенных параметров сервера, количество развёрнутых веб-приложений, количество и размер одновременных клиентских запросов.
При достижении лимита памяти JVM для экземпляра PAS и необходимости поддержки дополнительных веб-приложений или загрузки клиентских данных, рекомендуется рассмотреть возможность запуска дополнительных экземпляров PAS, а также балансировку нагрузки между ними. Это относится к вопросам расширенной настройки и выходит за рамки данного документа.
В следующих разделах представлено краткое описание операций, потребляющих память и управляемых для оптимизации её использования.
Запуск PAS
Во время запуска PAS требует выделения памяти в куче и permgen. Количество дополнительных параметров сервера, запускаемых из конфигурационного файла Tomcat conf/server.xml, влияет на распределение памяти в permgen. Размер пулов объектов на уровне сервера, предназначенных для потоков и обработки клиентских запросов, требует наибольшего объёма ресурсов в куче.
Загрузка и запуск веб-приложений
После инициализации основного сервера PAS начинается процесс загрузки и запуска развёрнутых веб-приложений. Загрузка и запуск каждого веб-приложения требует ресурсов процессора, памяти кучи и permgen в зависимости от реализации веб-приложения. Каждое загруженное веб-приложение имеет собственный класс-загрузчик в иерархии загрузчиков классов Tomcat. Классы веб-приложений могут быть совместно использованы в памяти permgen, если они загружены загрузчиком классов, находящимся выше в иерархии. Если класс не загружён загрузчиком классов более высокого уровня, он может быть дублирован в памяти permgen для каждого веб-приложения, ссылающегося на него.
PAS становится доступным для клиентского доступа только после завершения загрузки и запуска всех развёрнутых веб-приложений. В процессе работы PAS, когда поступают клиентские HTTP-запросы, продолжается загрузка классов веб-приложений и распределение памяти. Рекомендуется проводить измерения ресурсов процессора и памяти после периода прогрева клиентских запросов ко всем развёрнутым веб-приложениям.
Примечание: Недостаток памяти в куче или permgen может препятствовать запуску PAS.