Подбор оборудования для информационных систем на платформе 1С

Публикация № 1119673 09.09.19

Администрирование БД - HighLoad оптимизация

При подборе оборудования по рекомендациям с сайта ИТС возникает противоречие: проводить ли нагрузочные тесты, чтобы определить возможную нагрузку, или достаточно просто взять данные из таблиц статистики? О том, какую тактику применить в том или ином случае, на конференции INFOSTART EVENT 2018 Education рассказал начальник отдела разработки компании IBS Филиппов Евгений.

Я – Филиппов Евгений, в настоящее время работаю в компании IBS начальником отдела разработки. В мире 1С меня знают, как автора книги «Настольная книга 1С:Эксперта по технологическим вопросам». Сегодня поговорим о такой скучной и занудной вещи, как подбор оборудования для информационных систем на платформе 1С:Предприятие. 

Кто-нибудь знаком с теорией мотивации Герцберга? Согласно этой теории существует два вида факторов, которые влияют на мотивацию и удовлетворенность от работы для человека. 

  • Часть из них называются гигиеническими факторами – если их не хватает, человек работает хуже. 

  • Другие факторы называются мотивирующими – это, например, признание. Чем их больше, чем человек работает лучше.

Это работает не для всех и не всегда. Допустим, если человек – художник (живет по собственным правилам) или космонавт (живет в уникальных условиях) – для них теория Герцберга не актуальна, у них собственная система факторов. Но для большинства людей, живущих в Европе по европейским правилам, она применима.

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

Если провести аналогию между требованиями к оборудованию у разных организаций и уровнем зарплаты разных людей, которые когда-то учились в одной школе – рассчитывали ли вы, например, что раз вы когда-то учились с вашими одноклассниками в одной школе, у вас будет одинаковая зарплата? Нет, конечно. Однако почему-то применительно к 1С все стараются считать, что, раз мы работаем на 1С, нам всем нужно одно и то же оборудование. Согласитесь, это может быть совсем не так.

 

 

История вопроса. 2009 год

 

 

Сначала расскажу про историю вопроса. 

В 2009 году мы провели первое успешное нагрузочное тестирование УПП на 1000 пользователей. В то время мы ничего не знали о том, какое оборудование нужно, и планировали, что на терминальном сервере нам понадобится примерно 0.8 ядра на 100 пользователей, а на сервере 1С и на сервере СУБД нам нужно будет почти 2 ядра. И по памяти планировали примерно такой же расход – мы думали, что для клиентского доступа к терминальному серверу требуется совсем немного памяти, для сервера 1С побольше, а для сервера СУБД еще больше. 

Но когда мы начали поднимать конкретный тестовый стенд, то увидели, что наши знания о реальной жизни не сработали. На терминальном сервере нам потребовалось в 10 раз больше памяти, чем мы рассчитывали. А требования к серверу 1С, наоборот, оказались настолько незначительными, что мы организовали его «на сдачу», по остаточному принципу.

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

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

 

 

История вопроса. 2012 год

 

 

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

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

 

 

История вопроса. 2015 год

 

 

А в 2015 году все поменялось. К этому времени уже массово распространилась УТ11 – конфигурация на управляемых формах. 

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

Но наши предыдущие таблицы перестали работать, и нам пришлось давать людям уже две таблицы. Одну – для обычных форм, другую для управляемых. И обе эти рекомендации давались по данным нагрузочных тестов, которые мы сами проводили. А в те нагрузочные тесты, которые мы сами проводили, мы верим, как в святыню – это данные, которые мы сами получили. 

Кстати, в этой презентации мною и моими коллегами сделана попытка свести все цифры во всех таблицах к единому знаменателю. Мы здесь во всех таблицах привели относительную ресурсоемкость оборудования с помощью двух показателей (в пересчете на сотню пользователей информационной системы) – количество ядер и количество памяти. Поскольку системы все разные (от двух до 4000 пользователей), применение таких единых показателей позволяет сравнивать эти системы между собой.

 

 

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

 

 

В 2015 году, когда было написано второе издание моей книги, на ИТС выложили много материалов по технологическим вопросам. Раньше все эти материалы находились на https://kb.1c.ru, а потом некоторые из них переехали на ИТС, где находится вся наша текущая проблематика. И тут обнаружилось интересное – одна и та же статья «Расчет параметров серверного оборудования», которую написал Константин Рупасов, после появления на ИТС пополнилась в самом конце маленьким параграфом «Выбор оборудования» примерно на полстраницы.

