Измерь его правильно! Краткое описание общепринятого метода оценки производительности DB серверов

10.11.18

База данных - Инструменты администратора БД

Сообщество программистов (администраторов) 1С является одним из самых замкнутых на себя. Тот же JAVA senior без особых вопросов напишет код на PHP или на Python, если этого потребует обстановка. 1Сники же и powershell и bash и PHP и все остальное с разной степенью успешности реализуют на 1С. В последнее время ситуация немного меняется, классическое высшее образование программистов уже не ограничивается ассемблером, бейсиком и фортраном. Никто не падает в обморок при виде class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } Попробуем покуситься на тест Гилева © и узнать, как без него обходятся DBA админы остального мира, слабонервных прошу удалиться, остальных прошу под кат...

Россиянин за границей пытается купить презервативы в аптеке.
Естественно - языковой барьер, не знает как объяснить. Видит - аптекарь мужик.
Достает свое хозяйство, кладет на прилавок и рядом 10$. 
Аптекарь не долго думая, достает свое и со словами:- Не уверен - не играй! забирает все деньги.

Что вам даст прочтение этой статьи:

  • Возможность общаться на одном языке с провайдерами всего мира, предоставляющими облачный хостинг серверов, при выборе места для сервера 1С.
  • Новый подход к тестированию быстродействия существующего оборудования.

Скажу сразу и жирным шрифтом:
Я не против решения всего и вся на 1С, а перед теми кто их создает, вообще снимаю шляпу.
Но иногда робко спрашиваю - зачем ?

После того как об меня сломалось очередное копье, долгими осенними вечерами написал я эту статью.

По большому счету любой DBA, находящийся за пределами 1С, ничего нового в ней не откроет.
Теоретически, он может даже сказать: Все, расходимся, нас обманули. И спокойно продолжить слушать музыку у сервера (или музыку сервера, кому как угодно).

Но в сообществе 1С и неожиданно у некоторых облачных провайдеров, публикующихся на Хабре, обнаружилось непонимание темы.
Масла в огонь подлил журнал "Системный администратор"  (!) №5 за 2017 г. с вопросом:

Сервер набрал примерно 17 баллов, в то время как десктоп – более 40... Так что же, сервер 1С лучше разворачивать на бюджетном железе, купленном в ближайшем киоске? 

Продолжу для них.

Зачем собственно пробовать что-то еще, если есть чудесный тест Гилева ©:

  1. Пожалуй самое главное ограничение теста Гилева © - это то, что провести его мы может только постфактум - установив 1С сервер.
    Кофе в постель могу сам себе подать. Но придётся встать, одеться,приготовить, раздеться, лечь и выпить. Жванецкий ©
    В добрые старые годы это не было большой проблемой - сервера были куском железа, а ключ 1С - USB.
    Пользуясь расположением поставщика можно было все тесты провести до покупки.
    Сейчас же сервера в облаке, а ключ программный (либо доплата за USB) и все не так просто.

  2. Тест идет по методологии TPC-A  (метода TPC-1C-GILV-A пока на сайте организации TPC не зарегистрировано) 
    И его второе ограничение, об этом сказано на сайте :
    Тест оценивает количество работы в единицу времени в одном потоке и подходит для оценки скорости работы однопоточных нагрузок
    То есть равные по скорости, но отличающиеся по количеству ядер процессоры дадут равные результаты.
    Хотя даже интуитивно понятно, что c Intel© Core i7 база будет работать быстрее чем с i3, i5.

  3. Это то, что его вообще нужно проводить. Правда, было бы неплохо, если бы сам поставщик предоставил результаты ?
    А еще лучше выбрать нужные результаты и под них собрать оборудование, хоть бы и виртуальное.

Еще раз внимание! 
Не против я этого теста, в конце концов можно мерить чем угодно, если это измерение дает повторяемость на различных конфигурациях софта/железа.

Переходим к теме:

Де-факто метод тестирования крупных провайдеров предоставляющих облачный хостинг (Alibaba Cloud к примеру или Google Cloud, на котором кстати, самое подробное описание работы) и удобная вещь в хозяйстве - HammerDB.

Методика тестирования не сложная, по сути напоминающая тот самый "Стандартный нагрузочный тест" из "Корпоративного инструментального пакета".
По классификации  www.tpc.org тесты близкие к TPC-C или TPC-H, но не такие полные.

Описаний по использованию - предостаточно, в том числе русскоязычных. 

