IBM Lotus Domino с хранилищем IBM DB2 для пользователей почтовой системы Lotus Notes

Познакомьтесь с данными о производительности IBM Lotus Domino с функциональностью DB2, которые помогут спланировать вашу среду обмена сообщениями Lotus Domino. В данной статье приведены результаты тестов производительности этой функциональной возможности Lotus Domino 7 с использованием рабочей нагрузки R6Mail.

[Примечание редактора: Результаты, представленные в настоящей статье, получены на основе выполнения тестовых программ в управляемой среде. Хотя при создании тестовой программы были предприняты усилия по включению обычных пользовательских действий, реальные пользователи могут использовать Lotus Domino не так, как это сделано в тестовой программе. Следовательно, данные цифры должны восприниматься исключительно как информация для понимания относительной производительности версий Lotus Domino. Они не являются рекомендациями для реального развертывания. За помощью по планированию нагрузки обращайтесь к вашему поставщику аппаратного оборудования.]

Это первая статья о производительности IBM Lotus Domino 7 с хранилищем IBM DB2 (по сравнению с традиционным NSF-хранилищем) для пользовательских почтовых файлов. В данной статье рассматриваются IBM DB2 Universal Database (UDB) для Linux, UNIX и Microsoft Windows с Lotus Domino 7.0.1 и IBM DB2 V8.2 Fix Pack 9 (FP9). Lotus Domino с DB2-хранилищем была сначала доступна как ограниченная версия для пользователей Lotus Domino 7.0. В данной статье приведены результаты тестов производительности, эмулирующих пользователей почтовой системы Notes с использованием рабочей нагрузки R6Mail.

В данной статье показано, как Lotus Domino с DB2-хранилищем, работающая локально на той же самой аппаратной конфигурации, масштабируется до 15000 Notes-пользователей (эмулированных) на конфигурациях, в которых доступны адекватные ресурсы. В ней приведены результаты тестов, полученные на четырехпроцессорном сервере IBM pSeries, использующем один Domino-раздел и 64-битный экземпляр DB2, выполняющийся на AIX 5.3.

Главной целью этих тестов была демонстрация масштабируемости почтового сервера Domino с DB2-хранилищем для пользовательских почтовых файлов, которые достаточно велики для обычной развернутой корпоративной почтовой системы. Поскольку DB2-сервер может масштабироваться до нескольких терабайт данных, для каждого пользователя размер почтового файла начинался с 240 MB по сравнению с 20 MB в предыдущей статье о производительности Lotus Domino 7. Все конечные отчеты NotesBench используют начальный размер почтового файла примерно 20 MB для снижения требований к занимаемому хранилищем пространству во время выполнения тестов.

ПРИМЕЧАНИЕ: Назначение данной статьи - продемонстрировать производительность Lotus Domino с хранилищем IBM DB2. Эти данные не должны сравниваться с Lotus Domino и обычным NSF-хранилищем.

Все результаты представляют время реакции Lotus Domino, длящееся меньше секунды. Для целей тестирования выполняется только задание router (исключения оговариваются), для того чтобы избежать влияния данных от внешней активности. Мы надеемся, что вы найдете эту информацию полезной и узнаете об улучшениях, которых сможете добиться при использовании Lotus Domino 7 с DB2-хранилищем.

Конфигурация сервера

C настроенным хранилищем в 9 TB DB2 может поддерживать 15000 пользовательских почтовых файлов. Поскольку CPU не является ограничением для этого теста, мы запретили четыре CPU в логическом разделе (LPAR), используя команду bindprocessor на уровне операционной системы IBM AIX.

Сервер AIX также настроен на использование 32 GB пространства для свопинга или для страничной подкачки на одном из внутренних дисковых томов. В таблице 1 показана детальная конфигурация тестируемой системы.

Таблица 1. Детальная конфигурация тестируемой AIX-системы

Модель P560Q
Тип/скорость процессора Система содержит восемь физических Power5 CPU с тактовой частотой 1.5 GHz и установлена на одном LPAR. Используемый для этих тестов LPAR настроен на применение четырех CPU.
Установленная память 32 GB of RAM
Активные физические приводы
  • IBM FastT DS4800 с девятью секциями, заполненными 72G 15rpm приводами (каждая секция является также логическим томом)
  • Пять внутренних дисков
