Я разработал 3 простых системы ведения блога в PHP/Apache/Mysql, Python/Ngix/Postgresql и в Erlang/Yaws/Mnesia.Как измерить производительность веб-приложения?
Как измерить производительность на моем сервере для этой 3-х различных конфигураций?
Я разработал 3 простых системы ведения блога в PHP/Apache/Mysql, Python/Ngix/Postgresql и в Erlang/Yaws/Mnesia.Как измерить производительность веб-приложения?
Как измерить производительность на моем сервере для этой 3-х различных конфигураций?
Когда вы говорите, что хотите измерить производительность, я предполагаю, что вы имеете в виду нагрузку, время отклика, такую вещь.
Если это так, вы можете использовать ab (скамья apache). Это небольшая программа, которая обычно доступна для Linux и, я считаю, macs. Вы даете ему URL-адрес, рассказываете, сколько раз запрашивать его и необязательно давать ему некоторые другие параметры. Его отправка HTTP-запросов, поэтому не имеет значения, что серверный код реализован, чтобы вы могли использовать его для тестирования всех трех систем.
Here's a link with more information on ab
абы дадут вам хорошее представление о том, сколько запросов в секунду каждая система может поставить до конца. Если вы хотите, чтобы один показатель сравнивал ваши 3 системы, это довольно хорошо.
Чтобы узнать, какой элемент сервера ограничивает производительность (процессор, доступ к базе данных, пропускная способность), вам понадобятся инструменты, которые находятся на сервере, а не на клиентской машине. Какие инструменты вы будете использовать там, будет зависеть от операционной системы и потенциально будет зависеть от того, какой язык/инструменты вы использовали для реализации кода сервера.
Также вы можете попробовать использовать httperf (http://www.hpl.hp.com/research/linux/httperf/).
Я предлагаю вам взглянуть на Tsung.
Чтение из своей домашней странице:
Он может быть использован, чтобы подчеркнуть HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP и серверов Jabber/XMPP. Tsung (ранее , известный как IDX-Цунами) является бесплатным программным обеспечением, выпущенным по лицензии GPLv2 .
Цель Цунга для имитации пользователей для того, чтобы проверить масштабируемость и производительность IP на основе приложений клиент/сервер. Вы можете использовать для загрузки и стресс-тестирования ваших серверов. Многие протоколы имеют , которые были реализованы и протестированы, и его можно легко продлить до . WebDAV, LDAP и поддержка MySQL были добавлены недавно (экспериментально).
Он может быть размещен на несколько клиентских машинах и способен моделировать сотни тысяч виртуальных пользователей одновременно (или даже миллионов, если у вас есть достаточное количество аппаратных ...).
Цзун разработан в Erlang, язык на с открытым исходным кодом сделано Ericsson для создания надежных отказоустойчивых распределенных приложений.
Кроме того, для вашего сверла Erlang вы можете найти некоторые подсказки и инструменты в profiling section of the Erlang efficiency guide.