Причем, первая часть этой статьи очень подробно рассказывает, как рассчитывать потребность в оборудовании по данным нагрузочного теста или по данным эксплуатации существующей тестовой системы. А в самом конце в разделе «Выбор оборудования» приведены таблицы с рекомендуемыми значениями параметров оборудования – т.е., забудьте теперь все, что только что прочитали, и считайте по таблицам (эти таблицы здесь в презентации тоже будут в пересчете на 100 пользователей). 

Почему так произошло? На мой взгляд, потому, что к этому моменту была накоплена адекватная статистика. Она уже стала настолько адекватной, что ее можно было опубликовать со словами, что для большинства баз «1С:Бухгалтерия предприятия» нужно вот такое оборудование.

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

 

 

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

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

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

 

 

Почему практика иногда соответствует теории

 

 

Причем, практика, как ни странно, иногда совпадает с теорией. Она совпадает, когда мы сравниваем то, что можно сравнивать. Например, если у нас проводится нагрузочный тест, и мы сравниваем его с результатами предыдущего нагрузочного теста, то у нас, в принципе, все должно совпасть. Или, мы работаем в базе «1С:Бухгалтерия», не касаясь закрытия месяца (пользователь зашел, что-то сделал, вышел), сравниваем существующую нагрузку с планируемой – все ровненько, все совпадает.

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

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

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

 

 

Компромисс между рекомендациями и расчетами

 

 

И вот – в один момент мы столкнулись с заказчиком напрямую, и он спросил: «Сколько мне нужно оборудования, чтобы ERP у меня работала нормально?» 

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

  • И в это время наш руководитель проекта прочитал рекомендации с ИТС (на слайде это – вторая строчка снизу) и поразился, насколько радикально эти рекомендации отличались от того, что даем мы.

После этого мы в течение трех месяцев обсуждали, кто прав, кто не прав, кто должен поступиться принципами, а кто не должен – и в результате заказчик выбрал свой собственный вариант (пятый), который показан в этой таблице в самой нижней строке. Эти результаты более-менее коррелируют с тем, что мы посчитали на нагрузочном тесте, но видно, что он попытался серьезно перестраховаться. Где имел возможность – там заложил больше. Почему? Потому что ему нужно жить не в условиях нагрузочного теста, а в условиях реальной жизни, которую нагрузочный тест не показывает.

 

 

Случаи, которые теория не описывает

 

 

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

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

Это хорошо, если у вас действительно настроен мониторинг, и вы отследили эту ситуацию и вовремя отыграли назад. А может быть и не так. Никакая теория вам не предскажет, что вследствие какого-то изменения, без изменения количества пользователей, оборудования на сервере разработки должно быть в 10 раз больше, чем сейчас. Но и того, что через 3 месяца оно в таком количестве вам может уже не понадобится, потому что ситуация стабилизируется и платформа начнет работать нормально с тем механизмом, который вы сами использовали не по назначению (в итоге платформа не виновата) - никакая теория вам тоже не скажет. 

Но оборудование, тем не менее, выбирать нужно.

 

 

Рекомендации с ИТС, пересчитанные на единый показатель

 

 

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

Вот рекомендации с ИТС, пересчитанные на наш единый показатель по данной презентации (относительное количество ядер и памяти на сотню пользователей). 

Мы видим, что характеристики оборудования в этой таблице получились относительно неровные для разного количества пользователей. Почему так? Не знаю. Видимо, так собиралась статистика.

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

И для сервера СУБД (крайняя правая колонка), там вообще для крупного внедрения серьезный резерв – 64 гигабайта на каждую сотню пользователей, т.е. на 1000 пользователей нужно уже 640 гигабайт. 

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

 

 

Статистика по выбору оборудования по данным проектов ЦКТП

 

 

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

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

То есть, если это «1С:Бухгалтерия предприятия» – это одни требования, если это ЗУП – другие требования. 

Статистику мы собирали по сайту v8.1c.ru – в разделе, где опубликованы проекты ЦКТП, также публикуется аппаратное обеспечение, используемое на проекте. Посчитали все варианты по приведенным конфигурациям, плюс добавили сюда свой опыт нагрузочных тестов и свой опыт с реальных внедрений, который у нас был (это – статистика по тому оборудованию, которое люди реально использовали, в том числе и наши клиенты).

Например, при переходе с «Бухгалтерии 2.0» на «Бухгалтерию 3.0» вполне предсказуемо уменьшились требования к терминальному серверу, но увеличились требования к серверу приложений.

