WSSpeedTest - обработка измерения скорости работы web сервера

18.12.10

Разработка - EDT

Обработка собирает статистику по скорости ответов web сервера за длительный период времени.

Бесплатные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Бесплатно
WSSpeedTest (для 1С 8.1)
.epf 44,78Kb
34 Скачать бесплатно
WSSpeedTest (для 1С 8.2)
.epf 46,73Kb
18 Скачать бесплатно

 У меня на одном из объектов информация об операциях на удаленных точках в онлайне передается в БД путем обыкновенных запросов к веб-серверу. (Так нужно было). При этом на большинстве точек единственно возможным каналом связи является сотовая связь (GPRS). Понятно, что в общей скорости работы такой канал является самым "узким" местом.

Для того, чтобы "выжать" из него максимум,  имеем следующие возможности:

  • Выбрать одного из трех операторов мобильной связи (впрочем, у некоторых счастливчиков их больше).
  • Определить место размещения веб-сервера, который принимает запросы от удаленных объектов - это может быть сервер, предоставленный хостинговой компанией или свой собственный сервер
  • В случае использования сервера хостинга - выбрать этот самый хостинг
  • В случае использования своего собственного сервера - выбор интернет-провайдера, который обеспечит нам связь.

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

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

С таким заявленными функциям существует много программ и веб-сервисов, но почему-то ничего подходящего я не нашел:

  • или тестируется тупо скорость соединения (скачивание большого количества информации). В моем случае совершенно не показательно, т.к. запросы и ответы на них очень маленькие (несколько сотен а то и десятков байт)
  • тестируется "пинг". По момему такие тесты годятся только для того, чтобы определить отсутствие связи (но не наоборот - не однократно встречал ситуацию. когда пинг отличный, а связи  нет).
  • большинство тестов - "мгновенные". Это приятно конечно, когда результат получаешь сразу, но такой результат ни о чем не говорит. Так как через 5 минут он может оказаться совершенно другим.
  • нет нормального анализа результатов. Среднее время ответа в 1 сек может означать, что ответ занял по 1 сек на каждый из 10 запросов, или 8 запросов по 0,1 сек и 2 запроса по 4,6 сек. - это очень существенно.

В итоге написал обработку, которая и решает вышеуказанные задачи. При этом:

  • Никаких синтетических показателей. Делаем самые что ни на есть обыкновенные http запросы. Можно запрашивать файлы как по фиксированному списку, так создавать запросы на основании имеющегося справочника. Например, если в конфигурации есть справочник "номенклатура", то можно перебирать справочник и делать запросы вида http://mysite.com/catalog/item.php?code=[код номенклатуры].
  • Обработка предназначена для сбора статистики в течение длительного времени. Для этого настраиваем расписание работы. Например, можно настроить расписание с 9 до 18 по рабочим дням в течение недели. Можно настроить несколько расписаний и получить отдельные результаты по рабочим дням и по выходным.
  • Результаты работы сохраняются в обычном текстовом файле, который можно загрузить в Excel или использовать любую программу для статистического анализа.
  • Кроме того, обработка предоставляет возможность формирования 2 диаграмм - частотной (распределение скорости ответов по частоте) и временная (распределение скорости ответов по времени). На диаграммах можно сравнить результаты нескольких тестов.
  • Обработка может использоваться в любой конфигурации.

 А вот теперь немного примеров использования обработки:

Внимание! Эти результаты приведены в качестве примера использования обработки и справедливы только для конкретного места, где проводилось измерение, кроме того они могут изменяться во времени. (Установка операторами новых базовых станций или открытие рядом офиса крупной компании где у большинства сотрудников телефона на корпоративном контракте одного из операторов). На надо экстраполировать их на всю Россию. Проводите измерение в конкретном интересующем Вас месте.

 

Сравним двух операторов: МТС и Мегафон 

Это - интервальная диаграмма, показывает как распределяется время на получение ответа сервера по частоте.

В данном случае:

При подключении через оператора МТС 60% ответов уложились в 1,6 сек. У Мегафона за этот интервал времени пришло только 6% ответов. Большая часть ответов (опять же 60%) пришла через Мегафон в интервале 1,59-2,41 сек.

Некоторый процент запросов обрабатывался длительное время (более 8,81 сек.) У Мегафона таких оказалось меньше. То есть, время ожидания ответа хотя и выше, чем у МТС, но более стабильно.

Запросов, на которые ответы вообще не пришли, при работе через МТС оказалось около 1%, а при работе через Мегафон - около 4%.

 

Проанализируем работу через оператора Мегафон в течение дня

Эта диаграмма состоит из двух частей. Сверху отбражается время обработки запросов. Тонкая черта соединяет абсолютные минимум и максимум. Так, в интервале 10.00-10-30 это время колебалось в интервале от ~2-53 сек. Толстый прямоугольник показывает, интервал времени, в который уложился выбранный процент (в данном случае - 70) запросов. Этот интервал составил ~ 2,2-4,5 сек.