Поэтому подробно расписывать ее не буду, опишу в общих чертах и больше про те грабли на которые наступил.
Самые большие - программа не работает с версиями MS SQL ниже 2008.

  1. Скачиваем программу с официального сайта www.hammerdb.com. Устанавливаем.(Можно взять поставку и в виде zip архива, ее достаточно распаковать)

  2.  Для последних редакций может потребоваться установить распространяемый компонент Microsoft Visual C++ для Visual Studio 2017, иначе она просто упадут с ошибкой.

  3. Создаем базу на SQL сервере (не обязательно Microsoft), название произвольное. Размер желательно сразу указать большой, чтобы рост файла не влиял на результаты теста. На Хабре горячие головы указывают под 200 Гб, но это на мой взгляд перебор.


  4. Запускаем программу с клиентского компьютера. Выбираем тип сервера MS SQL и заполняем базу - Schema Build
    Требуется указать параметры подключения к серверу.
    Внимание! Программа будет строить строку подключения исходя из этих полей, поэтому совершенно не обязательно, что тип клиента в вашем случаем именно такой как указан по умолчанию.
    Скорее нет.

    Поэтому, если подключиться не удалось - нужно идти на сайт www.connectionstrings.com и там подбирать исходя из своих сервера и установленных клиентских компонент.
    Количество складов и виртуальных пользователей лучше поставить как на рисунке, тогда база будет приемлемого размера. (тот же Alibaba Cloud тестирует на этих величинах)

  5. Нажимаем Build



    и наблюдаем процесс заполнения базы данных



    Если все виртуальные пользователи стартовали -все идет по плану, если нет - первым делом проверяем строку соединения.
    Через некоторое время процесс завешается. Все флажки - зеленые. База готова к тесту.

  6. В ветке Driver Script повторяем параметры подключения и задаем "время разгона" теста и время его проведения
    Опять же значения можно взять с рисунка.



    Нажимаем Load и тестовый скрипт готов.

  7. Задаем количество виртуальных пользователей и не забываем установить флажок Show output

  8. Открываем вкладку Transaction Counter, чтобы видеть результаты теста

  9. Нажимаем Run и следим за результатами теста.

  10. Через некоторое время они стабилизируются

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

  12. Тем кому не надоело смотреть картинки, могут продолжить. (Полный набор в хорошем разрешении в шапке публикации.)
    Поделюсь некоторыми наблюдениями.

  13. В тестах сравнивается Intel Core i5-6500 против i5-2500K. Почему для статьи выбраны они ?
    Есть достаточно большой обзор от technical.city где видно как Core i5-6500 бьет Core i5-2500K.

  14. Что получилось у меня:

    Процессор/Тест

    WinRar

    7zip

    HammerDB

    Тест Гилева

    i5-2500K

    5180

    14500

    249500

    35,71

    Core i5-6500

    5370

    17800

    395100

    34,72

    Все результаты на рисунках.

Подведение итогов

Самые правдоподобные результаты показали 7zip и HammerDB.

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

Список использованной литературы и ссылки

 

На сладкое

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

Планы на будущее

  • Пополнить статью результатами тестов.
  • Попробовать HammerDB тест как нагрузочный.

Желающие поддержать статью могут скачать rds-performance_whitepaper_mysql-intl-en-2018-05-04 - это тест от Alibaba Cloud.

Тестирование производительности нагрузочные тесты выбор сервера HammerDB TPC

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

14400 руб.

06.12.2023    3711    19    1    

40

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 руб.

10.11.2023    4636    12    2    

38

SALE! %

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2280 руб.

14.01.2013    178830    1085    0    

862

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    28092    83    146    

61

"Менеджер потоков 2.1": УПП: "Восстановление партий"

Инструменты администратора БД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет Управленческий учет Платные (руб)

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11881    5    9    

7

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61597    90    59    

74

Конфигурация Session Monitor

Мониторинг Инструменты администратора БД Платформа 1С v8.3 Россия Платные (руб)

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    14443    35    0    

