Продуктивність сервера Lotus Domino 7, Частину 1, Інтеграція додатків і даних, Бази даних, статті

Вийшли в світ Lotus Notes і Domino 7. Тепер кожен повинен знати, як вони працюють в порівнянні з попередніми версіями. У цій першій статті серії з трьох частин ми розглянемо процес тестування, яке було виконано для визначення того, як різні платформи Domino 7 виглядають у порівнянні з попередньою версією Domino. Увага! Є хороші новини для всіх адміністраторів!


Підвищення продуктивності і, отже, зменшення TCO, є головною темою Lotus Notes / Domino 7. Для NRPC-користувачів (Notes Remote Procedure Call, “рідний” поштовий протокол Notes / Domino) ми збільшили масштабованість, видаливши деякі внутрішні обмеження, і модернізували код для обслуговування більшої кількості користувачів на даному рівні використання процесора. В результаті, на більшості платформ Notes / Domino 7 показали зменшення завантаженості CPU з тим же самим кількістю R6Mail-користувачів. Економія CPU представила максимальний рівень поліпшення продуктивності, який ми хотіли б бачити в середовищі користувача.


Дана стаття є першою в серії з трьох частин, в якій ми розглядаємо поліпшення продуктивності, яку ми виміряли, порівнюючи Lotus Notes / Domino 7 з версією 6.5. У даній статті увага концентрується на результатах тестів продуктивності, емулює Notes-користувачів шляхом використання робочого навантаження R6Mail. Ми наведемо результати тестування, отримані на різних платформах. Ці результати отримані для одного розділу Domino, що не використовує ведення журналів транзакцій, за винятком обумовлених випадків. Ми покажемо результати Domino 7 з одними поштовими файлами, заснованими на версіях поштового шаблону Notes 6.5 і Notes 7. Кожна з них порівнюється з сервером Domino 6.5, призначені для користувача поштові файли якого засновані на шаблоні Notes 6.5. Це показує, чого очікувати від міграції, в якій перетворення користувацьких поштових файлів в шаблон Domino 7 може відбутися після оновлення сервера.


Всі результати становлять час реакції Domino, що триває менше секунди. Для цілей тестування виконується тільки завдання router (виключення обмовляються) для того щоб уникнути залежності даних від зовнішньої активності. Ми сподіваємося, що ви знайдете цю інформацію корисною і дізнаєтеся про поліпшення, зроблених в Notes / Domino 7.


Примітка: Результати, наведені в цій статті, були отримані при використанні тестів продуктивності, які виконуються в керованому середовищі. Хоча і були зроблені певні зусилля при створенні тестової програми по включенню в неї звичайних користувальницьких дій, реальні користувачі можуть використовувати Notes і Domino не так, як це зроблено в тестовій програмі. Отже, ці цифри повинні сприйматися виключно як інформація для розуміння відносної продуктивності версій Domino. Вони не є рекомендаціями для реального розгортання. За допомогою з планування навантаження звертайтеся до вашому постачальнику апаратного обладнання.


Також, хоча ми наводимо результати для різних апаратних платформ, їх конфігурації не уніфіковані за ресурсами. Нашим завданням було вимірювання продуктивності самого Domino, і ці дані не повинні використовуватися для порівняння однієї платформи з іншого.


Робоче навантаження R6Mail


Робоче навантаження, використовувана в тестах продуктивності в даній статті, є робочим навантаженням R6Mail з інструментального засоби вимірювання продуктивності server.load, включеного в продукт Domino.


Однак на високому рівні середи тестування продуктивності складається з набору генеруючих навантаження робочих станцій, кожна з яких емулює Notes клієнт-серверні дії до 1500 віртуальних користувачів. Ми додавали додаткові генератори навантаження до тих пір, поки не бачили часи реакції, в середньому перевищують одну секунду. На сервері Domino ми налаштували Domino Directory для обробки відповідного числа віртуальних користувачів в тесті, та надали кожному з цих користувачів власний поштовий файл в каталозі даних.


Кожен з віртуальних користувачів виконував такі завдання за 90-хвилинний період:































Дії за кожні 90 хвилин  Робоче навантаження R6Mail  
Відкриття папки з вхідною поштою 6
Читання повідомлення 30
Видалення повідомлення 12
Додавання повідомлення в папку вхідних повідомлень 12 (50 KB)
Передача повідомлення трьом одержувачам 1 (100 KB average)
Передача запрошення трьом одержувачам 1
Передача RSVP 1
Закриття папки з вхідною поштою 6

Розбиття цієї робочої навантаження на низькорівневі транзакції Domino показує наступний розподіл:











































Тип транзакції  Відсоток 
Читання вхідних документів 25
Додавання документів 25
Відкриття папки з вхідною поштою 10
Читання папки з вхідною поштою 10
Видалення документів 10
Підготовка / передача RSVP 5.8
Зміна документів 5
Закриття папки з вхідною поштою 5
Перегляд / перевірка каталогу 1.7
Підготовка / передача повідомлення 0.8
Підготовка / передача запрошення 0.8
Створення призначення 0.8

У наступних розділах даної статті наведені результати нашого тестування для різних платформ.


AIX


Для тестування на AIX ми використовували наступне апаратне забезпечення:






















Модель P670
Кількість CPU 32 фізичних Power4 CPU з тактовою частотою 1.4 GHz, розділених на три логічних розділу (LPAR). LPAR, який ми використовували для цих тестів, був налаштований на вісім CPU.
Встановлена ​​оперативна пам’ять Тестовий LPAR має 32 GB RAM.
Активні фізичні диски 64 SSA дисків, розбитих на чотири секції для Domino Binaries і Domino Data (кожна секція є також логічним томом).
15 дисків по 9GB на диск, і 1 диск 9GB для JFS Log.
Активні логічні томи П’ять:

  • чотири логічних томи для Domino Binaries і Domino Data (JFS 2)
  • один логічний тому для операційної системи
