Описание
Тест создает множество фоновых сеансов и выполняет ими одинаковые действия, например создание элементов справочников или запись наборов записей регистров. Он позволяет оценить, насколько «производительна» данная связка 1с — субд, а также насколько она «масштабируема», т.е. количество активных пользователей, при котором система еще будет работать, но «низенько-низенько».
Эмпирическим путем получено число в 400-500 попугаев на поток (не учитывая временные таблицы), при котором работа терпима. Благодаря механизму «глобального обмена» можно повторить тест с чьии-то настройками и сравнить результаты.
Полный тест выполняется от получаса до часа на стандартных настройках, примерно в 2 раза меньше на «быстрых» и в 2 раза дольше на «точных». Естественно, проводить не все тесты, то время пропорционально уменьшится.
Планы
Снова сделать просмотр результатов на сайте. Сделано: http://fragster.ru/perfomanceTest/results.php
Работа на файловых базах.
Новые тесты.
Обмен «через файлы», для случай, когда на на сервере нет интернета
Многое другое 🙂
Версия 2.0.011
Устранена несовместимость с 8.3.9 (из-за изменения http://downloads.v8.1c.ru/content//Platform/8_3_9_1648/1cv8upd.htm#f092f970-ec4b-11e5-a3f7-0050569f678a)
Версия 2.0.010
Исправлена ошибка несоздания узла обмена для обмена результатами.
Версия 2.0.009
Изменен способ старта фоновых заданий, теперь менее вероятна ошибка «Не получилось синхронизировать потоки за ХХ секунд!»
Исправлены ошибки невозможности выбора параметра в отчетах «Отчет по тесту» и «Профиль результата»
Изменены варианты ответов на запрос заполнения информации о серверах на более понятные.
Версия 2.0.008
Теперь при запуске в режиме «Толстый клиент управляемое приложение» обработка обмена работает целиком на клиенте, и в таком случае точно не нужен интернет на сервере.
Версия 2.0.007
В результатах тестов убрана колонка «номер потока», теперь результаты хранятся только в разрезе количества потоков теста. Это в десятки раз сократило количество строк в ТЧ Результаты и Профиль Результата, так что теперь собственные тесты открываются с такой же скоростью, как и тесты, полученные из интернета (ранее была задержка в несколько секунд, в результатах интернета для сокращения трафика изначально информация о номере потока была опущена изначально). Также немного ускорилось формирование отчетов.
Исправлены ошибки при запуске в режиме «Толстый клиент управляемое приложение». При запуске в этом режиме интернет на сервере не обязателен для обмена.
Если вы делаете обновление, то теперь возможно обновление только с версии >= 2.001 (при попытке обновления версии 1.х.ххх будет ошибка). Возможно позже сделаю поставку, чтобы корректно это контролировать.
Версия 2.0.006
Очистка результатов после выполнения тестов теперь также проходит многопоточно, это значительно снизило паузы при проведении тестирования.
Также при очистке данных регистров накопления и сведений теперь выключаются итоги.
Версия 2.0.005
Обработка «Обмен результатами» теперь получает все результаты в цикле (в связи с ограничением хостинга недавно пришлось ввести «порционный обмен» результатами, в более ранних версиях приходилось несколько раз нажимать кнопку обмена)
Добавлен отчет «сравнение результатов», колонки — тесты, строки — результаты. Предложения по работе доработке этого и других отчетов приветствуются.
Форма списка справочника тестов, теперь она же является формой выбора/подбора.
Разрешен множественный выбор в форме списка — можно быстро сформировать отчет сравнения, выделив несколько строчек и выбрав его в меню «сформировать на основании»
Обработка «проверка синхронизации» заменена соответствующим отчетом (ради показа графика с распределением времени прихода сигнала синхронизации к потокам теста)
Во все отчеты по тестам добавлен быстрый отбор по видам тестов (по кнопке «настройки»).
Сообщения от потоков теперь приходят через регистр сведений (подготовка к реализации файлового варианта теста).
Потоки теперь стартуют порциями с паузами между ними (вроде как должно повысить стабильность).
Проведена чистка кода, удалены неиспользуемые функции.
Немного причесан интерфейс, теперь все окна открываются единообразно.
Версия 2.0.004
Исправлена ошибка, существующая на платформе < 8.2.15
Версия 2.0.003
Исправлена ошибка доступа к таблице «профиль результатов» при выполнении теста
Версия 2.0.002
Исправлена ошибка с тем, что у загружаемых по глобальному обмену тестов не проставляется код.
Добавлена обработка одновления конфигурации для пеернумерации ранее загруженных резульатов, т.е. новую конфигурацию делать не надо, достаточно обновить текущую.
Переработана форма обмена — место на форме используется более рационально.
Из формы теста убрана таблица с профилем результатов — это ускорило открытие формы в несколько раз для завершенных тестов (там очень много строк, что существенно замедляло то самое открытие).
Версия 2.0.001
Новая версия. Старшая цифра изменилась, поскольку изменились алгоритмы работы — больше сделан упор именно на производительность СУБД.
Основные изменения:
Изменен алгоритм тестов (основной упор на запись наборов)
Добавлен тест «Временные таблицы» — он должен показать «чистую» производительность без блокировок (спасибо за идею Гилеву Вячеславу).
Добавлены настройки тестов — количество потоков и размер создаваемых объектов (100, 1000, 5000 строк)
Изменен отчет «Отчет по тесту» — добавлен показатель «средняя производительность одного потока»
Добавлен отчет «Профиль выполнения» — показывает распределение времени записи одного объекта (в мс), т.е. сколько объектов записалось за 16 мс, сколько за 32 и тд. Для платформы < 8.2.17 информация собирается только на вин-сервере, при релизе платформы >= 8.2.17 и на линуксе тоже.
Доработана обработка «проверка синхронизации». Теперь она показывает, через сколько миллисекунд (условия для работы как в предыдущем пункте) пришел сигнал от «мастера» до «потоков» о том, что пора начинать «работать».
Вместо публикации на сайте теперь глобальный обмен результатами, соответственно, создана обработка для него. Из-за того, что очень сильно доработана конфигурация — просмотр на сайте http://fragster.ru/perfomanceTest/ временно отключен, чужие тесты можно увидеть только через обмен, а он требует доступа к интернету на сервере 1с предприятия.
Доработан интерфейс, например отчеты перенесены в меню «создать на основании», а также через это меню возможно окрыть более одного окна 🙂
Начата работа над возможностью запуска в файловой версии. К сожалению, это потребовало убрать старый механизм фонового обновления информации, теперь окно подвисает на время выполнения теста.
Версия 1.0.004
Добавил обработку для проверки механизма синхронизации: указываете, сколько потоков запустить, она показывает сколько потоков в какой момент получили сигнал синхронизации.
Дорботал интерфейс — на рабочий стол поместил список тестов, перенес отчет и новую обработку с панели действий на панель навигации (с верхней на левую).
Версия 1.0.003
Исправил синхронизацию потоков — теперь все потоки запускаются действительно одновременно, ранее на большом количестве потоков некоторые потоки «съезжали» по времени на время до 7 секунд (для 112 потоков, особенно на слабых серверах), что вызывало «флуктуации» в сторону аномального увеличения производительности результатов для большого количества потоков.
Информация о сервере 1с теперь заполняется при открытии формы, а не после выполнения теста.
Версия 1.0.002
Добавил автозаполнение информации о сервере 1с.
Изменил алгоритм синхронизации потоков — теперь используется ЗапуститьПриложение вместо бесконечного цикла для ожидания запуска других потоков, что не грузит процессор и дает время для запуска других потоков. Также увеличил время на синхронизацию до 30 секунд.
Теперь тесты выполняются в 1, 2, 4, 8, 16, 32, 48, 64, 80, 96, 112 потоков.
Обновил WS-ссылку, добавил версию платформы в результаты.
Добавил запрос на публикацию результатов теста при изменении (Внимание! Для успешной публикации должен быть разрешен интернет на сервере 1с!)
Версия 1.0.001
Добавил автосохранение после выполнения теста. (Отчет по текущему тесту теперь работает сразу после выполнения теста).
Добавил версию конфигурации в результаты теста.
Обновил WS-ссылку, подчистил WSDL, убрал anyType везде.
Убрал заглушку на кнопке «Опубликовать», теперь результаты публикуются на http://fragster.ru/perfomanceTest/ , можно сравнить с другими.
Версия 1.0.000
Причесал интерфейс
Добавил сохранение результатов
Немного изменил алгоритм проведения документов, добавил в него выборку данных.
Добавил отчет по тестам с красивыми графиками 🙂
Добавил вызов веб сервиса, прошу протестировать (пока там только пустышка). В ближайшие пару-тройку дней добавлю сохранение результатов и вывод статистики на отдельную страничку. Возможно добавлю «засасывание» результатов с этой страницы, чтобы можно было стравнить прямо в конфигурации результаты разных людей встроенным отчетом.
Первая версия, она же альфа:
Начал писать тест для оценки производительности сервера в режиме параллельной работы. Нулевая версия, просто выполняет теств1/2/4/8/16 потоков, не накапливая статистику. Пока работает только в клиент-серверном варианте.
Чем принципиально будет отличаться от 1С:Тест-центра? Может лучше его допиливать, чем свое с нуля писать?
(1) Наверное тем, что тест центр надо покупать, а также настраивать этот комбайн, здесь же 1 клик — и результат есть. Попугаи получаются вполне себе. Надо статистику поднабрать, но нормальный результат >2000 для РС, >1500 для РН и >1000 для РБ на 4 потоках
Как реализована многопоточность?
(3) фоновыми заданиями
Кто скачал и выполнил тест, прошу нажать на кнопку «опубликовать» в конфигурации!
А в чем отличие от теста Гилева?
(6) andrei.k, тест Гилева — однопоточный. Этот — многопоточный. Например на этих 2-х серверах тест гилева показывает одинаковый показатель, однако же с увеличением количества пользователей картина меняется радикально:
http://wstaw.org/m/2013/03/03/plasma-desktopk17204.png
http://wstaw.org/m/2013/03/05/2.png
(6) andrei.k, или вот еще характерный пример:http://s019.radikal.ru/i635/1303/05/668b720f69b1.jpg
С кластерами? нестандартными портами? Авторизацией на сервере ОНО работает? Или как и Гилева — сначала доработать напильником?
Под 8.3 тоже имя объекта РУКАМИ менять?
(9) ArtfulCrom, работает. Только на линух сервере без ключа больше 8 потоков не выдаст (потому что следующее значение 16, а это больше 12 возможных соединений) и на постгре в конфиге надо максимальное количество соединений увеличить, иначе на 96 остановится. На 8.3 не проверял, но должно работать, вроде старался без овнокода делать.
(10) спасибо, добрый человек. Скачал потестим.
Линукс у нас есть. Ключей защиты на всех хватит )
А вот с этого места пожалуйста подробнее? Что именно и где? а то нужно админам передать, я ж в самой настройке зелень, аки…. кузнечека )
(11) ArtfulCrom, нужно в postgresql.conf найти строку с
max_connections = 100
и поменять на нужное число, для теста минимум 113, ну если там пользователи еще работают, то ставьте 200-250
(12) Передал. Зелень по результатам теста )
Вернули ответ:
сейчас стоит max_connections = 1024
(13) ArtfulCrom, только заполните инфу о сервере СУБД, если он не на машине с сервером 1с и нажмите «Опубликовать» после завершения тестов, пожалуйста. Вот, кстати, задача на будущее, собирать информацию о кластере серверов 1с, если он размазан по разным машинам.
Еще вопрос… логичный. Нет никакого РТФМ по запуску.
На чем обработку запускать? На любой рабочей БД? Это безопасно для ее данных? На чистой, пустой БД? На какой-то типовой?
Стоит ли смотреть какую инфу она публикует на сервере результатов? Или вам можно доверять в плане адресов и паролей? )))
(14) ArtfulCrom, Это отдельная конфигурация, соответственно, изолирована от других конфигураций. Публикует информацию наhttp://fragster.ru/perfomanceTest/ . Пароли если и будут введены, то только для регистрации на этом сайте.
(15) опубликовалhttp://fragster.ru/perfomanceTest/testDetails.php?guid=358d9dab-945a-11e2-8dae-003048f00d88
теперь бы понять что эти попугаи значат и почему ярко выраженные провалы (например на 64-х потоках) и графики не похожие на те что в публикации
(17) Aleksey_3, попугаи — это количество операций, выполненных всеми потоками за 10 секунд. На одном потоке 400 примерно соответствует 15 по тесту Гилева (это я по своим серверам сужу).
Из графиков можно судить, как просядет производительность при энном количестве активных пользователей. Почему взялись провалы — сказать, на самом деле трудно, тем более, что они, как я понял, повторяются в нескольких прогонах теста.
Ваши графики не похожи на те, что в публикации — потому что в публикации график сделан на тестовом «сервере» — коре дуо первого поколения (двухъядерном) и 2 ГБ нешустрой (866 ДДР2) оперативной памяти.
Кстати, на этих выходных у меня таки получилось допилить SOAP сервер на php таким образом, чтобы он передавал сложные структуры таким образом, чтобы 1с их кушала нормально. Соответственно, скоро будет версия теста с глобальным обменом результатами.
А где хоть маленький faq ? Нажал на кнопку. Когда закончится ? Как анализировать результаты и т.д.
Спасибо
(19) mybracho, закончится через пол часика, анализировать — там есть 2 отчета: «Отчет по тесту» и «Профиль результата». Первый показывает сводную информацию и падение производительности в зависимости от количества активных пользователей, второй — насколько меняется распределение времени выполнения одной операции в зависимости от количества потоков, т.е. насколько влияют блокировки и обслуживание служебных таблиц типа итогов, нумераторов и т.п.
приемлемая нижняя граница производительности — это 500 на поток, ниже — уже совсем некомфортно работать, но это верно для так называемых «активных пользователей», в общем случае момент количество пользователей можно увеличить на 10 (т.е. 10% активности) а то и больше 🙂
производительность менее 500 в тесте 1 потока — говорит, что либо что-то с железом, либо оно совсем старое.
Также интересная вещь, определяющая производительность встроенного механизма управляемых блокировок сервера 1с — обработка «проверка синхронизации» — она проверяет, через сколько времени сколько потоков получают информацию о снятии блокировки.
Может конфу для файлового варианта отдельно сделать? А В клиент-серверном оставить как было, с показом результатов по мере выполнения тестов. А то, первый раз когда запустил, подумал, что сервер подвесил. Хорошо, что уже никто не работал…
(22) ansh15, я, наверное, сделаю, чтобы в файловой замерзало, а в клиент-серверной — нет.
Скачал, загрузил конфу в новую базу на сервак, запускаю с другого компа (win serv 2008R2/RDP) в режиме клиента получаю ошибку:
Платформа: 1С:Предприятие 8.2 (8.2.14.519)
Конфигурация:
Режим: (сжатие: усиленное)
Приложение:
Локализация: Информационная база: русский (Россия), Сеанс: русский (Россия)
Ошибки:
———————————————————————————
10.04.2013 12:44:21
{ОбщийМодуль.ОбщиеФункции.Модуль(17,55)}: Слишком много фактических параметров (ЗапуститьПриложение)
ЗапуститьПриложение(«ping -n 2 127.0.0.1», , Истина, <<?>>КодВозврата); // windows
{ОбщийМодуль.ОбщиеФункции.Модуль(21,55)}: Слишком много фактических параметров (ЗапуститьПриложение)
ЗапуститьПриложение(«ping -c 2 127.0.0.1», , Истина, <<?>>КодВозврата); // linux
ЧЯДНТ?
(24) serg1974, спасибо за сообщение об ошибке. Оказывается, код возврата появился только в 8.2.15. Сейчас подготовлю обновление с исправлением.
Хотелось бы увидеть сколько попугаев выдают типовые конфигурации серверов, чтобы было понятно с чем сравнивать.
(26) KroVladS, а что значит «типовые конфигурации серверов»? имеющиеся результаты можно получить прямо в конфигурацию с помощью обработки «обмен результатами». Чем больше комментариев в тестах пользователи будут указывать — тем проще накопить статистику и анализировать, но, к сожалению, я пока не придумал, как стимулировать этих самых пользователей к заполнению этой самой информации.
Всем здрасьте! Ребят, что можно сказать, глядя на графики, по поводу производительности системы: 2*Xeon E5-2670, 128ГБ, RAID 10, Windows Server 2012, Postgresql 9.1.2. Че-то мне кажется слабенько получается. Ставил 40 пользователей. max_connections прописывал и 200 и 1000. Когда shared_buffers поставил 2048MB — результат существенно улучшился. Что еще можно настроить? Заранее спасибо всем неравнодушным!
(28) Кинстинтин, очень плохо, во первых — почему такие колебания графиков? тестирование проводилось во время работы пользователей?
http://www.gilev.ru/1c/81/postgresql/ (Вячеслав почему-то убрал статью, но в сети куча подобных статей, например http://www.1c-remote.ru/nastroika_postgre_dlya_1c.html) , после чего заново прогоните тест. Умолчательные значения ориентированы больше на веб-серверную специфику (простые маленькие запросы).
Также непонятно, почему временные таблицы почти не отличаются от реальных, надо посмотреть temp_buffers (увеличить?), да и вообще, посмотрите рекомендации
Нет, в данный момент к серверу не подключен ни один пользователь — запускаю его с нуля. Сам удивился почему так сильно разнятся графики с другими людьми. Буду читать — разбираться. Спасибо большое!
(30) Кинстинтин, А график уже с увеличенным shared_buffers?
Я уже и не помню с увеличенным shared_buffers или нет. Вот результаты нового тестирования со следующими настройками, которые я корректировал: shared_buffers = 4096MB, temp_buffers = 32MB, work_mem = 10MB, maintenance_work_mem = 60MB
(32) Кинстинтин, ну, видимо, первый график до увеличения — разница в 2 раза. Но все равно — не должен он так загибаться вниз, должен выходить в горизонталь при достижении предела производительности (как у почти всех остальных результатов, в том числе и у postgre. Правда, как я понял, остальные результаты postgre — на линуксе).
А диски какие? Также можно поэкспериментировать с fsync = off у постгре.
Все тесты на Винде. 4 диска Hitachi HUS156030VLS600 15000RPM на контроллере LSI 9260-8i, как уже выше писал RAID 10. 1С: Предприятие 8.2.17.153.
С fsync = off потестирую сегодня попозже, как серверный ключ освободится. Кстати, насколько помню, на рабочей базе fsync крайне не рекомендуют же выключать, если бэкапса управляемого нету?
(34) Кинстинтин, да, по поводу упса — верно. Но он же есть, да?
В магазине есть 🙂 А если серьезно, то планируем покупать. А пока базы не рабочие — можно и поэкспериментировать. Может, еще какие настройки подкрутить в postgre? Неужели у остальных все «ровно» работает?
fsync = off. Графики практически не изменились.
Поставил на встроенный контроллер Интел древненький жесткий диск (Seagate 320GB 7200.12). Установил с нуля систему. В postgresql все настройки по умолчанию. Результат получился еще больше, чем в RAIDе.
Но поведение графиков все же схожее. Куда рыть? Сейчас гоняю на других настройках.
(39) Кинстинтин, Есть возможность попробовать на линуксе?
Еще есть вариант посмотреть perfmon.msc на предмет того, во что упирается — в процессор, в диски или еще во что (очередь к чему становится сиииильно больше на 32 потоках чем на 16). Но судя по тому, что при замене дисков пик переместился в 8 потоков на 16 — дело таки в них. Ну, или в каких-то других настройках, которые были изменены между тестами.
Линукса, к сожалению нету. Ни разу не пользовался perfmon.msc. Как юзать, подскажите, плиз. Ниже графики с настройками: 1000 — подключений, shared_buffers = 4096MB, temp_buffers = 32MB. Остальное по умолчанию
Кстати, а «Вид СУБД» нужно выбирать? 🙂 А то я выбираю Postgre SQL, и еще ставлю крыжик «Сервер СУБД». Хотя, пробовал по-разному — результаты сильно не изменялись
(43) Кинстинтин, все, что находится на форме теста, кроме того, что на вкладках в нижней части — предназначено для других людей, которые будут сравнивать свои результаты, с результатами, полученными через обработку обмен результатами. Табличная часть — она предназначена для того, чтобы можно было указать описание сервера СУБД, если он не на компьютере с сервером 1с. Ну, или поставить галочку на строке с сервером 1с, показав таким образом, что они находятся на одном компьютере.
А вот графики из связки Windows Server 2012 + MS SQL Server 2012
(45) Кинстинтин, Это те же железяки? Да уж, разница очевидна 🙂
Вот еще бы db2 протестировать…
Интересно, сейчас проанализировал графики — до 4-х потоков PostgreSQL примерно с MS SQL наравне, а потом резко падает вниз. Тесты производились на том же железе — причем на старом винчестере (RAID-массив отключен). Следовательно, делаю выводы, что падение скорости все-таки из-за PostgreSQL, возможно, настройки. А железо в норме. Еще думал, может, Сервак 2012, но он бы и с MS SQL тормозил.
А что нам даст тестирование db2?
(47) просто Postgre очень сильно полагается на кэширование IO операционной системы, а MSSQL использует свои механизмы. Именно по этому я про линукс и говорил. Возможно, что дело именно в том, что постгре под виндой.
Было бы у меня время и оборудование — я бы с удовольствием провел бы кучу экспериментов, но, к сожалению, нет времени ни того, ни другого 🙁
Тестирование db2 — оно даст полное сравнение 3-х СУБД на одинаковом железе (такого исслдедования я еще не видел).
В принципе, у меня со временем тоже негусто, но потестить интересно. Опять же, нужно ведь на полноценной версии пробовать, а не на ограниченной IBM DB2 Express-C. Я правильно понимаю? Полную, к сожалению, не нашел.
(48) Тогда уж и Oracle тоже надо протестировать, чтобы совсем полная картина получилась. И не Express, конечно.
В общем запускал групповую обработку — проведение документов одной и той же базы на серваке на PostgreSQL и MS SQL 2012 — результаты по времени практически один в один. Остался доволен. Прекратил поиски — запустил сервер в работу.
(51) Ну так стандартное перепроведение — оно же однопоточное, а разница в однопоточном режиме не так уж и велика. Кстати, для такого режима лучше всего что-нибудь с большим количеством мегагерц (проца и шины) и маленьким — ядер 🙂 Например, восстанавливать последовательность в отдельном узле РИБ и компом с АМД на 4,5-5 ГГц, причем на файловой (если база влезает в файловую, конечно)
Почему-то не хочет показывать результаты других пользователей, сам обмен результатами выполняется без ошибок. Платформа 8.2.18.82, на более ранних все показывалось. И еще может подвиснуть сервер приложений, перестает отвечать на обращения как из клиента так и из консоли администрирования при количестве фоновых заданий от 64-х и выше. А, и еще не показывает результаты выполнения каждого теста online, только после окончания всего теста во вкладке результаты появляются строки.
(53) ansh15, на .18 не тестировал, возможно дело в платформе. а различия по результатам есть?
По поводу обмена: видимо, срабатывает ограничение по памяти на хостинге. Переделал, теперь выплевывает по 10 результатов за одно нажатие кнопки обмена, просто надо нажимать на «обмен», пока не перестанут приходить новые результаты, в следующих версиях сделаю автоматическую подгрузку оставшихся частей.
(54) Нет, различий нет, также осталось. По поводу подвисания сервера приложений, подумал, может увеличить число рабочих процессов до 4-8, сейчас 2 запущено. При одном рабочем процессе висло уже на 48-и фоновых заданиях. И еще наблюдение, при выполнении теста на синхронизацию потоков при 112 потоках, сеансы с PostgreSQL не завершаются, а остаются в состоянии idle in transaction и висят сколь угодно долго,вплоть до рестарта сервера приложений. Тутhttp://gray-hemp.blogspot.ru/2008/08/idle-in-transactions.html немного пишут про это, в принципе, не страшно, в повседневной работе такого не возникает, но все же…
(55) да, так работает.
Несколько вопросов:
1. Этот файл конфигурации объединять с тестируемой конфигурацией?
2. Обязательно запускать тест на работающей конфигурации или можно развернуть бэкап и запускать на нем? Т.е. симулируется ли работа?
3. Поддерживаются варианты: файловый и клиент-серверный? По комментариям выходит, что оба — просто уточнить.
Спасибо.
p.s. хотим сравнить скорость работы в обоих вариантах, т.к. база весит пока что около 2 гигов.
(58) nevro, в отличии от тестцентра этот тест предназначен для измерения производительности не алгоритмов + субд + железа, а только субд + железа. Это самостоятельная конфигурация, ни с чем объединять ее не требуется, просто загрузить .cf в пустую базу.
Пока поддерживается только клиент-серверный вариант из-за сложности организации многопоточности в файловом варианте.
>>в отличии от тестцентра этот тест предназначен для измерения производительности не алгоритмов + субд + железа, а только субд + железа
Понятно. По файловому варианту тесты существуют?
(60) nevro, 1с:тест-центр будет работать в многопоточном режиме, но там настраивать надо. В однопоточном режиме — есть тест Гилева:http://www.gilev.ru/tpc1cgilv/ однако же из графиков в топике и комментариях видно, что однопоточный режим не полностью характеризует производительность системы, интегральная (суммарная по всем потокам) производительность при росте количества потоков может расти весьма значительно.
Многопоточность — это количество подключений к базе?
(62) в смысле? Многопоточность — это выполнение чего-то в несколько «потоков», параллельно, т.е. «свойство действия». В данном тесте количество подключений к базе равно количеству «потоков» теста (просто потому что 1с так работает) + 1 подключение, из которого осуществляется запуск теста.
Добрый день, Подскажите пожалуйста на что влияет реквизит «Количество пользователей» в справочнике «Тесты»
(64) khan, все, кроме того, что находится на панели «настройки», является информационным и в большей степени нацелено на информирование остальных пользователей теста при обмене результатами.
Конкретно это поле — сколько пользователей работает на данном сервере в «боевом режиме».
Написать подробную справку/инструкцию пока руки не доходят 🙁
Тестирую два сервера БД, т.е. сервер 1С — один, и два сервера БД. Получилось непонятно : одинаковый тест сервер БД1 показывает 976 на поток в среднем, сервер БД2 — 920, но при этом на сервере БД2 тест выполнился за 1 ч 52 мин, а на сервер БД1 — 2 ч 43 мин.
Т.е. по тесту БД1 производительней, а по времени выполнения результат обратный. Как это понять ?
(66) khan, очень просто — после проведения собственно тестов идет удаление тех данных, которые были созданы в процессе, и чем больше этих данных — тем дольше они удаляются, а удалялись они в 1 поток в версиях до 2.0.006. В версии 2.0.006 удаление происходит по разным видам метаданных параллельно, что сократило время теста до ~35 минут на стандартной точности (по крайней мере на серверах где я тестил).
кстати производительность сервера 1с намного сильнее влияет на результаты, чем производительность сервера СУБД, если они разнесены
У кого какие результаты? Похвастайтесь. И какая конфигурация сервера дает такую производительность обязательно укажите)
Просьба прокомментировать windows2012 + sql2008r2(64), 1c 8.2.18.61(32 битная)
Железо: Сервер SRV|Legion SL2500/4UT8G2 / CPU-E5-2620×2 / 65G 1333мгц / SAS3,5-300G15Kx4 / LSI Megaraid 9271-4i
raid 10.
(70) Buldog57, а в районе 1-2 потоков можно покрупнее? или без временных таблиц. Вообще — сервер — зверь 🙂
71 щас попробую)
(71) Что то не пойму а что ты там хочешь увидеть?
(73) Buldog57, сколько «попугаев» в 1 поток. Вообще — для практического применения можно воспользоваться графиком «производительность на поток», количество потоков, когда график пересечет 500 — это «условно максимальное» количество _активных_ пользователей, при котором они еще как-то смогут работать. Имеется ввиду именно железо, если на реальной базе «тормоза» начинаются сильно раньше — то, конечно, можно наращивать железо, но намного больший эффект даст оптимизация конфигурации 1с и/или организации бизнес процессов (применительно к серверу из (70)). Ну а если не все пользователи являются активными — то количество пользователей можно пропорционально увеличить.
Также показателен отчет «профиль выполнения» — он показывает сколько времени длилась одна операция, т.е. если 90% выполнялись 15мс, 9% — 30, а 1% — больше секунды — то отчет «профиль выполнения» это покажет.
Теперь скину только через две недели когда заменят рейд плату глючная попалсь(((
(76) Buldog57, очень хочется посмотреть попугаев в одном потоке.
(0) Fragster
Также при очистке данных регистров накопления и сведений теперь выключаются итоги.
Включаются по окончании удаления или перед запуском теста?
(77) Сегодня привезут сервак завтра поиграюсь повешу скрин)
(78) CratosX, включаются по окончании удаления. Но удаление «на всякий случай» проводится еще и перед запуском теста — на случай, если предыдущий запуск отвалился и в регистре есть данные.
Ура приехал сервачок)) выкладываю скрины, размер объектов обычные, повышенная точность очень долго плиз комменты)) потом еще с большими объектами тестану!!!
что то Комментов нету
(82) Buldog57, сдохли от зависти))
(83) CratosX, Ой да ладно))) не ужели прям гипер система)) даже ссд винтов нет:((
Fragster, объясните плз, для тех кто в танке. Могу ли я на Вашем тесте проверить нагрузочную способность 1С+SQL фермы на 50000 пользователей?
(85) babys, там сейчас стоит ограничение в 112 потоков выполнения, скорее всего это для вашей системы будет маловато. Но код открыт, можете добавить/поменять количество потоков теста, только прошу в таком случае не обмениваться результатами, чтобы не «портить» общую базу
(84) Buldog57, ну, у вас в пике 30000 по регистрам всяким, а у меня — 4 (правда этого все равно на 100 сонных пользователей хватает, да) 🙂
Интересная статья! Спасибо!
Тестирование не работает, после сообщений —
17.09.2013 8:36:08 Старт теста Регистры бухгалтерии в 1 потоков
17.09.2013 8:36:02 Старт теста Регистры накопления в 1 потоков
17.09.2013 8:35:55 Старт теста Регистры сведений в 1 потоков
17.09.2013 8:35:49 Старт теста Справочники в 1 потоков
17.09.2013 8:35:41 Старт теста Временные таблицы в 1 потоков
сообщает об ошибке —
{ОбщийМодуль.Тестирование.Модуль(139)}: Ошибка при вызове метода контекста (ОжидатьЗавершения)
ФоновыеЗадания.ОжидатьЗавершения(МассивЗаданий);
по причине:
Выполнение одного или нескольких заданий завершилось с ошибкой
(89) Sergant, прошу сообщить релиз платформы, а также сообщение об ошибке из журнала регистрации.
(90) платформа 1С 18.109, в ЖР ошибок нет.
(91)(92) Sergant, ну не может же такого быть, что в фоновом задании выбросилось исключение, а в ЖР не отобразилось. В настройках ЖР, судя по всему, уровень журналирования максимальный.
Тест падает стабильно на запуске в два потока (или на очистке после одного потока)? База, я надеюсь, клиент-серверная?
(93)
уточню симптомы проблема возникает
— при любом кол-ве потоков (возникала при одном двух четырех восьми шестнадцати), результаты предыдущих выполненнх этапах остаются видны, результаты очень низкие.
— работа с мсскл стабильна, проблемы только с посгрес
— иногда тест на посгрес завершается без ошибок.
подключение клиент серверное.
(94) Sergant, а вариант с постгре — сервер 1с случайно не на линуксовом сервере без ключа?
(1)
(с) Е. Филиппов, автор настольной книги эксперта по технологическим вопросам, инфостарт эвент 2017
(138) А ты злопамятный
(139) просто сижу в зале)
(140) и вспомнил, что кто-то, что-то такое уже спрашивал и надо бы вот прям щас ответить? Спустя 140 каментов
(141) не, смотрел дату создания публикации (на мобилке она внизу) и увидел первый коммент