49

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    11217    5    8    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
118. alex_sh2008 4 03.11.18 19:16 Сейчас в теме
(117) На самом деле в статье ваш посыл правильный, нужно тестировать отдельно сервер баз данных и сервер приложения, а потом уже в комплексе. Но в целом мало кого интересует отдельная производительность компонентов, нужна общая. Мне часто приходилось доказывать, что с производительностью серверных систем все в порядке, что это особенности архитектуры сервера 1С, и выше головы вы не прыгните, по серверам баз данных я еще мог привести реальные цифры, они есть в интернете, где проводятся нагрузочные тесты с разными архитектурами серверного оборудования, а вот по серверу 1С нет такого анализа.
У меня как раз все было на сервере в общем модуле, иначе как бы я запускал 20 фоновых заданий. Я запускал просто регламентное задание в определенное время, не сидеть же за компьютером постоянно, ставил выполнить ночью, с утра смотрел журналы. Даже больше скажу случайно заметил rphost к которому была привязана тестовая база загрузил все ядра процессора, ставил вм 8 ядер, при просмотре лога 1С, в момент получения журнала, процесс останавливал свою работу и после получения данных журнала снова продолжал, меня это поведение шокировало, сейчас может исправили, а может так и оставили, я не интересовался.
119. genayo 03.11.18 21:28 Сейчас в теме
(118) 1С работает не оптимально. И что дальше?
Gilev.Vyacheslav; +1 Ответить
120. alex_sh2008 4 03.11.18 21:51 Сейчас в теме
(119)Учитывать это при запуске конфигураций, и понимать что некоторые конфигурации не дадут той производительности которую хотелось бы иметь, переписывать определенные алгоритмы в конфигурации в которых будут учтены эти особенности платформы, ну или для серверов 1С покупать процессоры с максимальной тактовой частотой существующей на рынке. Увеличением количества ядер без изменения частоты ядра не даст производительности на ядро, но даст увеличение пропускной способности сервера. Например при определенных условиях проекта на сервер базы данных достаточно будет процессоров с тактовой частой 2.2 Гц, а вот для серверов 1С понадобится процессор с тактовой частой 3-4Гц, что в общем итоге может не изменить общие финансовые затраты на все решение. Но если нет данных по тестированию самого сервера 1С без базы данных, невозможно правильно рассчитать оборудование под него.
121. genayo 03.11.18 22:04 Сейчас в теме
(120) Не может быть данных тестирования сервера 1С без СУБД. Это химера какая-то. Также, как без учёта ОС. Попробуйте объективно сравнить связку MS-MSSQL-1C c CentOS-Postgres-1C.
122. alex_sh2008 4 03.11.18 22:17 Сейчас в теме
(121)В моих набросках в скрипте построение дерева можно сказать база вообще не используется, требуется только на начальном этапе это время соответственно не берется в расчет, можно и более сложные скрипты сделать включая математические.
Тесты всегда проводятся для конкретной среды использования, в вашем случае это linux, ну соответственно и брать статистическую базу тестирования Postgres-1C без сервера 1С, вы точно будете знать какую производительность дает вам сервер базы данных сравнивая алогичные тесты на схожем или более производительном оборудовании, ну и то же самое для сервера 1С. Лучше тестировать в начале сервер базы данных, затем на нем можно создать голую базу и прописать в ней регламентные задания, с необходимым вам алгоритмом, но без доступа к объектам базы. и уже потом вы сможет все вместе протестировать. Самый простой способ запустите преложенный мной скрипт для 1С, и и это:
123. genayo 03.11.18 22:22 Сейчас в теме
(122) Ну вы выясните, что сервер 1С требует максимально мощного железа при количестве пользователей больше 150, например, и что? Это и так очевидно.
126. alex_sh2008 4 03.11.18 22:37 Сейчас в теме
(123)Ну что я могу сказать, если вы можете покупать для 150 пользователей сервера под 1С за 1 млн. рублей то я рад за вас, в противном случае смириться с тем какую производительность вы получите. Все зависит от ваших желаний, не обязательно покупать дорогое оборудование, главное найти золотую середину между производительностью и эффективностью работы приложения, если вам надо что бы документ проводился за 1 секунду, вы во первых по пытаетесь его переписать, а потом уже не добившись результата думать будете об апгрейде железа.
128. genayo 03.11.18 22:56 Сейчас в теме
(126) 1 млн на железо это много для компании со 150 одновременно работающими пользователями? Хм... Ну и 150 это просто для примера было, замените на 1000, если мало :)
Gilev.Vyacheslav; +1 Ответить
130. alex_sh2008 4 03.11.18 23:10 Сейчас в теме
(128) По факту, у вас только может измениться ядерность процессор, например для 150 пользователей вы возьмете 1 процессор с 16 ядрами, я для 1000 2-4 но при тех же параметрах частоты процессоров. Мне вообще ничего не надо, для себя я уже определялся делая тесты, и понимаю на какую производительность выйду в той архитектуре которая будет выстроена
132. genayo 03.11.18 23:20 Сейчас в теме
(130) Что? Кроме процессоров не будет никакой разницы в железе на 150 и 1000 пользователей? Вы это сейчас серьёзно? Хотя, если не учитывать наличие сервера 1С...
Gilev.Vyacheslav; +1 Ответить
133. alex_sh2008 4 03.11.18 23:37 Сейчас в теме
(132)Если брать только серверную базу то фактически да, по ссылке которую я вам давал, Postgree на 4 ядерном процессоре выполнял в среднем 4000 транзакции записи чтения в секунду на CentOS, это по сути и есть 4000 пользователей которые он может обслужить, если они одновременно за 1 секунду сделают 1 запись или прочитают 1 запись, то есть примерно 1000 пользователей которые одновременно проведут 1 документ. А если брать чисто сервер 1С то надо уже на нем считать на каком оборудовании и в какой конфигурации он сможет обеспечить нагрузку серверу Postgres в 4000 транзакций в секунду и какое количество пользователей при этом будет делать запись. Примерно могу сказать что обслужить он сможет 200 пользователей на таком же типе оборудования что и сервер базы данных, но загрузит его на 20-30% процентов.
124. alex_sh2008 4 03.11.18 22:23 Сейчас в теме
(121) Скрипт делает 10 операций создания и удаления дерева, для усреднения показателей, java оптимизирует код в процессе исполнения кода, первое медленнее потом уже более менее производительность встает на оптимальную/