Снизу отображается количество запросов, оставшихся без ответа. Как видим, пик пришелся на 10.00-10.30 (~44 запроса).

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

Однако, выводы делать рано - ведь кроме оператора связи на скорость обработки запросов влияет хостинг. А наш график был построен на основании тестирования в течение 2х дней, первый день хостинг был один, второй день  другой.

 

Сравним два хостинга

Диаграмма аналогична предыдущей. Как видим, большой процент ошибок в интервале 10.00-10.30 целиком "на совести" хостинга aha.ru. А вот колебания увеличения процента времени ответов уже на совести оператора.

А таки диаграмма нам однозначно показывает, что, по крайней мере при работе через оператора Мегафон хостинг nichost.ru с точки зрения времени ответа сервера предпочтительнее.

См. также

Групповая разработка (Git, хранилище) EDT OneScript Программист 1С v8.3 Бесплатно (free)

В данной публикации рассматривается пример реализации скрипта, который автоматизирует получение ветки из GIT репозитория и обновление конфигурации, если разработка проекта ведется в EDT.

11.06.2025    1282    AlexF1    4    

6

EDT Программист Бесплатно (free)

Статья поможет разработчикам 1С правильно настроить масштабирование интерфейса EDT для комфортной работы на мониторах с высоким разрешением.

03.06.2025    1133    PetrovAnton    4    

6

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) EDT Программист 1С v8.3 Бесплатно (free)

В процессе использования 1С:EDT и репозитория Git для обновлений релизов доработанных конфигураций появилась необходимость в регулярной загрузке конфигураций от вендора 1С в Git-репозиторий. Описанное в статье решение позволяет автоматизировать эту операцию и может быть полезным специалистам, занимающимися обновлениями с использованием 1C:EDT+Git

21.05.2025    2531    vladimir_iclsoft    3    

18

EDT Программист Бесплатно (free)

Новый механизм отладки в 1С: Предприятие значительно упрощает процесс отладки приложений на пустой базе данных. Он позволяет разработчикам подключаться к базе данных, предоставленной пользователем или бизнесом, и отлаживать конфигурацию без необходимости иметь все данные у себя. Этот механизм особенно полезен для отладки внешней обработки обмена данными в Enterprise Data, где используется множество баз источников данных. Настройка сервера отладки и подключение к нему через EDT позволяет разработчикам эффективно перехватывать сеансы и отлаживать базы данных, которые не находятся в их проекте.

20.09.2024    9930    kraspila    26    

3

EDT Групповая разработка (Git, хранилище) Программист 1С v8.3 Бесплатно (free)

Заказчики любят EDT+Git за прозрачность и контроль качества. А у разработчиков есть две основные причины не любить EDT – это тормоза и глюки. Расскажем о том, что нужно учесть команде при переходе на EDT+Git.

14.08.2024    13515    lekot    35    

8

EDT Программист Бесплатно (free)

О том, как организовать поддержку конфигурации поставщика в существующем проекте EDT. У Вас есть конфигурация на EDT и в нее надо внедрить типовую конфигурацию? Статья об этом. Постарался расписать все по шагам, чтобы вы потратили меньше времени и не наступали на те же грабли, что и я.

18.01.2024    5051    AntonChausov    26    

44

DevOps и автоматизация разработки EDT Бесплатно (free)

Даже в рамках одной компании подходы к организации командной разработки могут отличаться: методикой работы с ветками, организацией тестовых и разработческих контуров, параллельным использованием хранилищ или полным переходом на Git. Расскажем, какие варианты распределения серверных стендов и организации CI/CD выбрали для своих команд тимлиды двух отделов, и как у них происходило внедрение 1С:EDT.

05.09.2023    5985    WhatIsLoveMakoveev    0    

5

DevOps и автоматизация разработки EDT Программист Бесплатно (free)

Использование EDT дает преимущества даже для тех, кто до сих пор остается в конфигураторе. Достаточно настроить разбор основного хранилища разработки в GitConverter и автоматизировать CI на GitLab с помощью скриптов на 1С:Исполнителе. Статья о том, как задействовать для кодовой базы проекта валидацию EDT, используя встроенный механизм GitLab Code Quality, и генерировать дымовые тесты для Vanessa Automation.

23.08.2023    11754    doublesun    25    

37
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Alex Prikol 09.05.12 19:17 Сейчас в теме
Такое обилие диаграмм.
Ну что ж, интересно было бы посмотреть.
2. Alex Prikol 09.05.12 19:18 Сейчас в теме
Это все штатными средствами или с использованием внешних компонент?
3. nafa 661 10.05.12 19:04 Сейчас в теме
(2)
ВК нет. Таймер из Windows. Все остальное штатное.
Оставьте свое сообщение