Назад | Перейти на главную страницу

Измерение производительности приложений конечного пользователя?

Недавно мне стало известно о проблеме, связанной с проблемой конфигурации прокси-сервера, которая приводила к снижению производительности пользователей при просмотре веб-сайтов. У большинства наших ИТ-специалистов конфигурация немного отличается из-за того, как мы получаем доступ к средам разработки и тестирования, поэтому мы получили кучу расплывчатых слов «Интернет медленный!» жалобы, прежде чем это исправить. Несколько месяцев назад у нас была проблема, когда ошибка в приложении приводила к снижению производительности на многих ПК ... но нам было очень трудно ее обнаружить.

Эта проблема меня беспокоит, потому что мы полностью могли бы решить эту проблему заранее. Проблема в том, что у нас нет инструментов, чтобы знать, что обычно требуется 5 секунд или 5 минут для выполнения задач, которые наши пользователи выполняют каждый день.

Кто-нибудь знает о бесплатном / дешевом инструменте, который позволил бы нам написать что-то вроде этого:

  1. Загрузите Internet Explorer, время запуска приложения
  2. Зайдите на google.com, время загрузки страницы
  3. Перейдите на example.com, время загрузки страницы
  4. Закрыть браузер

Я бы хотел, чтобы сценарий выполнял что-то подобное каждые 15 минут, чтобы разработать базовый план и выяснить, что означает «медленный» для пользователей. Интернет - лишь один из примеров, я считаю, что это полезно для внутренних и других приложений.

Мне очень нравится идея отслеживать медленность, прежде чем пользователи что-то заметят.

Я бы попытался связать его с любым программным обеспечением для мониторинга, которое вы уже используете (Nagios и т. Д.) Для удобства.

Интересно выглядит каркас Cucumber - http://cukes.info/ и для этого есть плагин Nagios. (Google "Cucumber-Nagios")

Вы также можете создать сценарий для Internet Explorer с помощью Powershell или другого языка сценариев. Однако я всегда находил это более громоздким.

На мой взгляд, сами приложения должны поддерживать мониторинг таких показателей с помощью любого стандартного пакета мониторинга, включая установку пороговых значений предупреждений по умолчанию ^^ Однако большинство приложений этого не делают, я думаю, за некоторыми заметными исключениями, такими как Exchange с System Center Operations Manager и т. Д. на...

... в этом случае я бы смотрел на это скорее как на проблему изучения пользователей и удобства использования. Было бы полезно начать регулярное тестирование рабочих процессов пользователя через плечо, даже если оно не автоматизировано.

Приложения, убивающие производительность клиентов, могут быть обнаружены с помощью надлежащего мониторинга производительности, хотя он должен включать в себя все виды метрик, которые могут замедлить сканирование ПК, такие как загрузка процессора и памяти, загрузка и шаблон ввода-вывода на диск и сеть и т.д. как с мониторингом сервера.

Я понимаю доступ к среде разработки и тестирования, но я решительный сторонник того, чтобы хотя бы первая линия поддерживала людей с идентичными стандартными образами, сетью и так далее, что и остальные пользователи - если это невозможно реализовать для всех в отдел.

Использование серверов удаленного управления / многопользовательских рабочих станций для повседневной административной работы - это простой способ избавиться от необходимости полагаться на локальный компьютер, настроенный определенным образом или с помощью определенных инструментов.

Вы смотрели на HP SitScope? Он не только будет извлекать вашу системную информацию, включая потенциально информацию SNMP с вашего прокси-сервера, но вы также можете запускать сценарии мониторинга производительности приложений для Интернета. Эта технология выборки приложений представляет собой общий технологический компонент с HP LoadRunner и HP Business Availability Center, который по сути представляет собой браузер без графического интерфейса пользователя, выполняющий задачи по сценарию. Оповещения и отчеты встроены в SiteScope.

Что-то, что вы могли бы сделать на основе сценария, - это взглянуть на использование CURL с некоторыми таймерами в начале и в конце запроса. PCODE может выглядеть примерно так

  1. НАЧАТЬ ВРЕМЯ ДО МИЛЛИСЕКУНД
  2. ЗАПРОС ВЫПОЛНЕНИЯ ЗАГРУЗКИ СТРАНИЦЫ С ПОМОЩЬЮ CURL
  3. ПОЛУЧИТЬ ВРЕМЯ ОКОНЧАНИЯ ДО МИЛЛИСЕК
  4. ВЫЧИТАЙТЕ ВРЕМЯ НАЧАЛА ИЗ ВРЕМЕНИ КОНЕЦ НА ВРЕМЯ ЗАПРОСА
  5. НАЖМИТЕ ВРЕМЯ ЗАПРОСА НА СЕРВЕР СБОРА
  6. ЕСЛИ ВРЕМЯ ЗАПРОСА ПРЕВЫШАЕТ ЗНАЧЕНИЕ SLA, ОТПРАВИТЕ ЭЛЕКТРОННОЕ УВЕДОМЛЕНИЕ Группе

Вы можете легко использовать хронологическую задачу, чтобы запускать вышеуказанное каждые пятнадцать минут или около того. Используйте свой любимый язык сценариев для выполнения операции.

Если вам нужно знать производительность своего веб-сайта и вы хотите диагностировать проблемы позже, тогда вам понадобится программное обеспечение для мониторинга сети.

Бесплатно работает wirehark. Для коммерческого использования подходит Capsa.