Операційна система AIX 5.2

Для оптимізації продуктивності ми встановили такі параметри у файли Notes.ini тестових серверів:










Domino 6.5 Domino 7
NSF_Buffer_Pool_Size_MB=210
Server_Pool_Tasks=64
Server_Max_Concurrent_Trans=64
NSF_DbCache_MaxEntries=2000
ServerTasks=Router,LDAP,HTTP,SMTP
Server_Transinfo_range=12
NSF_Buffer_Pool_Size_MB=210
Server_Pool_Tasks=100
Server_Max_Concurrent_Trans=100
NSF_DbCache_MaxEntries=2000
Server_Transinfo_range=12
ServerTasks=Router,LDAP,HTTP,SMTP

AIX використовує архітектуру з сегментированием пам’яті, яка обмежує загальну кількість сегментів, що використовуються для спільної пам’яті і купи. Тому ми використовували дуже маленьке значення NSF_Buffer_Pool_Size. Це дозволило досягти в тестах високого рівня емуляції користувача. У реальному виробничої конфігурації ми рекомендували б встановити NSF Buffer Pool Size в більш високе значення. Значення Server_Pool_Tasks і Server_Max_Concurrent_Trans були встановлені для підтримки великого кількості кінцевих користувачів. Перед зміною значень за замовчуванням для цих параметрів, рекомендується проаналізувати їх для оптимізації використовуваних значень.


Наші тести працювали з мінімальною кількістю ServerTasks, що не типово для виробничого середовища. Ми рекомендуємо установку параметра Notes.ini Server_Transinfo_range на всіх робочих машинах. Визначення його встановлюваного значення має бути ітеративним процесом, заснованим на моніторингу Server Expansion Factor і Server Availability Index. Для повного розуміння цих значень і параметрів зверніться до розділу по конфігурації Server Availability Index “довідковій адміністратора Domino”.


Наше лабораторне тестування показало, що на p670 LPAR ми були здатні досягти приблизно 15000 емулюючий Notes-користувачів, що працюють на Domino 7, в порівнянні з 10000 емулюючий користувачів на Domino 6.5.


Дві наступні таблиці порівнюють системні ресурси, використовувані Domino і 6.5 Domino 7 при роботі однакової кількості емулюючий користувачів (10000). У першій таблиці наші емулюючий користувачі використовують поштову шаблон Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 23 17.6 -23
Операції читання з диска, KB / sec 1,150,318 905,709 -21
Операції запису на диск, KB / sec 3,316,083 3,175,272 -4
Використовувана спільна пам’ять (MB) 1160 1152 1
Пам’ять, яка використовується процесу (MB) 23 63 173
Мережева активність, bytes / sec 2,059,541 2,233,823 8

В другій таблиці користувачі Domino 7 використовують поштову шаблон Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 23 18.51 -20
Операції читання з диска, KB / sec 1,150,318 1,123,650 -2
Операції запису на диск, KB / sec 3,316,083 3,461,609 4
Використовувана спільна пам’ять (MB) 1160 1190 3
Пам’ять, яка використовується процесу (MB) 23 64 178
Мережева активність, bytes / sec 2,059,541 2,240,567 9

З цих таблиць видно, що Domino 7 використовує CPU на 20 і 23 відсотки менше, трохи менше оперативної пам’яті і на 2 і 21 відсотки менше I / O операцій читання диска в залежності від поштового шаблону, використовуваного на сервері Domino 7. Ми також бачимо на малюнку 1, що сервер Domino 7 підтримував від 12000 до 14000 R6Mail-користувачів (залежно від використовуваного поштового шаблону) до того, як відсоток використання CPU не перевищив значення 25. На цьому ж рівні використання CPU Domino 6 підтримував тільки 10000 R6Mail-користувачів.



Рисунок 1. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на AIX
 

Наша машина p670 була розбита на три LPAR; ці результати отримані з одного LPAR. Інші два LPAR були також інтенсивно використані під час запусків тестів для пошуку несправностей і тестування розробки. Ми підкреслили це для того, щоб продемонструвати, наскільки добре працюють LPAR на p670, і що ми могли виконувати декілька різних дій на цій машині, все одно досягаючи таких чудових результатів тестування.


SuSE Linux (Intel)


У наступній таблиці показана конфігурація сервера, використовуваного нами в NRPC-тестуванні продуктивності:



















Кількість CPU Чотири 1.4GHz, Xeon MP
Встановлена ​​оперативна пам’ять 4GB RAM
Активні фізичні диски SCSI-контролер з трьома XP300 RAID-масивами і один FAStT 600 з двома підключеними EXP700, встановлені на конфігурацію RAID 0.
Активні логічні томи Диски були розбиті на 14 логічних томів. Один для / opt, один для / tmp, один для файлів журналів транзакції і 11 для Domino-даних. Це дозволило розподілити базу даних на великій кількості дисків, уникнувши, таким чином вузьких, місць в операціях введення / виведення.
Операційна система Linux SuSE SLES 9 SP2


Система являє собою “консервативну” Intel-платформу, що складається з чотирьох 1.4 GHz Xeon MP CPU (hyperthreaded) з 4 GB RAM. Дискова конфігурація – набір масивів IBM EXP, підключених до контролера SCSI, і система FAStT 600, підключена до сервера через дві карти QLogic по оптоволокну. Наша мета полягала в усуненні будь-яких вузьких місць в дискової підсистеми, дозволяючи системі досягти 15000 емулюючий Notes-користувачів. Використовувалася операційна система SuSE SLES 9, що дозволяє Domino 7 скористатися можливостями ядра 2.6, а також бібліотеки NPTL Posix.