package treePerformance;

import java.util.LinkedList;
import java.util.List;

public class NTreeNode<T> {

    T data;
    NTreeNode<T> parent;
    List<NTreeNode<T>> children;

    public NTreeNode(T data) {
        this.data = data;
        this.children = new LinkedList<NTreeNode<T>>();
    }

    public NTreeNode<T> addChild(T child) {
        NTreeNode<T> childNode = new NTreeNode<T>(child);
        childNode.parent = this;
        this.children.add(childNode);
        return childNode;
    }
    public boolean RemoveChild(NTreeNode<T> node)
    {
        return this.children.remove(node);
    }
}
Показать

package treePerformance;
import java.util.*;


public class test {

public static void main(String[] args) {
int tasks = 10;
double average = 0;
for(int n = 0; n < tasks; n++)
{
int level = 1000000;
NTreeNode<String> root = new NTreeNode<String>("root");
NTreeNode<String> node = root;
Date startDate = new Date();

for(int i=0; i< level; i++) {
node = node.addChild("child" + i);
}
NTreeNode<String> prev = node.parent;
while(prev != root)
{
prev.RemoveChild(node);
node = prev;
prev = prev.parent;

}
average += (new Date().getTime()) - startDate.getTime();
}
System.out.println("Average time: " + average/1000/tasks);
}
}
136. capitan 2473 04.11.18 19:23 Сейчас в теме
(124)
Подтверждение моей мысли, что 1Сники уже не только 1С знают
137. alex_sh2008 4 04.11.18 19:43 Сейчас в теме
(136)Ну так для справки начинал я вообще с ассемблера и С/С++, времена были такие что пришлось переквалифицироваться на то что было на рынке и за что платили деньги.
127. alex_sh2008 4 03.11.18 22:54 Сейчас в теме
(121)Вот как пример тесты PostgreSQL для определенного железа и ос:
https://redbyte.eu/en/blog/postgresql-benchmark-freebsd-centos-ubuntu-debian-opensuse/
В качестве эталона можете эти данные использовать
129. genayo 03.11.18 22:58 Сейчас в теме
(127) Эталона чего? К чему стремиться, при написании конфы уровня ERP с нуля?
Gilev.Vyacheslav; +1 Ответить
131. alex_sh2008 4 03.11.18 23:19 Сейчас в теме
(129)для тестирования сервера базы данных, или вы бора оборудования. Ну это вам решать, чего вы хотите от вашей ERP. И какое количество пользователей оно может эффективно обслуживать, отсюда будет зависеть и функционал системы и то как вы будете его реализовывать. Если вы в одной базе не сможете получить эффективную работу приложения больше 1000, то и нет смысла реализовывать функционал который не нужен будет такого рода предприятия. В общем все от ваших хотелок зависит и жадности
135. Gilev.Vyacheslav 1911 04.11.18 02:55 Сейчас в теме
(131) вас послушать так ERP только "создает и удаляет деревья"
111. Gilev.Vyacheslav 1911 03.11.18 03:10 Сейчас в теме
(106)
к примеру для скл сервера получить данные и вернуть серверу 1С гораздо больше времени надо, чем серверу 1С обработать эти данные, но получается наоборот, скл выдает данные по запросам быстрее чем, 1С обрабатывает их, использовался только последовательный перебор полученных данных и ничего сверх сложного.

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

