ejabberd: SSL и производительность
Вопрос первый: в каких попугаях и как (чем) измеряется производительность Jabber-сервера?
Вопрос второй: насколько эту производительность сажает паранойя?
Для случая использования https на Индейце с mod_php5 я сделал следующую табличку:
Длина ключа | SSL off | 1024 | 2048 | 4096 | 8192 |
requests/sec | 81.74 | 8.55 | 6.32 | 2.41 | 0.48 |
(измерения проводились на скрипте типа <? phpinfo(); ?>
, вопрос бенчмаркинга системы web-server --- PHP --- СУРБД был оставлен за кадром)
Из таблицы очевидным образом следукет, что использование шифрования с наименьшей из целесообразных длиной ключа сразу сажает производительность на один десятичный порядок.
Как бы (где бы) добыть аналогичную по сути табличку для Jabber-сервера (и можно будет переходить к другому не менее интересному вопросу: сколько попугаев нужно в моём случае?)?
Update: Забыл вторую часть вопроса: насколько (и какой ценой) реализуема в Jabber'е фича авторизации по клиентскому сертификату?
То, что в Индейце выглядит как
# Client Authentication (Type): SSLVerifyClient require SSLVerifyDepth 10
- Для комментирования войдите или зарегистрируйтесь
http://www.process-one.net/en
http://www.process-one.net/en/tsung/downloads/
Помнится, ранние версии 2.x ejabberd при использовании SSL отжирали памяти в разы по сравнению с нешифруемым каналом. Чем больше пользователей - тем это заметней. Как сейчас с этим - не знаю.
Не грусти, товарищ! Всё хорошо, beautiful good!
общепринятых попугаев нет.
общепринятых попугаев нет. насколько я помню сейчас ejabberd при использовании ssl отжирает примерно 900k на коннект, хотя по моему была разница использовать tls или ssl, точно не помню. попугаи меряет кто как - кто просто количество пользователей по n-сообщений в секунду; кто-то вместе с движняками в ростерах; бывают тестируют отдельно PEP и/или HTTP_Poll - если на его базе построена веб-софтина; причём меряют как при всех активных пользователях, так и например при активности некоего количества из зареганых...
Самым узким местом в джаббер-сервере является serializer -то, что непосредственно перекодирует XML-поток в обычную последовательность символов и обратно, но в еже например его(и не только его) можно скомпилировать в native режиме и он будет работать раз в 10 быстрее, однако, переключение эрланга с обычного на native происходит за некоторое время, и при маленькой нагрузке на serializer может не повысить а понизить производительность... а бывает что скомпиленый таким образом модуль начинает жоско глючить - весь ejabberd так просто не собирается.
В качестве тестового фрамворка на erlang'e есть Tsung, хотя были и другие пакеты вроде...
стоит почитать XEP'ы - это
стоит почитать XEP'ы - это вообще предусмотрено?
насчёт авторизации по
насчёт авторизации по сертификатам стоит почитать XEP'ы - это вообще предусмотрено?