У наступній таблиці показані зміни, виконані у файлі Notes.ini сервера:










Domino 6.5 Domino 7
ConstrainedSHMSizeMB=1024
NSF_buffer_pool_size_MB=256
NSF_DBUcache_max_entries=5000
NSF_DBcache_maxentries=5000
Server_Max_Concurrent_trans=200
server_pool_tasks=100
ServerTasks=Router
ConstrainedSHMSizeMB=2560
NSF_DBUcache_max_entries=6100
NSF_DBcache_maxentries=6100
NSF_buffer_pool_size_MB=512
Server_Max_Concurrent_trans=200
server_pool_tasks=100
ServerTasks=Router


Особливий інтерес тут представляє настройка змінної ConstrainedSHMSizeMB. В Domino 6.x її значення повинно бути встановлено приблизно в 1 GB, оскільки Domino використовує тільки 2 GB оперативної пам’яті (SuSE SLES 8 і SLES 9 обмежує оперативну пам’ять, що виділяється Domino, до 2 GB), і деяке її кількість потрібна для організації стека. В Domino 7 це значення параметра Notes.ini може бути збільшено, оскільки ми знайшли спосіб розподілу в SuSE SLES 8 і SLES 9 майже 4 GB оперативної пам’яті для Domino за замовчуванням. Це робиться за допомогою спеціальної програми tunekrnl, яка автоматично підстроює системні параметри для більш ефективної роботи Domino. В Domino 7 це робиться автоматично. З цих таблиць також видно, що працюють тільки ті завдання server, які необхідні для даного NotesBench-тесту. Це дозволяє серверу досягти максимальної продуктивності при тестуванні.


Коли був розроблений сервер Domino 6, ядра Linux (x86), які він повинен був підтримувати, не мали функціональності sys-epoll. Отже, Domino не міг підтримувати модель threadpool, як для інших платформ. Це призводило до того, що для кожного NRPC-користувача породжувався потік (thread) на сервері. Кожен такий потік мав потребу в стеці, що займає до 256K пам’яті. Ці стеки розподілялися з 2 GB оперативної пам’яті, що надається системою для Domino, обмежуючи, тим самим, кількість NRPC-користувачів, які міг підтримувати Domino 6, до 3000. (Linux на zSeries реалізував sys-epoll в Domino 6.5.)


З Domino 7 ми використовуємо функціональну можливість sys-epoll в нових ядрах (наприклад, SuSE SLES 8 і SLES 9), яка дозволяє Domino застосувати таку ж модель threadpool, що й на інших платформах. Це (Разом з удосконаленнями в бібліотеці NPTL Posix, виконаними в SLES 9) значно поліпшило масштабованість Domino, дозволивши обслуговувати 15000 R6Mail-користувачів – на 400% більше (див. малюнок 2)!



Рисунок 2. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на SuSE Linux (Intel)
 


Хоча Domino 7 може обслужити 15000 користувачів, в наступній таблиці порівнюються результати, отримані для 3000 користувачів, оскільки це максимальна кількість користувачів, яке може обслужити Domino 6.x. На жаль, на такому низькому рівні масштабування невеликі зміни у значеннях можуть показати значні зміни в процентах. Це необхідно враховувати при інтерпретації даних. Також зверніть увагу на те, що оскільки ми тепер маємо більше доступної оперативної пам’яті для Domino 7, значення загальної пам’яті більше, що дозволяє обробляти більш високу налаштовувану навантаження. У першій таблиці наші емулюючий користувачі використовують поштову шаблон Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 6 7.5 25
Операції читання з диска, KB / sec 4082 2280 -44
Операції запису на диск, KB / sec 3549 3460 -03
Використовувана спільна пам’ять (MB) 615 977 59
Пам’ять, яка використовується процесу (MB) 947 1,020 08
Мережева активність, bytes / sec 632128 752881 19


В другій таблиці показані результати з емулюючий Domino 7 користувачами, що працюють з шаблоном Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 6 8.3 38
Операції читання з диска, KB / sec 4082 3770 -08
Операції запису на диск, KB / sec 3549 3741 05
Використовувана спільна пам’ять (MB) 615 998 62
Пам’ять, яка використовується процесу (MB) 947 1,060 12
Мережева активність, bytes / sec 632,128 725,063 15


В результаті, Domino 7 на Linux зробив великий крок у масштабованості на NRPC, збільшивши кількість користувачів розділу на 400 відсотків. Це відповідає іншим високопродуктивним серверним платформам.


iSeries


Domino 7 забезпечує суттєві поліпшення продуктивності для середовища iSeries. У даному розділі ми розглянемо результати для двох різних конфігурацій (одна використовує iSeries model 570, а інша – ISeries model 810), для того щоб показати діапазон поліпшень, який ми спостерігали при лабораторному тестуванні Domino 7.


iSeries model 570


Наша перша тестова конфігурація використовувала iSeries model 570 з 14 процесорами з надлишковим об’ємом оперативної пам’яті і дискових ресурсів. Дана конфігурація була обрана для того, щоб продемонструвати результати роботи Domino 7 в необмеженої по ресурсах середовищі, а також, щоб використовувати її для тестування нових можливостей Domino 7 по підтримці більшого числа користувачів в одному розділі Domino ..



















Модель iSeries model 570
Кількість CPU 14 1.65 GHz
Встановлена ​​оперативна пам’ять 128 GB
Дискові приводи 93
Операційна система I5/OS V5R3


