2014-12-03 3 views
1

Мне нужно увеличить производительность портала Liferay 6.2, работающего в vm с 6 ГБ оперативной памяти. Увеличение Xmx и Xms выше 3 ГБ не помогает.Liferay Performance - Как запустить несколько jvms

Так что я наткнулся на это здесь пункте из Liferay User-Guide:

Обратите внимание, что существует закон убывающей отдачи на память, особенно с 64-битных систем. Эти системы позволяют создавать очень большие JVM, но чем больше JVM, тем больше времени потребуется на сбор мусора . По этой причине вы, вероятно, не захотите, чтобы создавали JVM размером более 2 ГБ. Чтобы воспользоваться преимуществами более высоких объемами памяти на одной системе, запустите несколько JVMs Liferay вместо.

Теперь, как бы я запускал несколько JVM Liferay? Я имею в виду, что я мог бы легко запустить два кота на разных портах (например, 8080 и 8082), но я думаю, что эти два экземпляра должны быть связаны каким-то образом?

Сценарий:

  • Liferay 6.2 EE
  • Tomcat 7
  • Очень ограниченное количество одновременных пользователей (5 макс.)
  • Один сайт, с одной страницы и один пользовательский портлет (+ LR портлета входа), работающий на нем
  • Очень ограниченный объем данных (последний свалка моих портлетов был 30 МБ)
  • Нет внешнего, без крючка. Простой портлет JSF, который ничего не делает, кроме грубой работы.
  • базы данных 11g Oracle (работает на той же машине, на данный момент)

(я знаю, что это не сценарий для портала, но клиент хочет и довольно устойчив к советам)

Загрузка страница занимает до 45 секунд, прежде чем пользователь сможет войти в систему. Я не могу дать вам спецификации vm (Hyper-V работает CentOS), но это не будет что-то удивительное (читайте с низким бюджетом).

Спасибо, ~ Fabi

+0

Я думаю, что нашел что-то многообещающее (ручка): http://www.liferay.com/de/community/wiki/-/wiki/Main/High+Availability+Guide – FeinesFabi

+0

Основная проблема заключается в том, что это только полезно когда мы хотим повысить производительность для одновременных пользователей. – FeinesFabi

+0

Почему вы считаете, что память является причиной медленности вашего портала? вы проводили мониторинг деятельности GC? полностью ли используется куча 6 ГБ? –

ответ

1

мне нужно реорганизовать мои заявления - извините, если это ухудшит история потока.

Прежде всего, в системе с одной страницей и 5 пользователями вы ничего не получите при настройке кластера. С ответом на 45 секунд у вас есть серьезная проблема в другом месте, а не там, где вы сейчас думаете. Что касается информации, которую вы даете, можно только догадываться - но даже это не будет хорошей догадкой - где эти проблемы. Они, разумеется, не требуют второго экземпляра. И я получу эту чрезмерно конкретную инструкцию в исправленных документах.

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


Вам нужно будет измерить его самостоятельно, если для вас требуется требование к одеялу 2G max. Есть некоторые порталы, которые связаны с памятью, некоторые из них связаны с ЦП, некоторые из них связаны с I/O или базой данных. Вам нужно будет самостоятельно проверить, что ограничивает производительность вашего конкретного приложения. Возможно, вам захочется проверить техническую документацию по производительности Liferay (доступную на клиентском портале, поскольку вы, похоже, являетесь подписчиком EE), и определяете характер вашего приложения и какую производительность вы можете ожидать.

В случае, если ваш портал связан с CPU, два портала на той же виртуальной машине не помогут вообще. Вы должны скорее взглянуть на фактическое узкое место и исправить это. Время ответа в 45 секунд - если только при очень высокой нагрузке - указывает на проблему, которую я не могу вообразить, чтобы решить ее с помощью кластера.

Для документирования настройки кластера, вы можете проверить инструкции в User's Guide или имеющемся материале на новом сайте беты документации https://dev.liferay.com

Кроме того, в течение нескольких дней (я в середине постпродакшн) Я опубликую эпизод Radio Liferay по мониторингу эффективности приложений, а в будущем, возможно, серию эпизодов по этой теме (планируется) - в настоящее время номер 3 в очереди - вероятно, эпизод 44.

Кроме того, кластеризация - это (почти полный день) в разделе System Administration Training. Наконец, когда вы упоминаете EE, есть clustering plugin for EE, оптимизируя взаимодействие кластера, которое происходит. Но имейте в виду, что вам может потребоваться две подписки EE для запуска двух экземпляров в кластере. Я упоминаю об этом здесь для полноты, а не потому, что думаю, что этот плагин поможет в вашем случае.

После того, как я написал все это, я вижу, что вы используете Oracle на той же машине, что и Liferay, - с этой конфигурацией другой экземпляр Liferay на той же машине определенно не поможет, если вы будете придерживаться 6G RAM. Фактически, причиной вашей плохой производительности может быть использование виртуальной памяти: как только ваш сервер выгружает память на диск, вы получаете тост. Обратите внимание, что либо гостевой компьютер VM, либо даже хост VM может быть тем, кто делает пейджинг. Вы - огромный стек тостов, если оба одновременно меняют память.

Смежные вопросы