контроль блокировок на сервере 1С это просто наглядный пример, но далеко не единственный
даже если вы в явном виде к конфигурации код не пишите это не означает что платформа ничего не делает, наоборот
при работе с документами отрабатывает нумератор, который тоже на стороне сервера 1С, отслеживание событый и подписок, накладывается в интерактивном режим объектная не транзакционая блокировка, которую вы не сможете "отменить", могут срабатывать механизмы полнотекстового поиска 1С (не субд), логироваться действий в журнал регистрации, который тоже не на скуле, контроль логической целостности данных (если документ используется как данные в других местах), выполняется обслуживание сеансовых данных и так далее

Он обрабатывает и бизнес-логику и транслирует в SQL 

даже capitan начал догадываться что действия без сервера 1С в тесте 1С не корректны

Да именно так, сервер 1С выполняет свои скрипты медленно,

обычно такую терминологию используют программисты, не имеющие глубоких навыков кодирования в 1С и понимания архитектуры

(106)
получается наоборот, скл выдает данные по запросам быстрее чем, 1С обрабатывает их, использовался только последовательный перебор полученных данных и ничего сверх сложного.


вы сравниваете две разные по составу и объему работы, но при этом даже не знаете содержимое того что сравниваете

если я напишу код, где время на сервер 1С будет тратиться одна секунда а на субд выполняться час (запрос будет выбирать одну строчку из декартового произведения результатов сканирования миллиардов строк) - вы какой вывод сделаете, что субд медленно работает?
у вас тут что клуб кто сильнее отключит мозги
116. alex_sh2008 4 03.11.18 10:23 Сейчас в теме
(111)
обычно такую терминологию используют программисты, не имеющие глубоких навыков кодирования в 1С и понимания архитектуры

От скорости выполнения простых скриптов зависит общая производительность системы.

(111)
если я напишу код, где время на сервер 1С будет тратиться одна секунда а на субд выполняться час (запрос будет выбирать одну строчку из декартового произведения результатов сканирования миллиардов строк) - вы какой вывод сделаете, что субд медленно работает?

Я вам говорю про простые операции, а вы лезете в бутылку.
(111)
у вас тут что клуб кто сильнее отключит мозги

Это уже грубо, разговор закончен.
134. Gilev.Vyacheslav 1911 04.11.18 02:52 Сейчас в теме
(116)
Я вам говорю про простые операции

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

зачем вам тестировать например НЕ РЕПРЕЗЕНТАТИВНЫЙ ПРИМЕР, по которому нельзя сделать полезных выводов?!
107. alex_sh2008 4 02.11.18 19:13 Сейчас в теме
(104)По сути эти тесты тоже нельзя взять за эталон, слишком много не известных. Вот и хотелось бы понять за какое время разные виртуальные машины выполнят один и тот же скрипт без всяких сложностей и доступа к базе, например заполнение дерева в 100000 узлов и обратное удаление. Ну или более точные оценки производительности виртуальных машин Java, .Net и 1С.
113. Gilev.Vyacheslav 1911 03.11.18 03:15 Сейчас в теме
(107) слушайте, пишите на C, будет быстрее
зачем вам 1С?
69. capitan 2473 30.10.18 21:16 Сейчас в теме
(55) Попробую собрать выпавшего в осадок Вячеслава, но с общего разрешения не буду растекаться по всем комментариям,а соберу все в одном месте.
1. Вне всяческого сомнения такие облака есть. Я не думаю, что для не тормозящий ERP на 1000 человек это предел технологических возможностей человечества на 2018 год. Как пример 1С Фреш, Google & Alibaba & Amazon Cloud
2. Если у меня есть выбор между Google Cloud за 100 $ vs Alibaba Cloud за 100 ¥, то чтобы сравнить насколько один быстрее другого не надо проводить никаких тестов, они есть в готовом виде и им можно доверять. И тест этот будет TPC-C HammerDB
Живой пример из этой ветки Intel Xeon vs EPYC.
А тест Вячеслава выводит десктопы выше серверов в рейтинге настолько часто, что этим заинтересовался даже журнал Системный администратор
3.Если привести хорошего "железячника" он расскажет про каждый диод на плате - какую производительность он дает.
И это реально правда, у разных производителей на одном чипсете например разная производительность.
Но вся эта оптимизация, не дает более 5% вклада и делается она либо быстро ибо очевидна, либо не делается, потому что проще на деньги которые просит оптимизатор купить процессор быстрее и все.
4.Аналогичная история с платформой 1С. Если у вас DB в два раза медленнее никакой платформой вы ее не вытянете. И не просядете.
Максимум 5% будет разброс и то у самой неудачной и самой удачной. Да сервер может выесть всю память, но это уже не тест производительности, а кривые руки.
5. Все кривые настройки, оптимизация запросов и т.п. к тестированию производительности имеют мало отношения. На флоте говорят: В умелых руках и буй - балалайка.
6. Что касается однопоточного теста Вячеслава - то роль платформы - передать запрос SQL серверу, не более того. Я не думаю что там сильно производительность гуляет от релиза к релизу. Итог - к тесту она добавляет некую постоянную величину. Всегда. Возможно тут я могу и ошибаться
Если вас успокаивает что это делает сервер 1С и не смущает, что вы серверную платформу тестируете однопоточным тестом, то не вопрос.
6.Платформу 1С мы не выбираем - придет пора все поставят как минимум рекомендованную для типовых конфигураций.
И самое последнее в дни обновления будет подумать - а не быстрее ли 8.3.12.1676, чем 8.3.12.5576, там обычно думают, чтобы не было глюков.
Т.е. все ваши усилия по связке платформы 1С и SQL сервера в этот день собираются и идут лесом.
7. Огромный плюс теста Вячеслава, что им можно легко выбить деньги на апгрейд сервера у гендиректора.
Лайфхак: меряете скорость на макбуке директора и меряете скорость на сервере 1С, там будет все и 1С и красивые картинки и макбук в 2 раза быстрее.
После этого утерев скупую мужскую слезу просите новый сервер под 1С.
starik-2005; TerveRus; artbear; Fox-trot; +4 Ответить
71. Gilev.Vyacheslav 1911 31.10.18 01:38 Сейчас в теме
(69)
Вне всяческого сомнения такие облака есть. Я не думаю...