Для всіх тестів використовувалися налаштування за замовчуванням, за винятком збільшення параметра Domino 7 Notes.ini server_pool_tasks до 100 для тестів на сервері 570. Ми зробили це для забезпечення підтримки великого числа користувачів, тепер можливого для одного розділу Domino.


Для Domino 6.5 було встановлено обмеження – максимум 10000 користувачів. В Domino 7 це обмеження було видалено, і на iSeries ми могли працювати з 18000 користувачами в нашій тестовій конфігурації. Порівнюючи відсоток використання CPU в Domino 6.5 і Domino 7 (з використанням в Domino 7 нового шаблону Mail7.ntf), ми побачили 25-процентне поліпшення. При порівнянні Domino 6.5 і Domino 7, використовуючи такий ж шаблон Mail6.ntf для обох тестів, ми спостерігали навіть ще більше поліпшення – на 33% 10000 для користувачів (див. малюнок 3).



Рисунок 3. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на iSeries model 570
 


Ці цифри являють максимальний рівень поліпшення продуктивності, яке ми можемо очікувати в користувальницької середовищі. Причина такої низької ефективності використання CPU полягає в тому, що дана системна конфігурація використовується також для тестування Domino Web Access, що вимагає великих ресурсів CPU, ніж NRPC.


У наступних двох таблицях порівнюються результати, отримані для 10000 емулюючий Notes-користувачів, що працюють на iSeries model 570. У першій таблиці наші емулюючий користувачі використовують поштову шаблон Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 5.5 3.7 -33
Операції читання, запитів в секунду 87 90 3
Операції запису, запитів в секунду 669 594 -11
Базовий пул, сторінок в секунду 195 250 28
Мережева активність, KB / sec 2033 2022 -1
Середній час реакції (msec)
1 GB/secs Ethernet
8.0 6.7 -16


А в цій таблиці емулюючий користувачі використовують поштову шаблон Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 5.5 4.1 -25
Операції читання, запитів в секунду 87 184 110
Операції запису, запитів в секунду 669 897 34
Базовий пул, сторінок в секунду 195 383 96
Мережева активність, KB / sec 2033 2841 40
Середній час реакції (msec)
1 GB/secs Ethernet
8.0 7.5 -6


Хоча для обох шаблонів демонструється значне зменшення відсотка використання CPU, ви можете помітити, що сервер Domino використовує дещо більше дискового простору та оперативної пам’яті для підтримки нових можливостей, включених в шаблон Domino 7. Наведені в цих таблицях результати показують, що Domino 7 підтримує значна більша кількість користувачів в одному розділі, а також знижує вимоги до продуктивності CPU для кожного користувача. Незважаючи на деяку додаткову роботу з пам’яттю і дисками в Domino 7, дана системна конфігурація показала поліпшення часу реакції в Domino 7 в порівнянні з Domino 6.5 для обох протестованих поштових шаблонів.


iSeries model 810


Наша друга тестова конфігурація використовувала iSeries model 810 з двома процесорами. Цей сервер обладнаний 16 GB оперативної пам’яті і 63 дисковими приводами, розбитими на чотири Domino-розділу.



















Модель iSeries model 810
Кількість CPU Два 750 MHz
Встановлена ​​оперативна пам’ять 16 GB
Дискові приводи 63
Операційна система I5/OS V5R3


Ми використовували стандартні параметри для обох тестів Domino 6.5 і Domino 7.


Для даної конфігурації були налаштувати чотири Domino-розділу, і були протестовані варіанти для 6000 і 9000 користувачів. Для варіанту з 6000 користувачів в кожному розділі були активні 1500 користувачів. Для 9000 користувачів два розділи були збільшені до 3000 користувачів. Така кількість користувачів відображає більш типову для користувача конфігурацію для кількості користувачів на Domino-розділ в порівнянні з конфігурацією model 570, а також включає велику роботу в задачі router.


Порівнюючи відсоток використання CPU в Domino 6.5 і Domino 7, що використовують новий шаблон Mail7.ntf, ми бачимо 4% поліпшення при 9000 користувачів. Якщо ми порівняємо Domino 6.5 і Domino 7, що використовують однаковий шаблон Mail6.ntf, то побачимо більш вагоме поліпшення – 18% для 9000 користувачів. Ці числа представляють, напевно, більш типовий діапазон підвищення продуктивності, який ми очікували б побачити в користувальницької конфігурації, налаштованої з кількома Domino-розділами і меншою кількістю користувачів на розділ. Ці результати представлені на рисунку 4.



Рисунок 4. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на iSeries model 810
 


У наступних таблицях наведено порівняння використання ресурсів для кожної поштової шаблону. У першій таблиці показані результати для 9000 емулюючий користувачів, що працюють з поштовим шаблоном Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 81.4 67 -18
Операції читання з диска, запитів в секунду 976 772 -21
Операції запису на диск, запитів в секунду 772 762 -1
Базовий пул, сторінок в секунду 3761 2804 -25
Мережева активність, KB / sec 1814 1832 +1
Середній час реакції (msec)
100 MB Ethernet
105.3 51.4 -51


У другій таблиці наші користувачі Domino 7 використовують поштову шаблон Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 81.4 77.9 -4
Операції читання з диска, запитів в секунду 976 1180 +21
Операції запису на диск, запитів в секунду 772 753 -2
Базовий пул, сторінок в секунду 3761 4938 +31
Мережева активність, KB / sec 1814 1850 +2
Середній час реакції (msec)
100 MB Ethernet
105.3 97.5 -7


Хоча обидва шаблону показують зменшення завантаження CPU, сервер Domino 7 використовує дещо більший обсяг ресурсів дискового простору та оперативної пам’яті для підтримки нових можливостей, що надаються новим шаблоном Mail7.ntf.