Здесь есть незаполненные ячейки – объясню, о чем речь. 

  • Иногда в характеристиках проекта на сайте не указано, что есть сервер терминалов. Поэтому мы эту строчку считали отдельно. 

  • Или иногда на сайте вообще нет информации про отдельный сервер 1С и про сервер СУБД, поэтому мы не знали, как один отделить от другого, и вывели эти показатели в отдельной колонке (два крайних правых столбца).

Аналогичным образом, как в «1С:Бухгалтерии предприятия», так и с «1С:Зарплатой и управлением персоналом» – при переходе с 2.5 на 3.0 требования к серверу приложений подросли, а требования к терминальному серверу уменьшились. Опять же, по статистике.

Возможно, у каждого из вас есть такая своя статистика, и вы можете сказать относительно того, что здесь написано, что у вас не так. Но это – статистика, она – такая.

 

 

И еще по нескольким наиболее популярным конфигурациям. 

При переходе с УПП на ERP – предсказуемо уменьшились требования к терминальному серверу, но подросли требования к серверу приложений и серверу СУБД.

При переходе с УТ 10 на УТ 11 здесь как раз статистика дала сбой – у нас уменьшились требования к серверу приложений. Видимо, речь идет о влиянии каких-то факторов, которые мы при подсчете не учли.

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

 

 

Как менялись требования к оборудованию по годам?

С 2012 по 2015 год требования к терминальному серверу увеличивались, а требования к серверу приложений снижались. По гипотезе, это связано с тем, что основная функциональность развивалась на толстых клиентах, соответственно, на сервер 1С приходилось меньше нагрузки.

Потом, начиная с 2015 года, ситуация поменялась – начался массовый переход с обычных форм на управляемые, и баланс опять начал смещаться между терминальным сервером и сервером приложений в пользу последнего.

 

 

Статистика по платформам показывает тот же самый тренд, тот же самый баланс между сервером терминалов и сервером приложений. И растет требование к памяти на сервере СУБД.

Мы входим в область больших проектов, где делаются избыточные резервы оборудования, в том числе, благодаря рекомендации с ИТС. А может быть, эта рекомендация с ИТС произошла благодаря реальным внедрениям? Что причина, что следствие – можно поспорить.

 

 

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

 

 

Как рассчитывать требования к сети и дисковой подсистеме?

 

 

До сих пор я говорил о ядрах и о памяти. Теперь коротко – о сети и дисках. 

Про сеть ничего толком сказать нельзя, потому что этот фактор «еще более гигиенический», чем количество ядер и памяти. Если сетки не хватает, у вас все «падает», если сетки хватает – все прекрасно. Количество вариаций гораздо меньше, поэтому тут интересной статистики не получится. 

А что касается требований к дисковой подсистеме, то у меня есть специальный слайд про взаимосвязь показателей MBs/sec и IOPS, поскольку заказчики часто требуют от нас производительность в IOPS, а на сайте 1С производительность обычно замерена в MBs/sec. 

Чтобы от IOPS перейти к MBs/sec, нужно разделить IOPS на размер блока. Если мы говорим о внедрениях, которые сделаны по методике ЦКТП, то там используется утилита SQLIO, для которой стандартный размер блока 64 Кб, если его руками не меняли (а скорее всего, его не меняли). Если вдруг это старая система, там коэффициент может быть 32 Кб, но это уже архаичные системы. Если кто-то поставил другой коэффициент пересчета и нигде это не указал, то нужно надеяться, что такого не произошло.

 

 

Тактика управления

 

 

Что со всем этим делать? 

  • Есть люди, которые ходят по земле и работают в ненагруженной базе (самая нижняя строчка) – от одного до 5 пользователей в базе «1С:Бухгалтерия». Они там и со своим ноутбуком прекрасно справляются.

  • Но если вы – художник, у вас специализированная или высоконагруженная база (вторая снизу строчка), то вам общепринятые требования вообще не подходят, вам нужно проводить нагрузочный тест, рассчитывать свою жизнь именно так, как вы живете. Когда мало пользователей, но большая нагрузка – усредненные требования вообще не подходят, нужно считать свои. И оборудование нужно считать свое.

  • Если у вас 10-50 пользователей, и вы работаете в базе «1С:Бухгалтерия», у вас стандартная схема движения документов – тогда да, можете посмотреть по таблицам, посмотреть, как у соседа, сэкономить деньги на сайзинге. Точно так же, как мы смотрим зарплату по HeadHunter. 

  • Но чем мы больше, тем нам больше нужен запас. Чем у меня семья больше, тем мне больше нужно денег иметь в запасе на то, что детей придется учить, женить, выдавать замуж и т.д.

  • И если у вас более 1000 пользователей, вы – космонавты, вам про вашу жизнь вообще никто ничего не может рассказать, вам нужно самим разбираться, что за оборудование вам нужно. Вам нужно знать досконально каждую железяку, каждый вид организации RAID-массива и все-все-все про вашу работу. И решения всегда нужно принимать самому. Когда советская космическая промышленность готовила запуск лунохода, его долго не могли сделать, потому что не знали, какая луна – твердая, жидкая, газообразная? Пришел Королев, сказал: «Луна твердая». И луноход улетел, все счастливы. Делайте свой луноход.

 

