Tsung (ранее IDX-Tsunami) — инструмент распределенного нагрузочного тестирования. Он не зависит от протокола и в настоящее время может использоваться для нагрузки на серверы HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP и Jabber/XMPP. Он распространяется под лицензией GNU General Public License версии 2.
Главная сила Tsung — его способность имитировать огромное количество одновременных пользователей с одной машины. При использовании в кластере вы можете генерировать действительно впечатляющую нагрузку на сервер со скромным кластером, простым в настройке и обслуживании. Вы также можете использовать Tsung в облаке, таком как EC2.
Tsung разработан в Erlang, и именно в этом заключается сила Tsung. Erlang — это язык программирования, ориентированный на параллелизм. Tsung основан на Erlang OTP (Open Transaction Platform) и унаследовал от Erlang несколько характеристик:
- Производительность: Erlang поддерживает сотни тысяч легковесных процессов на одной виртуальной машине.
- Масштабируемость: среда выполнения Erlang естественным образом распределена, что способствует идее прозрачности местоположения процесса.
- Отказоустойчивость: Erlang был создан для разработки надежных отказоустойчивых систем. Таким образом, неправильный ответ, отправленный с сервера Цунгу, не приводит к сбою всего текущего теста.
Больше информации об Erlang наhttp://www.erlang.org.