Переваги Domino 7, які видно для двох конфігурацій, описаних в даному розділі, демонструють діапазон підвищення продуктивності, якого можна досягти в користувальницької середовищі. Покращення продуктивності будуть змінюватись в залежності від CPU, обсягу оперативної пам’яті, дискового простору і мережних ресурсів, доступних для роботи Domino. Як видно з попередніх таблиць і малюнків, більш значне підвищення продуктивності може бути досягнуто при доступності великого обсягу системних ресурсів і при використанні Domino 7 з шаблоном Mail6.ntf. З збільшеною здатністю Domino 7 до масштабування до більшого числа користувачів в одному Domino-розділі об’єднання для використання меншого числа Domino-розділів теж може забезпечити значне підвищення продуктивності.


Solaris 9


Система Sun 6800, використовувана для тестування продуктивності, складається з 8 CPU доменів, виділених з системи з 12 CPU. Ми використовувати шість масивів T3 з дев’ятьма приводами в кожному:






















Модель Sun 6800
Кількість CPU Вісім 1050 MHz
Встановлена ​​оперативна пам’ять 32 GB
Активні фізичні диски 54
Активні логічні томи 6 – Raid 0 Arrays
Операційна система Solaris 9


Ми зробили наступні зміни у файлі Notes.ini на серверах:










Domino 6.5 Domino 7
nsf_buffer_pool_size_mb=1536
ServerTasks=Router
server_pool_tasks=100
server_max_concurrent_trans=100
NSF_dbcache_maxentries=18000
MEM_EnablePreAlloc=1
DEBUG_ENABLE_SYS_V_SHM=1
ConstrainedSHMSizeMB=3300
ServerTasks=Router


Для тестування Domino 6.5 ми використовували 1.5GB для буферного пулу NSF, але для Domino 7 ми повинні були зменшити це значення до значення за замовчуванням (1.2GB) через збільшеної кількості користувачів, яке потрібно було підтримувати. Ми також збільшили значення server_pool_tasks, server_max_concurrent_trans і NSF_dbcache_maxentries для кращої роботи зі збільшеним числом активних користувачів. Решта зміни зроблені для вирішення підтримки великих сторінок для Solaris, перевагами яких здатний скористатися Domino 7.


Для Domino 6.5 було встановлено обмеження – максимум 10000 Notes-користувачів без виходу за допустиму кількість дескрипторів (handles). В Domino 7 це обмеження було знято, і на Solaris ми можемо працювати з 18000 користувачів в нашій тестовій конфігурації. Крім того, ефективність використання CPU зменшується на 45% для 10000 з 18000 певних активних користувачів. Також (ви можете бачити це на малюнку 5) Domino 7 тепер підтримує від 14000 до 15000 користувачів з тим же самим відсотком використання CPU, що і Domino 6.5 при роботі з 10000 активних користувачів:



Рисунок 5. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на Solaris 9
 


У наступних таблицях наведені результати тестування для обох шаблонів на максимальному рівні (10000 користувачів), які ми вимірювали для Domino 6.5. У першій таблиці наведені результати для 10000 емулюючий користувачів, що працюють з поштовим шаблоном Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 34.9 18.8 -46
Операції читання з диска, KB / sec 29,011 29,382 1
Операції запису на диск, KB / sec 13,631 12,248 -10
Використовувана спільна пам’ять (MB) 2706 2114 -22
Пам’ять, яка використовується процесу (MB) 18 56 211
Мережева активність, bytes / sec 1,934,801 1,912,166 -1


У наступній таблиці показані результати для користувачів Domino 7, що використовують шаблон Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 34.9 22.8 -35
Операції читання з диска, KB / sec 29,011 30,583 5
Операції запису на диск, KB / sec 13,631 13,990 3
Використовувана спільна пам’ять (MB) 2706 2173 -20
Пам’ять, яка використовується процесу (MB) 18 57 217
Мережева активність, bytes / sec 1,934,801 1,908,093 -1


Пам’ять процесу більше в конфігурації з Domino 7, тому що необхідно було зробити зміни для підтримки додаткової кількості користувачів. Числа для Domino 6.5 наведено для шаблону Mail6.


Масштабованість одного розділу Domino 7 на Solaris зросла до 18000 користувачів з 10000 користувачів в Domino 6.5. Крім того, особливо для більш високого числа паралельно працюючих користувачів, ми бачимо значне зменшення відсотка використання CPU в Domino 7 при роботі з однаковою навантаженням.


Windows 2003 Enterprise Server


Domino 7 був встановлений в одному розділі сервера на eServer xSeries 365, що використовує Windows 2003 Enterprise Server на двох процесорах, з відключеною функцією hyper threading. Операційною системою Windows розпізнається 3.5 GB оперативної пам’яті. Виконувані файли Domino були встановлені на одному диску IBM FAStT 600 (200 GB, RAID 0). Поштові бази даних були розподілені по п’яти масивів IBM FAStT 600, теж RAID 0. Мережевий доступ здійснювався через один 1 GB Ethernet-адаптер, що працює в повнодуплексному режимі. У наступній таблиці наведена наша конфігурація сервера xSeries.






















Модель eServer xSeries 365
Кількість CPU Два 3.0 GHz
Встановлена ​​оперативна пам’ять 3583 MB
Активні фізичні диски 62
Активні логічні томи П’ять масивів RAID 0
Операційна система Windows 2003 Enterprise Server


Як і в більшості наших тестів, ми налаштували серверні файли Notes.ini:










Domino 6.5 Domino 7
NSF_buffer_pool_size_MB=300
Server_Pool_Tasks=60
Server_Max_Concurrent_trans=100
NSF_DBcache_maxentries=10000
platform_statistics_enabled=1
platform_statistics_enabled=1
DEBUG_SHOW_SEM=1
NSF_Buffer_Pool_Size_MB=250
server_pool_tasks=60
server_max_concurrent_trans=100
NSF_DBcache_maxentries=15000