****************

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2018 EDUCATION. Больше статей можно прочитать здесь.

В 2020 году приглашаем всех принять участие в 7 региональных митапах, а также юбилейной INFOSTART EVENT 2020 в Москве.

Выбрать мероприятие.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. PowerBoy 3228 09.09.19 16:21 Сейчас в теме
Почему только два параметра - ядра и память, почему не учитываете частоту и поколение процессоров?
user1274438; zqzq; HAMMER_59; +3 Ответить
5. user1274438 11.09.19 14:44 Сейчас в теме
Традиционно не смог пройти пройти мимо. Увы.
https://twitter.com/ValentinIvanich/status/1165893473117118465

P.S.
Витеньке привет при случае.

P.P.S.
(1) Автор больше не осилит.
2. capitan 2285 09.09.19 18:14 Сейчас в теме
Вспоминается ...
— Сколько человек здесь работает?
— С бригадиром или без?
— Какая разница.
— А без бригадира вообще никто не работает.
У наших людей система мотивации совсем другая.
А если серьезно, ну очень мало памяти. Вчитаюсь внимательнее, но пока не могу понять как так получается.
user1274438; 3vs; +2 Ответить
4. 3vs 11.09.19 07:18 Сейчас в теме
(2)
А если серьезно, ну очень мало памяти.

И это правильно, как говорится, сервер памятью не испортишь! :-)
6. user1274438 11.09.19 16:25 Сейчас в теме
(2) Тут проблема в том, что автор (по слухам, конечно же) - любитель нагрузки фоновыми заданиями. Не знаю, как сейчас, но раньше (мне коллеги подсказывали) он часто тесты именно так и выполнял. Экономия ресурсов в таком случае будет существенная. А что будет неоднозначный результат? Да ну кого в 1С-сообществе когда это волновало.
7. kerti 24.01.20 09:57 Сейчас в теме
(6) даже если вы правы про фоновые задания. Вы считаете, что выполнением фоновых заданий нельзя смоделировать работу сервера приложений 1с и субд совсем?
При ограниченных условиях использования лицензий 1с, данные тесты могут помочь получить хотя бы примерную картину по тому, что может твориться на сервере приложений и субд. При данных тестах исключена нагрузка клиентских соединений, но не работа сервера.
8. user1274438 24.01.20 10:19 Сейчас в теме
(7) Ага. Т.е. тот код, который в формах объектов, он чисто клиентский, работает только с переменными со значениями примитивных типов, и там нет вызовов сервера, из которых могли быть обращения к субд. ну и формы списков, при открытии тоже только текст и цифры выводят, какие там могут быть запросы. вот фоновые задания - это да.
3. user593895_gurov-boris-spb 10.09.19 15:22 Сейчас в теме
Евгений, у вас опечатка в последнем изображении. Во второй строчке снизу по логике должно быть "от 5".
Оставьте свое сообщение

См. также

Диспетчер Хранилища Запросов в SQL Server 2016+ (он же Query Store) Промо

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Если вы используете SQL Server 2016 или более позднюю версию, то у вас есть возможность использовать встроенную систему мониторинга, которая позволяет отслеживать самые базовые метрики выполняемых запросов и статистику ожиданий (потребления ресурсов). Эта информация позволяет быстро получить самые ресурсоемкие запросы с их планами и агрегированной статистикой выполнения.

26.04.2019    16165    Aleksey.Bochkov    8    

Избавиться от скана таблицы в плане запроса

HighLoad оптимизация Запросы Платформа 1С v8.3 Платформа 1С v8.3 Запросы Запросы Бесплатно (free) Бесплатно (free)