Вне всяческого сомнения есть такие люди, которые когда доходит до конкретики начинают говорить "бла-бла-бла".
В облаках Google & Alibaba пока "1С" видеть не водилось. А каждый наш второй клиент это виртуалки, а каждый третий это облака (виртуалки на чужом сервере) и по Amazon Cloud и 1С Фреш у нас достаточно негативной статистики. И один из популярных вопросов как раз "А вообще нормальный облачный провайдер 1С есть?".
Вы тут учите "как правильно" у тех у кого 1С нет. Как там говорится "Не умеешь работать - руководи. Не умеешь руководить - учи."
чтобы сравнить насколько один быстрее другого не надо проводить никаких тестов, они есть в готовом виде и им можно доверять.

к нам обычно именно примерно с таким "соусом" и приходят "пострадавшие" - на бумаге все красиво, 3PAR в облаке, сумашедшего бабла стоящий, который просто не может за такие деньги быть медленным и так далее, но что делать, "почему то жутко все тормозит"
Если привести хорошего "железячника" он расскажет про каждый диод на плате
тут я понимаю вы мою правоту нехотя признаете, ок
Аналогичная история с платформой 1С. Если у вас DB в два раза медленнее никакой платформой вы ее не вытянете. И не просядете.
выбрать какой то отдельный вариант удобный под теорию и не замечать соседние варианты из выборки это удобно, но не объективно. Ну а если у вас не сервере СУБД является узким местом, а дохлый сервер 1С в виртуалке, да еще на него "давят" соседние виртуалки, чем крыть будете? я хочу посмотреть как вы вашим тестом будете оценивать соседний сервер 1С.
Все кривые настройки, оптимизация запросов и т.п. к тестированию производительности имеют мало отношения.
на конечный результат влияние может оказать что угодно, такая вещь как схема энергоснабжения даже, и хотя в вашей семантике это кривые настройки, к тестированию производительности это имеет отношение. С вашим посылом можно продавать унылое железо и все валить на настройки (железо хорошее, вы просто его настроить не можете) - очень удобно, хе-хе.
роль платформы - передать запрос SQL серверу, не более того. Я не думаю что там сильно производительность гуляет от релиза к релизу. Итог - к тесту она добавляет некую постоянную величину. Всегда. Возможно тут я могу и ошибаться
не можете ошибаться, а точно ошибаетесь
Платформу 1С мы не выбираем - придет пора все поставят как минимум рекомендованную для типовых конфигураций.
И самое последнее в дни обновления будет подумать - а не быстрее ли 8.3.12.1676, чем 8.3.12.5576, там обычно думают, чтобы не было глюков.