Так само як і на інших платформах, Domino 7, що працює на Windows 2003 Enterprise Server, показує поліпшення ефективності використання CPU і масштабованості. Максимальна кількість користувачів, підтримуваних Domino 7, становить 15000 на платформах Windows 2003 в порівнянні з 10000 в Domino 6.5.


Domino 7 показує значне зменшення завантаження CPU в порівнянні з Domino 6.5 з рівнем навантаження в 10000 користувачів. Domino 6.5 з 10000 користувачів використовує 58% CPU, в той час як Domino 7 з 10000 користувачів використовує тільки 47% CPU (зменшення на 19%). Економія CPU зростає при збільшенні кількості користувачів в Domino 7. Також (як можна побачити на малюнку 6) Domino 7 тепер обслуговує від 12000 до 14000 користувачів з тим же відсотком використання CPU, що і Domino 6.5 при роботі з 10000 активних користувачів.



Малюнок 6. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на Windows 2003 Enterprise Server
 


У наступних двох таблицях наведені результати використання ресурсів при тестуванні серверів з 10000 користувачів (з шаблонами Mail6 і Mail7). У першій таблиці показані результати, отримані для шаблону Mail6:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 58 41.6 -28
Операції читання з диска, KB / sec 18,651 14,375 -23
Операції запису на диск, KB / sec 11,127 10,434 -6
Використовувана спільна пам’ять (MB) 1294 1199 -7
Пам’ять, яка використовується процесу (MB) 23 40 74
Мережева активність, bytes / sec 2,068,184 2,049,162 -1


У другій таблиці показані результати для користувачів Domino 7, що працюють з шаблоном Mail7:







































Ресурс Domino 6.5 Domino 7 Зміна (відсоток)
Відсоток використання CPU 58 46.9 -19
Операції читання з диска, KB / sec 18,651 18,138 -3
Операції запису на диск, KB / sec 11,127 11,505 3
Використовувана спільна пам’ять (MB) 1294 1184 -8
Пам’ять, яка використовується процесу (MB) 23 46 100
Мережева активність, bytes / sec 2,068,184 2,051,615 1


Хоча для обох шаблонів показано значне зменшення завантаження CPU, ви можете побачити, що сервер Domino використовує трохи більше ресурсів при роботі з деякими новими функціональними можливостями, інтегрованими в шаблон Domino 7.


Як показують наші дані тестування продуктивності, Domino 7, що працює на Windows 2003 Enterprise Server, має кілька значних переваг в продуктивності в порівнянні з Domino 6.5. До них ставляться більш висока ефективність використання CPU, підвищена економія оперативної пам’яті та збільшення на 50% кількості підтримуваних в Domino 7 користувачів.


Linux на zSeries


При порівнянні Domino 7 з Domino 6.5 на zSeries, ми виявили зменшення ефективності використання CPU від 25 до 30 відсотків для традиційної поштової системи Notes з робочим навантаженням R6Mail, і з 10 до 14 відсотків (при використанні з можливістю апаратної компресії даних zSeries) для ведення журналів транзакцій. Крім того, різні крос-платформні поліпшення в Domino 7 додали ще від 10 до 20 відсотків економії процесорного часу (такі як реалізація швидкого пулу і фрагментація пам’яті). Ми використовували SLES 8 з SP3 для нашого порівняння Domino 6.5 з Domino 7. Однак ми рекомендуємо вам використовувати Domino 7 на SLES 9, оскільки наші лабораторні вимірювання показали приблизно 10% економії використання CPU з SLES 9 в порівнянні з SLES 8. Крім того, SLES 9 є 64-бітної операційної системою, і кілька Domino-розділів (DPAR) може бути встановлено в одному LPAR.


Ці поліпшення ефективності використання CPU були виміряні з застосуванням робочого навантаження R6Mail. Додана в Domino 7 додаткова функціональність нового поштового шаблону показала від 5 до 15 відсотків зниження ефективності використання CPU при виконанні тестів робочого навантаження R6Mail. Це могло компенсувати деякі поліпшення ефективності використання CPU, виявлені нами. В даному розділі описані поліпшення ефективності використання CPU для обох поштових шаблонів Domino 6 і Domino 7. Концентрація уваги на поліпшенні споживання ресурсів CPU буде продовжена в наступних версіях Domino, в тому числі, в поточних версіях Domino 7.


Всі тести продуктивності на zSeries були виконані на одному логічному розділі (LPAR) на series z990 model 2084-C24. На z990 доступно 24 CPU, 6 з яких були виділені для LPAR тесту продуктивності. Решта 18 CPU, а також інші машинні ресурси, були розподілені по 13 іншим LPAR, використовуваним для розробки і тестування Domino. Ця машина має чотири завантажувача, такі як z / OS, SLES 8, SLES 9 і REL 4. Для NRPC поштових тестів ми використовували три з шести CPU для Domino 6.5 і Domino 7, щоб сильніше завантажити CPU. Domino 6.5 не працює на SLES 9 або REL 4. LPAR тесту продуктивності був налаштований на 12GB пам’яті. Наша LAN була ізольована, для того щоб усунути вплив мережевого трафіку від не відноситься до тестів активності. Всі диски розподілені в масив Enterprise Storage Server (2105 Model 800), кожен диск сконфигурирован як 3390 model 3. Існували окремі файлові системи на кожному томі (дисках) для виконання Domino, для даних (за винятком клієнтських поштових баз даних) і адресної книги Domino (Names.nsf), а також два томи у файловій системі LVM (logical volume manager) для ведення журналів транзакцій. Клієнтські поштові бази даних були розподілені рівномірно по 52 файловим системам LVM, кожна розміщувалася на 5 томах в одному LVM, забезпечуючи 11.5GB використовуваного простору на файлову систему. Для Linux на zSeries була використана файлова система EXT 3. Використовувалися операційні системи SLES 8 з SP3 або SLES 9 з SP1.


