Сервер приложений Java с малым объемом памяти

Мы разработали облегченное Java-приложение Jersey/JSON/JMS, которое служит связующим звеном между устаревшей системой MS Access клиента и нашим сервером приложений. Этот коннектор устанавливается на клиентском сервере.

До сих пор мы использовали Glassfish 3.1.2 в качестве сервера приложений, но потребление памяти огромно (400-900 МБ только для размещения этого конкретного приложения, даже в веб-профиле!).

Мы ищем легкий сервер приложений, который прост в использовании (поддерживает JDBC/ODBC, Jersey, JMS и пользовательские ресурсы JNDI), использует менее 300 МБ памяти и имеет веб-интерфейс для настройки и развертывания.

Какие серверы приложений подходят для наших нужд? Есть ли способ уменьшить потребление памяти Glassfish до 400 МБ?


person RRB    schedule 14.08.2012    source источник
comment
Рассматривали ли вы профилирование использования памяти вашим приложением?   -  person Bill    schedule 14.08.2012
comment
Проблема в том, что Glassfish без каких-либо установленных приложений потребляет более 400 МБ оперативной памяти в 64-битной системе, и это определенно слишком много для этого небольшого приложения.   -  person RRB    schedule 14.08.2012


Ответы (2)


Вы можете использовать Jetty. Jetty предоставляет HTTP-сервер, HTTP-клиент и javax. .servlet контейнер.

Он обычно используется для модульного тестирования кода сервлета в контейнере, потому что это быстро запускаемый, урезанный контейнер сервера Java EE, но, тем не менее, это настоящий сервер приложений.

person Bohemian♦    schedule 14.08.2012
comment
Спасибо. Я попробую и отпишусь здесь о своих результатах. Дополнительные предложения приветствуются! Не похоже, что для Jetty существует графический интерфейс веб-администратора? - person RRB; 14.08.2012

Я наконец нашел решение. Поскольку наше приложение не требует много памяти, 32-битный экземпляр Glassfish удовлетворяет наши потребности. Он использует с графическим интерфейсом администратора и нашим приложением около 250 МБ памяти, что нормально. Jetty может использовать меньше памяти, но не имеет графического интерфейса администратора, и, кроме того, нам проще управлять одним типом сервера приложений, чем двумя.

person RRB    schedule 14.08.2012