Для запросов, содержащих "LIKE %СтрокаПоиска%". Справедливо для MS SQL и Postgres.

20.12.2022    2570    vasilev2015    31    

Нагрузочное тестирование в 1С:ERP

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Бесплатно (free) Бесплатно (free)

Для того чтобы еще до внедрения информационной системы убедиться, что целевая система справится с ожидаемой нагрузкой, требуется провести нагрузочное тестирование. О том какие инструменты и методики помогут организовать подобный проект при внедрении 1С:ERP, и о том, какие неожиданные факторы могут влиять на производительность системы я и хотел бы рассказать в данной статье.

02.11.2022    3102    Tavalik    23    

Опыт миграции из собственного датацентра в облако AWS Промо

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Хотя данная публикация и не имеет прямого отношения к 1С, она может быть интересна тем, кто занимается крупными базами данных на MS SQL Server. Описывается опыт миграции баз данных в облако AWS в компании glassdoor.com, где я занимался этим проектом. Это первый драфт текста, получившийся довольно скомканным - в процессе буду дополнять.

29.07.2018    12885    Aleksey.Bochkov    9    

Битва параллелизмов: MS SQL vs PostgreSQL

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Чем отличаются подходы в построении плана запросов для PostgreSQL и MS SQL? Какие запросы хорошо параллелятся, а какие нет? Кто в итоге круче в параллелизме – MS SQL или PostgreSQL? Вадим Фоминых протестировал обе СУБД на эффективность параллельной работы и рассказал о своих выводах в докладе на конференции Infostart Event 2021 Post-Apocalypse.

31.10.2022    6070    Shmell    4    

MS SQL Server: ваши статистики не работают! Так ли все плохо на самом деле?

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Состояние и качество статистик критически важны для эффективной работы системы. Но у заметной части типовых конфигураций статистики просто не могут работать эффективно. О том, почему так происходит и что с этим делать, на конференции Infostart Event 2021 Post-Apocalypse рассказал Александр Денисов.

27.09.2022    2346    Филин    11    

Опыт оптимизации и контроля производительности в БД с 3000 пользователей Промо

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Данная статья написана по материалам доклада, прочитанного на Конференции Инфостарта IE 2014 29-31 октября 2014 года. Меня зовут Сергей, являюсь руководителем отдела оптимизации и производительности систем в компании "Деловые линии". Цель этого доклада – поделиться информацией о нашем опыте работы с большой базой на платформе 1С, с чем пришлось столкнуться, как удалось обеспечить работоспособность. Уверен, что вам будет интересно, так как подобной информацией мало кто делится, да и про само существование таких систем их владельцы стараются не рассказывать, максимум про это «краем глаза» упоминают участвовавшие в проекте вендоры. **update от 04.03.2016 по вопросам из комментариев

05.08.2015    70245    Sergey.Noskov    119    

Быстрый фронт в базе размером 6.8 терабайт – наши стандарты при разработке и рефакторинге запросов

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

От быстродействия запросов, которые обращаются к крупным таблицам, напрямую зависит скорость работы всей базы в целом. Артем Кузнецов, тимлид команды 1С в компании ООО «Финтех решения» на конференции Infostart Event 2021 Moscow Premiere рассказал, как оптимизировать производительность при поддержке больших систем. Показал, на что следует обращать внимание при код-ревью запросов, как оптимизировать RLS, виртуальные таблицы, индексы и условия, и как доработка архитектуры решения может ускорить работу базы.

29.08.2022    5214    Chernazem    44    

Ускорим проведение в 1С:Управление холдингом

HighLoad оптимизация Запросы Платформа 1С v8.3 Платформа 1С v8.3 1С:Управление холдингом 1С:Управление холдингом Бесплатно (free) Бесплатно (free)

В 1С:Управление холдингом есть "нехороший" запрос, который съедает значительную часть времени проведения документов. Если его подправить, то проведение заметно ускорится.

10.08.2022    4782    sapervodichka    60    

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

HighLoad оптимизация Механизмы платформы 1С Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

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

05.08.2022    1540    1CUnlimited    0    

Долго открывается конфигуратор Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

В ОС Windows Server 2012 бывает полезно выключать службу Dynamic Fair Share Scheduling (DFSS позволяет балансировать и распределять ресурсы между пользователями), чтобы повысить производительность 1С:Предприятие 8 в ряде случаев.

22.04.2015    47282    Gilev.Vyacheslav    1    

Методика похудения для 1С – 100%

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

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

28.07.2022    5268    1CUnlimited    37    

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Бесплатно (free) Бесплатно (free)