З операційною системою SLES 8 використовувалося тільки 2GB для центральної пам’яті (через 32-бітної операційної системи) і 2GB розширеної пам’яті, використовуваної для свопінгу. З системою SLES 9 ми використовували 12GB загальної пам’яті. У наступній таблиці показана наша апаратна конфігурація:






















Модель z990 2084-C24
Кількість CPU Три виділених CPU
Встановлена ​​оперативна пам’ять 12 GB
Тип DASD томи типів 2105 model 800, 3390 model 3
Файлова система 52 x 5 LVM поштових баз даних, 7 інших томів для Notes-даних, notesbin, Domino Directory, mailbox, utility і translog
Операційна система SLES 8 SP3 / SLES 9 SP1


Перед тестуванням ми налаштували серверні файли notes.ini і для Domino 6.5 і для Domino 7 і включили в них таке: TRANSLOG_Status = 1
TRANSLOG_MaxSize=3000
TRANSLOG_Performance=1
NSF_Buffer_Pool_Size_MB=256
Server_Pool_Tasks=100
ServerTasks=Router
NSF_DBCache_MaxEntries=10000


На малюнку 7 показано поліпшення ефективності використання CPU в Domino 7 в порівнянні з Domino 6.5 з NRPC робочим навантаженням пошти, що реалізує шаблон Mail6 з Domino 6.5 або шаблон Mail7.



Малюнок 7. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 на Linux zSeries
 


У нашій тестовій процедурі ми очікували 1:00 після запуску / додавання 1000 клієнтів, створюючи період “стійкого стану” після кожної зміни. Показаний відсоток використання CPU є середнім за 1:00 стійкого стану. Максимальним числом Notes-клієнтів в Domino 6.5 є 10000. Однак Domino 7 здатний масштабуватися до 12000 користувачів.


На малюнку 7 показаний діапазон поліпшення ефективності використання CPU з 15 до 28 відсотків при роботі Domino 7 з поштовим шаблоном 6.5 і з 9 до 21 відсотків при роботі Domino 7 з поштовим шаблоном Mail7. Очевидно, що Domino 7 покращує ефективність використання CPU з обома шаблонами (Mail6.ntf і Mail7.ntf), у порівнянні з Domino 6.5. Ми будемо продовжувати приділяти увагу оптимізації шаблону Mail7 в майбутніх версіях Domino.


На малюнку 8 відображено підвищення ефективності використання CPU для SLES 9. На ньому зображений діапазон підвищення ефективності використання CPU з 1 до 18 відсотків при роботі Domino 7 з шаблоном Mail6. Після досягнення кількості користувачів 6000 SLES 8 виходить за межі реальної оперативної пам’яті. Він постійно виконує свопінг сторінок. Однак SLES 9 цього не робить, і в нього є достатня кількість доступної пам’яті. Отже, ми побачили більш значне підвищення ефективності використання CPU в SLES 9 в порівнянні з SLES 8 після досягнення кількості користувачів 6000 в Linux на zSeries.



Рисунок 8. Відсоток використання CPU з SLES9
 


Робоче навантаження генерувала однакову кількість роботи на серверах Domino 6.5 і Domino 7. Для кожного виконувалася передача однакової кількості байт по мережі, надсилалося однакове число повідомлень і здійснювалося однакову кількість транзакцій.


Зменшення завантаженості CPU в Domino 7 перетвориться в підвищення стабільності на високих рівнях робочого навантаження, дозволяючи підтримувати більшу кількість клієнтів на одному сервері Domino 7 в Linux на zSeries. Що ще важливіше, зниження вимог до CPU в Domino 7 може привести до істотно нижчою загальної вартості володіння в порівнянні з Domino 6.5 в Linux на zSeries.


z/OS


Для Domino 7, що працює на платформі zSeries z / OS, були використані апаратні можливості, властиві zSeries, а також були введені поліпшення в код сервера Domino. Перша область інтересів: переваги ведення журналів транзакцій проти продуктивності. У той час як ведення журналів транзакцій забезпечує суттєві переваги, за них треба платити додатковим використанням CPU. Приблизно третина цього використання CPU відноситься до активності зі стиснення даних. Для Domino 7 використовується апаратне стиснення даних zSeries. Наші тести продуктивності показали від 10 до 11 відсотків загального зменшення завантаженості CPU при виконанні Domino 7 на z / OS з дозволеним веденням журналів транзакцій з використанням апаратного стиснення в порівнянні з програмними алгоритмами стиснення даних, що використовується в Domino 6.5.


Однією з методик, що використовувалися для ідентифікації потенційних можливостей підвищення продуктивності в Domino 7, був аналіз внутрішніх операцій, що виникають під час тестування в граничних режимах. Аналізуючи ці дані на різних платформах, ми виявили, що z / OS виконував більше розподілів оперативної пам’яті мережевих буферів на операції читання або запису (для кожного Notes-клієнта), ніж це робилося на деяких інших Domino-платформах. Покращення алгоритмів розподілу пам’яті для z / OS привели до 7% зменшення завантаженості CPU в наших тестах.


Тільки з цими змінами Domino 7 на z / OS показав від 17 до 20 відсотків підвищення ефективності використання CPU в порівнянні з Domino 6.5. Крім того, різні крос-платформні поліпшення в Domino 7 додали ще 10% економії. Загальне поліпшення продуктивності при виконанні поштових тестів становить від 25 до 30 відсотків для Domino 7 на z / OS в порівнянні з Domino 6.5 (подробиці нижче).