Активные логические тома
  • Девять RAID 0 томов на FastT для DB2-данных, которые содержат базу данных DOMINO, сохраняя все пользовательские почтовые файлы и журнал транзакций базы данных DB2. Первый логический том имеет также каталог данных Domino, содержащий файлы mail.box и names.nsf (JFS2).
  • Один внутренний логический том для ведения журналов транзакции Domino (при использовании)
  • Один внутренний логический том для исполняемых файлов Domino
  • Один внутренний логический том для исполняемых файлов DB2
  • Один внутренний логический том для хранения всех данных для тестирования и результатов
  • Один логический том для операционной системы
Операционная система IBM AIX 5.3

Мы создали DB2 UDB V8.2 FP9 с 64-битным экземпляром, обрабатывающий почтовое хранилище Domino для 15000 пользователей. Почтовые данные Domino полностью размещаются в одной базе данных под названием DOMINO в каталоге DB2. Мы настроили несколько менеджеров базы данных и параметры конфигурации базы данных DOMINO на оптимальную производительность, как указано в таблице 2.

Таблица 2. Детальная информация о тестируемой AIX-системе

Конфигурация менеджера базы данных DIAGLEVEL = 1
SHEAPTHRES = 20000
MAXAGENTS = 400
Все переключатели монитора базы данных по умолчанию поставлены в OFF
Конфигурация базы данных DOMINO DBHEAP = 102400
CATALOGCACHE_SZ = 25000
LOGBUFSZ = 256
UTIL_HEAP_SZ = 5000
LOCKLIST = 4096
SHEAPTHRES_SHR = 8192
SORTHEAP = 1024
STMTHEAP = 8192
APPLHEAPSZ = 1024
PCKCACHESZ = 100000
MAXLOCKS = 75
CHNGPGS_THRESH = 50
NUM_IOCLEANERS = 16
NUM_IOSERVERS = 3
MAXAPPLS = 300
MAXFILOP = 1900
LOGFILSIZ = 16384
LOGPRIMARY = 40
LOGSECOND = 5
SOFTMAX = 240
Переменные Db2set DB2_ASYNC_IO_MAXFILOP=10000
DB2_HISTORY_FILTER=T
DB2_USE_ALTERNATE_PAGE_CLEANING=YES
Параметры BufferPool 1.6GB Bufferpool для базы данных DOMINO

База данных DOMINO в DB2 настроена по умолчанию на группирование 10:1. Это означает, что 10 пользовательских почтовых баз данных размещены в одном табличном пространстве (tablespace) в базе данных DB2. Каждый пользовательский почтовый файл начинается с размера 240 MB, каждое табличное пространство в DB2 имеет размер приблизительно 2.4 GB; существует 1500 табличных пространств в девяти логических томах RAID 0 (настроенных с файловыми системами JFS2).

Lotus Domino 7.0.1 установлен на LPAR под своей собственной учетной записью UNIX (являющейся частью группы DB2 admin) и настроен на работу с DB2, как описано в "Справочном руководстве администратора Lotus Domino". Мы установили дополнительный 32-битный экземпляр DB2 под этой учетной записью для CLI-доступа сервера Domino, но этот экземпляр не запускается во время тестирования. Мы также настроили несколько параметров Notes.ini для оптимизации производительности сервера Domino.

Параметры Notes.ini

INI-параметры с префиксом DB2 предназначены, в основном, для Lotus Domino с DB2-хранилищем. Другие INI-параметры относятся к NSF-хранилищу. Причиной установки NSF_BUFFER_POOL_SIZE_MB меньше, чем DB2, является то, что DB2 буферизирует все данные почтовой базы данных, поэтому для Lotus Domino не требуется большой bufferpool, который кэширует данные почтовой базы в оперативной памяти.

NSF_Buffer_Pool_Size_MB=210
Server_Pool_Tasks=100
Server_Max_Concurrent_Trans=100
NSF_DbCache_MaxEntries=15000
ServerTasks=Router,LDAP
DB2DMS_CREATE_SIZE=400
DB2DMS_EXTEND_SIZE=256
DEBUG_DB2SEARCH_CTL=00030005
DB2NIF_POOLSIZE_MB=320
DB2POOLRESIZEMAX=250