В данной статье хотим рассказать об одном нашем непростом расследовании, в котором удалось собрать сразу несколько проблем на разных уровнях инфраструктуры заказчика и изначальной методологии ведения учета. Само расследование в какой-то момент стало напоминать детективную историю, с роялями в кустах, ошибками платформы, странным поведением пользователей и магическим поведением хорошо знакомых механизмов. Но мы реалисты, поэтому все проблемы были выявлены и устранены ;)

11.07.2022    5027    it-expertise    27    

Видеодемонстрация применения Теста-центра для нагрузочного тестирования конфигураций Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

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

16.09.2012    37309    Aleksey.Bochkov    29    

10 «заповедей» эксплуатации крупной информационной системы 1С

Управление ИТ-подразделением Внедрение ИТ-системы HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Крупные системы 1С давно уже перешагнули и десятки терабайт, и тысячи пользователей, но во многих случаях подход к эксплуатации таких систем остаётся не на должном уровне. Антон Дорошкевич на конференции Infostart Event 2021 Post-Apocalypse поделился более чем 10-ти летним опытом эксплуатации подобных систем, сведя его к 10 «заповедям», соблюдение которых сделает 1С надёжнее, а труд разработчика – благодарнее и благороднее.

11.07.2022    7216    a.doroshkevich    33    

Производительный режим работы RLS

HighLoad оптимизация Роли и права Платформа 1С v8.3 Платформа 1С v8.3 8.3.14 8.3.14 8.3.6 8.3.6 8.3.8 8.3.8 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Комплексная автоматизация 2.х Бесплатно (free) Бесплатно (free)

Функционал подсистемы УправлениеДоступом позволяет работать с RLS в двух режимах: стандартном и производительном. Каждый из режимов имеет свои преимущества и недостатки относительно другого. Основные из них будут рассмотрены в данном материале.

14.06.2022    6056    Neti    6    

Любовь. Быстродействие. 1С

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

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

26.05.2022    3760    vasilev2015    20    

Повышенная нагрузка на диски сервера баз данных SQL Server Промо

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

С проблемой повышенной нагрузки на диски (дисковые хранилища и массивы, далее просто диски), сталкиваются почти все администраторы и специалисты технической поддержки при эксплуатации средних и крупных информационных систем на базе SQL Server (от 50 активных пользовательских сессий). Но всегда ли правильно идет интерпретация проблемы, попробуем разобраться на нескольких практических примерах.

15.03.2015    48483    gallam99    17    

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

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Платформа 1С v8.3 8.3.14 8.3.14 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Россия Россия Бесплатно (free) Бесплатно (free)

Пост будет больше интересен руководителям отделов ИТ сопровождения или проектным менеджерам, перед которыми будет стоять задача решения проблемы деградации производительности баз данных 1С. Пост для тех, кому эта тема нова, нет особого опыта, и с ходу непонятно, с чего начать.

24.05.2022    3816    avolsed    15    

Заметки эксперта. Расследование длительного выполнения отчета “Движение ТМЦ и затрат в производстве” (1С:ERP 2)

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Бесплатно (free) Бесплатно (free)

Кратко: в ходе проведения нагрузочного тестирования “1С:ERP 2” под ОС Linux на СУБД Postgres выявлено существенное замедление формирования отчета “Движение ТМЦ и затрат в производстве” - до 60 минут. После проведенного расследования и точечной корректировки СКД в отчете, без изменения бизнес-логики результатов его работы, работа отчета была ускорена в 80 раз - средний показатель формирования составил 30 секунд.

19.05.2022    2122    it-expertise    19    

Как можно "положить" SQL сервер с помощью обычной консоли запросов 1С Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

Описано как из 1С, с помощью безобидной на первый взгляд обработки, можно сделать неработоспособным SQL сервер. Предложены меры, позволяющие избежать этого.

22.01.2014    71790    yuraos    112    

Нагрузочное тестирование 5000+ пользователей онлайн — играем в игру

HighLoad оптимизация Тестирование QA Бесплатно (free) Бесплатно (free)

Тестируем ERP под Postgre SQL. Альтернативный нагрузочный тест.

16.05.2022    6609    ivanov660    52    

Тестирование - игровое моделирование

HighLoad оптимизация Тестирование QA Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Мы рассмотрим подход к тестированию с применением элементов искусственного интеллекта

25.04.2022    1416    ivanov660    0    

Анализ кода, потребляющего ресурсы СУБД MS SQL, контекстами 1С

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

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