Ці підвищення ефективності використання CPU були виміряні при тестуванні робочого навантаження R6Mail з поштовим шаблоном Domino 6 та виконанні сервера Domino 6.5 в порівнянні з Domino 7. Як згадувалося вище, функціональність, включена в поштову шаблон Domino 7, могла б компенсувати деякі з цих поліпшень продуктивності CPU.


Всі результати тестів продуктивності, описані в даному розділі, отримані для одного логічного розділу (LPAR) на series z990 model 2084-C24. На z990 доступно 24 CPU, 6 з яких виділені для LPAR тесту продуктивності. Для цих NRPC тестів пошти ми використовували тільки три з шести CPU. LPAR тест продуктивності був налаштований з 12GB центральної пам’яті зберігання. Ми використовували одну карту Gigabit Ethernet Open Systems Architecture (OSA). Наша мережа ізольована від впливу мережевого трафіку. Диски розміщені в масиві Enterprise Storage Server (2105 Model 800), кожен диск налаштований на 3390 model 3. Є окрема файлова система z / FS, розміщена на одному томі (диску) для роботи Domino, для даних (за винятком клієнтських поштових баз даних) і для Domino Directory (Names.nsf). Файлова система, поширювана на два томи, розподіляється для даних журналу транзакцій. Клієнтські поштові бази даних розподіляються рівномірно по 53 z / FS; кожна займає 5 томів, забезпечуючи 11.5 GB використовуваного простору на файлову систему. Була встановлена ​​операційна система z / OS (версія 1, випуск 5).


У наступній таблиці наводиться апаратна конфігурація, що використовувалась в даному тесті:






















Модель z990 2084-C24
Кількість CPU Три виділених CPU
Встановлена ​​оперативна пам’ять 12 GB
Тип DASD томи типів 2105 model 800, 3390 model 3
Файлова система 53 x 5 z / FS поштових баз даних, 7 інших томів призначені для Notes-даних, notesbin, Domino Directory, mailbox, utility і translog
Операційна система z/OS 1.5


Ми виконали такі зміни конфігурації в наших файлах Notes.ini серверів Domino 6.5 і Domino 7:
TRANSLOG_Status=1
TRANSLOG_MaxSize=3000
TRANSLOG_Performance=1
NSF_Buffer_Pool_Size_MB=128
Server_Pool_Tasks=100
ServerTasks=Router
NSF_DBCache_MaxEntries=10000


На малюнку 9 показано підвищення ефективності використання CPU в Domino 7 в порівнянні з Domino 6.5 при виконанні NRPC робочого навантаження пошти та реалізації або шаблону Mail6 з Domino 6.5, або шаблону Mail7.



Малюнок 9. Відсоток використання CPU в Domino 7 в порівнянні з Domino 6.5 в z / OS на zSeries
 


Як і в тесті для Linux на zSeries, ми очікували 1:00 після запуску / додавання 1000 клієнтів, створюючи період “стійкого стану”. Виміряний відсоток використання CPU є середнім за 1:00 стійкого стану. В Domino 6.5 сервер вийшов за межі загальної пам’яті після 9000 клієнтів. Однак Domino 7 здатний масштабуватися за межі 10000 клієнтів.


На малюнку 9 показаний діапазон підвищення ефективності використання CPU з 21 до 29 відсотків при виконанні Domino 7 з поштовим шаблоном Domino 6.5 і з 10 до 19 відсотків при виконанні Domino 7 з поштовим шаблоном Mail7. Очевидно, що Domino 7 підвищив ефективність використання CPU як з Mail6.ntf, так і з Mail7.ntf, порівняно з Domino 6.5.


На малюнку 10 показано підвищення продуктивності завдання server на Domino 7. Використання CPU завданням router залишається незмінним для Domino 6.5 і Domino 7.



Малюнок 10. Підвищення продуктивності завдання server
 


Робоче навантаження генерувала однаковий обсяг роботи як для сервера Domino 6.5, так і для сервера Domino 7.


Висновок


Цим завершується наш огляд продуктивності сервера Domino 7, виконує робочі навантаження від Notes-клієнтів. Як ви можете побачити, Notes / Domino 7 забезпечує суттєві покращення в масштабованості на всіх протестованих нами платформах, хоча величина поліпшень може змінюватися через архітектурних відмінностей. Ми бачимо, що результати вийшли далеко за обмеження в 10000 користувачів, яке ми мали в Domino 6.5 на конфігураціях, де доступні адекватні ресурси. На Solaris і iSeries, де у нас є доступ до дещо більшим адресним просторам, ніж на інших платформах, ми побачили 18000 тестових користувачів. На SuSE Linux ми можемо скористатися перевагами sys-epoll в ядрі для реалізації threadpool, аналогічних наявними в Domino на інших платформах. Це призводить до вражаючого стрибка в масштабованості в Linux з 3000 користувачів до 15000. Таке підвищення масштабованості може забезпечити консолідацію серверів, надаючи ресурси сервера для додаткових користувачів.


Як уже згадувалося раніше, ця стаття є першою в серії з трьох частин. У другій частині ми розглянемо результати HTTP-продуктивності Domino, виміряні з емулюючий користувачами Domino Web Access (за допомогою робочого навантаження R6iNotes). А в заключній, третій частині, ми розглянемо результати, які ви можете очікувати в типовій корпоративному середовищі, отримані за допомогою робочого навантаження, включає кластерну реплікацію, локальну реплікацію і повнотекстову індексацію; а також трафік Notes-клієнтів.


Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*