Данные производительности для Lotus Domino с DB2-хранилищем

При запуске теста R6Mail с использованием NotesBench мы обнаружили, что Lotus Domino 7 с DB2-хранилищем может поддерживать 15000 пользователей на четырехпроцессорном сервере AIX. На рисунке 1 показаны характеристики производительности сервера как функция нагрузки (эмулированные пользователи).

Рисунок 1. Производительность сервера как функция нагрузки

Как показано на рисунке 1, Lotus Domino с DB2-хранилищем масштабируется линейно с количеством эмулированных R6Mail-пользователей до максимума в 15000 пользователей, протестированных в данной конфигурации. Нет ограничений по аппаратным ресурсам на данном сервере, за исключением ограничений в дисковом пространстве для хранения более объемных пользовательских почтовых файлов.

Поскольку в данной конфигурации мы использовали 64-битный экземпляр DB2, мы настроили несколько размеров пулов памяти и размеры кучи для использования преимуществ 32 GB физической RAM; в частности, bufferpool для базы данных DOMINO в DB2 был увеличен до 1.6 GB для кэширования большего объема данных. Для 15000 R6Mail-пользователей мы увидели 80 процентный коэффициент использования на сервере DB2. Также, поскольку Lotus Domino генерирует много различных уникальных SQL-команд для доступа к данным в DB2, мы увеличили пакетный кэш (package cache), указываемый параметром конфигурации базы данных PCKCACHESZ, до 400 MB. Для 15000 R6Mail-пользователей сервер DB2 выполняет в среднем 160000 SQL-команд в минуту, включая команды SELECT, INSERT, DELETE и UPDATE.

Lotus Domino использует пул соединений для всех SQL-запросов к DB2. Для ограничения максимального количества параллельных приложений, которые могут работать на сервере DB2, мы установили MAXAPPLS в 300. Этот параметр контролирует ресурсы, например, общую кучу приложений, используемую параллельными приложениями на сервере DB2. Этого все еще достаточно для поддержки высокой параллельности запросов к DB2 от 15000 R6Mail-пользователей. Для 15000 R6Mail-пользователей мы увидели примерно 240 параллельных агентских процессов DB2, выполняющихся на сервере. Этот параметр должен быть настроен в производственной среде на основе количества параллельных запросов к DB2. Мы определили, что 150-200 - это хорошее начальное значение параметра конфигурации базы данных MAXAPPLS для Lotus Domino с DB2-хранилищем.

Значения Server_Pool_Tasks и Server_Max_Concurrent_Trans в Notes.ini установлены на поддержку большого количества конечных пользователей. Однако перед изменением значений по умолчанию этих параметров рекомендуется проанализировать их для оптимизации используемых значений.

Резюме

В настоящее время Lotus Domino 7 с традиционным NSF-хранилищем поддерживает одновременно 15000 пользователей почтовой системы Notes, используя рабочую нагрузку R6Mail почти на всех серверных платформах.

Используя Lotus Domino 7, мы хорошо поработали над обеспечением масштабируемого сервера Domino с DB2-хранилищем для хранения Domino-данных - как почтовых файлов, так и прикладных данных. Мы продемонстрировали, что Lotus Domino 7.0.1 с DB2-хранилищем для почтовой среды может легко поддерживать одновременно 15000 пользователей почтовой системы Notes, используя рабочую нагрузку R6Mail, при условии, что сервер имеет достаточно ресурсов процессорного времени и оперативной памяти.

Мы также хотели показать, что DB2 может хранить несколько гигабайт или терабайт данных с большими и более реальными размерами почтовых файлов. Приведенные здесь результаты продемонстрировали масштабируемость почтового сервера Domino с DB2-хранилищем пользовательских почтовых файлов, размер которых достаточно велик для представления типичной корпоративной почтовой среды.

Мы выполнили тщательное тестирование и анализ производительности для оптимизации как кода Lotus Domino 7 (и выше), так и сервера DB2 8.2 для достижения такой масштабируемости. Мы будем продолжать улучшение потребления ресурсов и оптимизацию конфигурации Lotus Domino с DB2-хранилищем в готовящихся версиях Lotus Domino, для того чтобы обеспечить хорошую альтернативу традиционному NSF-хранилищу.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=2965