21.04.2022    2214    pashamak    1    

Ускорение реструктуризации таблиц Промо

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

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

12.09.2013    54620    OLEG4120    32    

Несколько слов про платформенный механизм оптимизации RLS

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Смотрим, как работает платформенный механизм оптимизации RLS, сравним поведение на разных СУБД MS SQL, Postgres 11,13,14.

07.04.2022    3523    ivanov660    23    

Почему после обновления Бухгалтерии в марте 2022 года отчеты стали такими медленными

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бухгалтерский учет Бухгалтерский учет 1С:Бухгалтерия 3.0 1С:Бухгалтерия 3.0 Бухгалтерский учет Бухгалтерский учет Бесплатно (free) Бесплатно (free)

Статья раскрывает причину, почему время формирования отчетов после обновления Бухгалтерии в марте 2022 сильно увеличилось. И рассказывает, как можно исправить ситуацию.

05.04.2022    4873    DBOdin_Lab    33    

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Бесплатно (free) Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    5183    it-expertise    92    

Ускоряем списание партий УПП 1.2 / 1.3 / УТ 10.3 Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление производственным предприятием Бесплатно (free) Бесплатно (free)

Не секрет, что многие пользователи, использующие партионный учет (а таких очень много, даже среди огромных холдингов, несмотря на пропаганду РАУЗ) при больших нагрузках сталкиваются с резким замедлением списания партий.

21.06.2013    60704    Антон Ширяев    117    

Экспертный кейс. Расследование деградации производительности системы. Проведение документа “Поступление товаров и услуг” (1С:ERP 2)

Механизмы платформы 1С Запросы HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Бесплатно (free) Бесплатно (free)

В ходе проведения нагрузочного тестирования одним из наших клиентов была выявлена сильная деградация производительности системы в целом и, в частности, выполнения ключевой операции “Проведение документа поступление товаров и услуг” в течение выполнения теста. Согласно данным подсистемы БСП “Оценка производительности”, время выполнения ключевой операции “Проведение документа поступление товаров и услуг” возрастало в процессе тестирования с 15-20 секунд в начале тестирования до 150-200 секунд в его финале.

02.03.2022    3821    it-expertise    48    

Пример пошагового решения проблемы производительности на базе Postgres SQL с картинками

HighLoad оптимизация Технологический журнал Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Рассмотрим по шагам процесс обнаружения, анализа и решения проблемы производительности на примере базы ERP, сравним отличия в работе Postgres и MS SQL.

28.02.2022    11730    ivanov660    18    

Ускорение работы конфигуратора 1С с большими прикладными решениями

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Ускорение работы 1С конфигуратора с большими прикладными решениями путем размещения системных каталогов 1С на RAM диске.

13.01.2022    6959    stg2005    105    

Сравнение скорости работы 1C+MSSQL и файлового варианта Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Россия Россия Бесплатно (free) Бесплатно (free)

На форумах постоянно задается один и тот же вопрос: почему 1C+MSSQL медленнее обрабатывает запросы чем файловая? Затем обычно идет «флуд» на несколько десятков страниц. Есть два популярных «течения» в таких форумах — одни говорят что для клиент-серверного варианта это нормально, файловый вариант всегда должен работать быстрее, другие говорят что 1С плохо работает с субд. В результате «баталий и выяснения отношений» на форумах люди расходятся при своих мнения.

19.02.2013    63153    Gilev.Vyacheslav    46    

AMD RYZEN 5600X: погоня за попугаями

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Все по-взрослому...

08.12.2021    7444    starik-2005    313    

Ошибка производительности при проведении этапа 2.2 в ERP 2.4 и ERP 2.5

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:ERP Управление предприятием 2 Россия Россия Бесплатно (free) Бесплатно (free)

Хочется поделиться одним подводным камнем, с которым могут встретиться другие пользователи ERP. Искал решение в интернете, но ничего похожего не нашел. Поэтому решил создать эту тему.

06.12.2021    1631    Rokky78    6    

Инструкция по получению плана запроса через Extended Events

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

Доброго времени суток, коллеги. Хочу рассказать, как можно посмотреть план запроса через механизм Extended Events. Я хочу ответить на вопрос - как разработчику через SQL Management Studio посмотреть, что запрос, который он сделал, работает оптимально. На Инфостарте есть несколько статей, которые посвящены трассировкам в этом механизме. Мне, когда я не понимал, как это правильно делать, не хватало простой пошаговой инструкции. Я напишу инструкцию, выполняя которую можно будет увидеть план запроса, который выполняется из базы данных.