ой, и много вы видели "рекомендуемых версий платформ" без глюков?
вы может и не выбираете, а мы не рекомендуем без обоснований рентабельности (за исключением конфигураций бухии) менять версию платформы только из соображений стильно-модно-молодежно...
меряете скорость на макбуке директора и меряете скорость на сервере 1С, там будет все и 1С и красивые картинки и макбук в 2 раза быстрее.
скорость линейки голдов например будет быстрее "макбука",

но если вы покупаете сервера с процессором https://ark.intel.com/ru/products/64588/Intel-Xeon-Processor-E5-2609-10M-Cache-2-40-GHz-6-40-GT-s-Intel-QPI- и не важно при этом как вы обосновываете целесообразность и сравниваете его с компом на процессоре https://ark.intel.com/ru/products/123589/Intel-Core-i7-7800X-X-series-Processor-8-25M-Cache-up-to-4-00-GHz- то домашний комп быстрее не потому что мой тест виноват, а потому что вы в этом случае рукожоп
76. capitan 2473 31.10.18 13:23 Сейчас в теме
(71)
С вашим посылом можно продавать унылое железо

Вы предлагаете продавцам железа предустанавливать сервер 1С чтобы прогнать тест на уныние ?
У SQL и сервера есть тестовый период, а как насчет сервера 1С ?
Небольшая неувязочка - на унылом железе TPC-C тест не пройдет, а TPC-А вполне
(71)
мы не рекомендуем без обоснований рентабельности

может вы и не рекомендуете, но месяц назад 1С все типовые перевела на 8.3.12.х
Можно конечно отчетность сдавать вручную и гордиться сверхбыстрой платформой на сервере. Да
(71)
вы покупаете сервера с процессором

за меня то вы не переживайте так, а вот есть журнал "Системный администратор" - претендующий на статус академического - они вот были в печали от таких тестов. Но вывод сделали конечно забавный - разгонять сервер.
В принципе свою табличку результатов отфильтруйте по платформе десктоп/сервер все и увидите
80. Gilev.Vyacheslav 1911 31.10.18 14:20 Сейчас в теме
(76) Скажите, вы из принципа игнорируете здравый смысл или у вас к нему личная неприязнь?
Вы вообще соображаете что пишите
Небольшая неувязочка - на унылом железе TPC-C тест не пройдет, а TPC-А вполне
. ?!

Вы предлагаете продавцам железа предустанавливать сервер 1С чтобы прогнать тест на уныние ?
Предлагаю выбор оставить покупателям.

У SQL и сервера есть тестовый период, а как насчет сервера 1С ?
У сервера 1С нет тестового периода. Да и зачем он?

но месяц назад 1С все типовые перевела на 8.3.12.х

фирма 1С ведет целенаправленную политику в своих интересах, которые не совпадают с интересами клиентов
крупные компании где цена каждой ошибки велика, впринципе не скачут по релизам в оперативной базе, а лишь выгружают цифры в изолированную среду с 8.3.12
а в прочем, кому я объясняю
Можно конечно отчетность сдавать вручную и гордиться сверхбыстрой платформой на сервере.
вопрос не в скорости, а в стабильности и предсказуемости, сдавать отчетность - одно, вести оперативный учет - другое

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

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

В принципе свою табличку результатов отфильтруйте по платформе десктоп/сервер все и увидите

так уже, и выше написал, что некорректно сравнивать десктоп/сервер на таком поверхностном уровне,
придется разжевать
https://ark.intel.com/ru/products/64588/Intel-Xeon-Processor-E5-2609-10M-Cache-2-40-GHz-6-40-GT-s-Intel-QPI- вот этот серверный процессор обладает низкой частотой и малым количеством ядер, но еще он тупо устаревший, и шина данных его существенно хуже современных десктопов.
даже если у вашего сотрудника не будет процессора https://ark.intel.com/ru/products/123589/Intel-Core-i7-7800X-X-series-Processor-8-25M-Cache-up-to-4-00-GHz- а будет другой современный камень, то только за счет более быстрой шины данных данные будут выполняться быстрее
и дилетанты типа вас делают вывод что это быстрее десктоп
проц i7-7800X быстрее по частоте существенно, а это означит что он выполняет гораздо больше операций в единицу времени в каждом потоке
но стоит взять серверный проц https://ark.intel.com/ru/products/126709/Intel-Xeon-W-2135-Processor-8-25M-Cache-3-70-GHz- и сервер уже не будет таким унылым
возьмите сервер с https://ark.intel.com/ru/products/124943/Intel-Xeon-Gold-6144-Processor-24-75M-Cache-3-50-GHz- (шестиканальный, это важно) и уже сервер будет быстрее

