Примечание редактора. Много знаете по данной теме? Хотите поделиться своим опытом? Примите участие в создании wiki по программному обеспечению IBM Lotus.
| IBM Lotus Notes and Domino wiki |
|---|
Производительность XPages была одним из главных приоритетов при разработке версии 8.5.2 сервера Lotus Domino. XPages дает возможность легко реализовать Web 2.0-стиль в существующих web-приложениях Lotus Domino. Для оптимизации скорости работы среды исполнения и элементов дизайна XPages мы использовали базу данных обсуждений в классическом варианте Lotus Domino и в варианте XPages (реализован начиная с Lotus Domino 8.5). Классическая база данных обсуждений масштабируется до 200 одновременно работающих пользователей. Новая усовершенствованная база данных обсуждений на основе XPages в Lotus Domino 8.5.2 масштабируется до втрое больших значений количества одновременно работающих пользователей и страниц в секунду, чем классическая база данных обсуждений.
Измерения, приведенные в данной статье, выполнялись при помощи IBM Rational® Performance Tester версии 8.1 и сервера Lotus Domino 8.5.2 с использованием классической базы данных обсуждений и базы данных обсуждений на XPages. Rational Performance Tester моделировал интернет-пользователей, осуществляющих выполнение или просмотр общих операций с использованием одного сервера Lotus Domino. Каждый пользователь выполнял следующую последовательность операций:
- Вход в систему.
- Просмотр всех документов.
- Чтение пяти документов.
- Ответ на документ.
- Просмотр по категориям.
- Чтение следующих пяти документов.
- Создание темы.
- Выполнение поиска.
- Чтение документа после поиска.
- Выход из системы.
Конфигурация оборудования и сервера Lotus Domino
Сервер Lotus Domino был развернут на сервере Intel X5450 с четырьмя процессорами под управлением 64-разрядной операционной системы Microsoft® Windows® 2003 Enterprise Edition. Система имела 8 ГБ памяти и один локальный жесткий диск. Для сети использовался сетевой интерфейс Gigabit Ethernet (см. таблицу 1).
Таблица 1. Конфигурация оборудования
| Модель | Intel X5450 |
|---|---|
| Процессоры для тестирования и скорость | 4 процессора частотой 3.0 ГГц |
| Память | 8 ГБ |
| Активные физические диски | 1 локальный диск |
| Активные логические тома | Нет |
| Операционная система | 64-разрядная Microsoft Windows 2003 Enterprise Edition SP2 |
База данных обсуждений с включенной полнотекстовой индексацией содержала 113000 документов и 23 категории. Размер классической базы данных обсуждений составлял 270 МБ с шаблоном discussion7.ntf из Lotus Domino 7.0, а базы данных обсуждений на XPages - 700 МБ с шаблоном discussion8.ntf из Lotus Domino 8.5.2. Для тестирования и сравнения производительности классической и XPages-баз данных обсуждений использовался один сервер Lotus Domino 8.5.2. При проведении сравнения журналирование транзакций Lotus Domino было отключено. См. таблицу 2.
Таблица 2. Конфигурация программного обеспечения
| База данных | Описание |
|---|---|
| База данных обсуждений на XPages | Discussion8.ntf из Lotus Domino 8.5.2 |
| Классическая база данных обсуждений | Discussion7.ntf из Lotus Domino 7.0 |
| Настройки Notes.ini в дополнение к обычно применяемым для данных тестов | HTTPJVMMaxHeapSizeSet=1 |
Результаты тестирования производительности
На рисунках 1-4 показаны результаты для классической базы данных обсуждений на Lotus Domino 8.5.2 и базы данных обсуждений XPages на Lotus Domino 8.5.2. Каждый интервал показывает среднее значение за один час для установившегося состояния после подключения каждого дополнительного набора одновременно работающих пользователей.
На рисунке 1 показан процент загрузки процессора и общее количество запрошенных страниц в секунду (total pages/second - TPS). До 200 пользователей загрузка процессора примерно одинакова для классической и XPages-баз данных обсуждений. Базу данных обсуждений на XPages удалось масштабировать до 500 пользователей при 15 TPS, в то время как классическую - только до 200 пользователей при 5.5 TPS. Для обоих наборов тестов в качестве приемлемого времени отклика была принята одна секунда.
Рисунок 1. Windows: процент загрузки процессора и общее количество страниц в секунду (TPS) в зависимости от количества пользователей
На рисунке 2 показано общее количество дисковых операций ввода-вывода в секунду при различных смоделированных пользовательских нагрузках. Классическая база данных обсуждений порождала меньше операций ввода-вывода для 200 пользователей при времени отклика менее одной секунды.
Рисунок 2. Windows: общее количество килобайтов, передаваемых с диска в секунду, в зависимости от количества пользователей
На рисунке 3 показан общий объем данных, передаваемых с диска в секунду, при различных смоделированных пользовательских нагрузках.
Рисунок 3. Windows: количество килобайтов, передаваемых по сети в секунду, в зависимости от количества пользователей
На рисунке 3 показано количество килобайтов, передаваемых по сети в секунду, при различных смоделированных пользовательских нагрузках. Классическая база данных обсуждений использовала вдвое больше пропускной способности сети, чем база данных на XPages, поскольку классическая база данных не поддерживает GZIP-сжатие, в то время как приложение XPages содержит код, выполняющий GZIP-сжатие.
Рисунок 4. Windows: загрузка процессора и общее количество страниц в секунду при времени отклика менее трех секунд в зависимости от количества пользователей
На рисунке 4 показаны результаты для классической базы данных обсуждений и базы данных обсуждений на XPages под Lotus Domino 8.5.2 при времени отклика менее трех секунд. Как показано на рисунке 4, при более чем 500 одновременно работающих пользователях для XPages-приложения наблюдается нелинейное увеличение загрузки процессора и повышение времени отклика. Это может быть связано с состязанием семафоров базы данных, вызванным попытками нескольких сотен пользователей получить доступ к одному приложению. Анализ производительности, проведенный при этой нагрузке, показывает, что среда исполнения XPages сама по себе не ограничивает масштабирование количества одновременно работающих пользователей для данного приложения.
В Lotus Domino 8.5.2 производительность приложения поддержки обсуждений на XPages повысилась. В три раза увеличилась масштабируемость по количеству пользователей; также повысились пропускная способность сети и производительность работы пользователей (количество транзакций в секунду). Благодаря новым возможностям и новому шаблону базы данных обсуждений, поддерживаемому XPages, увеличился возможный размер базы данных обсуждений.
Объяснение параметров Notes.ini
| Имя параметра Notes.ini | Пояснение |
|---|---|
| HTTPJVMMaxHeapSizeSet | HTTPJVMMaxHeapSizeSet=1, чтобы запретить серверу сброс значения HTTPJVMHeapSize ini с 256 М до 64 М |
- Примите участие в обсуждении материала на форуме.
- Оригинал статьи: IBM Lotus Domino 8.5.2 XPages discussion database server performance (EN).
- Участвуйте в создании IBM Lotus Domino wiki.
- Страница продукта IBM Lotus Notes and Domino на developerWorks®.
Кристофер Джонсон (Christopher Johnson) – сотрудник группы производительности IBM Lotus Domino, занимается в основном NotesBench и инструментами разработки Rational. С ним можно связаться по адресу chrisdjo@us.ibm.com. Он выполнял тестирование и писал сценарии тестирования для Rational Performance Tester.