22.11.2021    2458    Andrei_Ivanov    3    

Параллельные вычисления в 1С 8 Промо

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv8 Бесплатно (free) Бесплатно (free)

Решение позволяет ускорять выполнение запросов в 1С 8 в отчетах путем их параллельного выполнения в разных потоках.

11.02.2013    39009    gallam99    19    

Подходы к организации информационной безопасности в корпоративных проектах

HighLoad оптимизация Государственные, бюджетные структуры Государственные, бюджетные структуры 1С:Франчайзи, автоматизация бизнеса 1С:Франчайзи, автоматизация бизнеса Россия Россия Бесплатно (free) Бесплатно (free)

Оформили в виде статьи наш доклад на недавно прошедшем семинаре партнеров 1С на тему требований к информационной безопасности на проектах, с которыми всё чаще встречаемся мы и наши партнеры. В статье рассмотрено, почему этими вопросами стоит озаботиться уже сейчас. Куда бежать и что делать, если вы попали на проект с требованиями по информационной безопасности…

29.10.2021    4726    it-expertise    11    

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB-интеграция HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    4284    sorter1    2    

Смотрим запросы 1С через Microsoft SQL Profiler по следам ошибок разработчиков, приводящих к проблемам производительности

HighLoad оптимизация Рефакторинг и качество кода Технологический журнал Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

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

07.09.2021    12570    ivanov660    26    

Ubuntu vs CentOS vs Win2k8 vs Debian: производительность PostgreSQL Промо

Статистика базы данных HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Хотя интернет уже переполнен статьями о "правильной" настройке связки PostgreSQL и 1C 8.2, для подводных камней всегда остается место. При сравнении производительности СУБД PostgreSQL на разных ОС, показатели различаются в разы. Самую большую обиду принесла любимая Ubuntu (человечность). После долгих дней и ночей проведенных за консолью этой ОС, она разочаровала окончательно. Тормоза PostgreSQL в Ubuntu Server. Что с ними делать? Сколько раз можно наступать на грабли?

03.11.2012    46111    madmpro    32    

Показатель Page Life Expectancy (PLE)

HighLoad оптимизация Администрирование СУБД Бесплатно (free) Бесплатно (free)

От переводчика: публикация составлена по материалам BrentOzar.com (Brent Ozar).

18.08.2021    4137    vasilev2015    7    

Кластер для отказоустойчивости

HighLoad оптимизация Администрирование СУБД Бесплатно (free) Бесплатно (free)

На Infostart Meetup «PostgreSQL VS Microsoft SQL» выступил руководитель проектов в по разработке ПО в компании «Газинформсервис» Денис Рожков. В рамках доклада Денис рассказал о том, какие механизмы кластеризации используются для PostgreSQL и в MS SQL и поделился с коллегами, какие решения можно использовать для построения отказоустойчивого кластера на PostgreSQL.

18.08.2021    12351    FB_3393521717335803    2    

Адекватный параллелизм в 1С

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Параллелизм ускоряет выполнение тяжелых регламентных операций на СУБД, но может негативно влиять на работу многопользовательских учетных систем. О том, как анализировать влияние параллелизма и настраивать его для MS SQL и PostgreSQL, рассказал ведущий разработчик компании ООО МКК «Ваш Инвестор» Вадим Фоминых.

13.08.2021    12636    Shmell    8    

Создаем счетчики производительности Windows для 1С

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

В статье описан подход, позволяющий создавать счетчики производительности Windows для 1С:Предприятие.

09.08.2021    4755    blackhole321    8    

Распространенные ошибки разработчиков, приводящие к проблемам производительности

HighLoad оптимизация Рефакторинг и качество кода Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Рассмотрим примеры ошибок, анализ, исправление и мероприятия по недопущению подобного в будущем. Всего будет 18 примеров.

02.08.2021    15049    ivanov660    77    

Fill factor

HighLoad оптимизация Бесплатно (free) Бесплатно (free)

От переводчика: Публикация составлена по материалам BrentOzar.com (Brent Ozar).

02.08.2021    3634    vasilev2015    6    

Parameter sniffing и генерация планов для разработчиков 1С

HighLoad оптимизация Платформа 1С v8.3 Платформа 1С v8.3 Бесплатно (free) Бесплатно (free)

Особенности генерации планов запросов. Статья написана по мотивам вебинара Виктора Богачева.

01.06.2021    14645    vasilev2015    17