прежде чем учить 1С-ков выходить за рамки среды, вы бы сначала в работе 1С-а глубже разобрались
82. capitan 2473 31.10.18 14:32 Сейчас в теме
(80) Вам корона не жмет ?
Давайте вы не будете мне говорить, учить ли 1С-ков выходить за рамки среды, а они сами разберутся.
Fox-trot; +1 Ответить
85. Gilev.Vyacheslav 1911 01.11.18 05:55 Сейчас в теме
(82) смотрю вы придерживайтесь стратегии что совсем не обязательно понимать то что обсуждаешь, достаточно переключится на обсуждение оппонента, т.е. argumentum ad hominem
70. capitan 2473 30.10.18 21:53 Сейчас в теме
И просто чтобы два раза не бегать.
EPYC я побаиваюсь не из-за того что он медленнее. Тут как раз наверняка все по честному.
Просто у AMD для десктопов то нагрев, то совместимость приложений, то наоборот, то все вместе.
Спросите у дизайнеров как раньше фотошоп шел на AMD, так они вам весь экран заплюют
83. TerveRus 31.10.18 15:26 Сейчас в теме
(70) при чем тут "как раньше"? Почему медленнее? Потому что стереотипы и ворчание деда, который еще в СССР процессоры покупал и они тоже были медленными? Все эти "побаиваюсь" - чистые суеверия, AMD тут ни при чем.
starik-2005; +1 Ответить
84. capitan 2473 31.10.18 16:18 Сейчас в теме
(83)Приветствую еще одного эксперта в теме.
Я так понимаю как раз закончились занятия в школе.
К примеру вот это
https://ru-photoshop.livejournal.com/2001083.html
86. h00k 50 01.11.18 09:27 Сейчас в теме
(84)
К примеру вот это

Очень плохой пример. Человек не понимает что пишет, но выкладывает на всеобщее обозрение. Впрочем, как и многие другие.
Но, справедливости ради, стоит отметить, что единственным достойным конкурентом для процессоров Интел был АМД 5х86. Остальное все так себе, с минимальной разницей
Gilev.Vyacheslav; +1 Ответить
74. 7o2uYXg 44 31.10.18 12:55 Сейчас в теме
Имею вопрос к автору статьи.
Вот допустим у меня два разных сервера 1С+MS SQL. Допустим предложенный тест HammerDB даёт на этих MS SQL схожие результаты (разница пусть в несколько процентов). А 1С на этих серверах работает ощутимо по-разному, на одном сильно быстрее, на другом медленнее медленнее (например, тестовый документ на одном сервере проводится 10 секунд, на другом 15). Какой вывод в таких условиях предлагается делать?
75. capitan 2473 31.10.18 13:11 Сейчас в теме
(74)То что у вас 1С на этих серверах работает ощутимо по-разному, на одном сильно быстрее, на другом медленнее медленнее
Какой же еще при такой постановке ?)

Если у вас в одной базе главбух закрывает период, и финдиректор строит отчет за год то понятно в ней маленько будет остальным похуже житься.
А вот если у вас одинаковая база с одинаковым количеством пользователей,еще лучше с 1, дает такой результат - тогда как раз вы попадаете в те 5% где можно платформой 1С тормознуть сервер.
Я такого не видел честно скажу, с удовольствием посмотрю.
77. acanta 31.10.18 13:27 Сейчас в теме
Безо всяких тестов, на сервере конфигуратор медленнее открывает конфигурацию, сохраняет изменения чем настольный.
Объединение/сравнение конфигураций вылетает с нехваткой памяти на сервере, на настольном нормально. На это какой нужно провести тест, чтобы заранее знать?
78. capitan 2473 31.10.18 13:45 Сейчас в теме
Вспоминается...
Приходит мужик к доктору, жалуется: "Доктор не могу, все болит. Суда
пальцем ткну - больно, сюда пальцем ткну - больно, сюда пальцем ткну -
больно".
Доктор: "Э батенька, да у вас палец сломан".
(77)
На это какой нужно провести тест, чтобы заранее знать?

Ну явно что не базы данных.
Но тесты все равно нужны - тот же 7zip прогоните
Тогда хотя бы будет предметный разговор
Я бы для начала кеши почистил и temp
125. genayo 03.11.18 22:31 Сейчас в теме
И дальше то что? в результате этих тестов отказываемся от внедрения ERP на 1С и пишем с нуля на джаве?
Gilev.Vyacheslav; +1 Ответить
Оставьте свое сообщение