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

Публикация № 172433

Администрирование - Производительность и оптимизация (HighLoad)

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

Технология параллельных вычислений для 1С 8.2

 

Введение

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

Что такое технология параллельных вычислений?

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

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

 Основные сложности применения технологии параллельных вычислений:

- Оценить возможность применения параллельных вычислений для запросов.

- Сложность адаптации и внедрения в прикладное решение.

      В своем решении мы попытались нивелировать сложности насколько это возможно для уменьшения трудозатрат при внедрении .

В чем секрет ускорения?

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

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

Для каких ситуаций применимы параллельные вычисления?

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

- Запросы для параллельного выполнения должны быть полностью независимы друг от друга.  Под этим понимается следующее: возвращаемые данные одного запросы не влияют на формирование текста другого.

- Нельзя/очень осторожно использовать параллельные вычисления в транзакции.

Несколько основных рисков:

  1. Запрос из параллельной сессии не видит измененные в транзакции данные (кроме запросов с грязным чтением).
  2. Запрос может накладывать блокировки на уровне MS SQL.
  3. Необходимость связывания с транзакцией основной сессии пользователя.

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

- Реализована только для OleDB (ADO, Native) – MS SQL систем.

- Запрос для распараллеливания возвращает только одну выборку (recordset). Для систем 1С 8 – запрос может состоять из последовательности запросов (например, создание виртуальных таблиц, заполнение и прочее), запрос программы на произвольном языке (Delphi, C++ … ) состоит из одной конструкции и одной выборки.

Таким образом, наиболее реальная область применения в 1С 8 –распараллеливание запросов 1С при формировании больших отчетов и обработок. В других системах на других языках  – на усмотрение программиста/архитектора.

 Как проверить на практике (технология внедрения в информационную систему)?

    Подробнее о технологии внедрения можно почитать: http://softpoint.ru/article_id4224.htm

 


 

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. p1l1gr1m 11.02.13 12:28 Сейчас в теме
Все же самое главное не описано - как именно работает ваша компонента? Неплохо было бы написать хотя бы общий обзор технологии.
2. gallam99 229 11.02.13 12:37 Сейчас в теме
(1) Там приложена схема, лучше нее боюсь ничего не расскажет.
Кратко:
Код 1С можно прочитать самостоятельно, там все понятно.
На первом шаге мы передаем все запросы 1С, которые необходимо выполнить параллельно, дальше в отдельном потоке с отдельным спид они выполняются.

На втором шаге ждем выборок от запросов 1С и их обрабатываем дальше по алгоритму.

Реализована на OLEDB (поэтому это обязательное требование).
Могу ответить на конкретный вопрос!?
3. kapustinag 12.02.13 01:46 Сейчас в теме
Интересно. Но вроде бы очень тяжело настраивать, нет? Каждый запрос по кирпичикам разложить, а запросов в отчетах/обработках 1С-ных немало. Кстати, а как влияет тот факт, что к запросам, в явном виде присутствующим в коде обработки, перед передачей на MS SQL добавляются запросы для фильтрации по правам доступа?

То есть в результате на сервер может прийти не совсем то, что ожидалось, и что с таким трудом на независимые запросы поделили.
4. kapustinag 12.02.13 01:49 Сейчас в теме
Или имеются в виду только запросы к внешним не-1Сным базам? Тогда согласен, без трудноучитываемого влияния ограничений в 1С-ных ролях вполне можно эти запросы построить как нужно для параллельного выполнения.
5. gallam99 229 12.02.13 09:28 Сейчас в теме
- По поводу запросов для фильтров, должно все работать.
Параллеляться штатные запросы 1С.

Отчасти согласен с вами, перед использованием необходимо немного адаптировать код, но предполагается, что сначала вы выделяете конструкции вида Запрос.Выполнить() (независимые запросы), потом используете процедуру ВыполнитьПараллельно, в нее в качестве параметра передаете массив запросов, а в качестве выходного получаете массив выборок.

И если более широко рассмотреть, то основная сложность параллельных вычислений - адаптировать последовательный код к ним и их правильно применить (не только к задачам 1С)
6. ValeriVP 12.02.13 11:02 Сейчас в теме
А зачем нужна компонента? Если надо руками разделить запрос 1С на параллельно исполняемые подзапросы, то почему бы не использовать просто фоновые задания?
for_sale; TSSV; +2 Ответить
7. gallam99 229 12.02.13 11:15 Сейчас в теме
Основное преимущество компоненты в том, что адаптация к параллельным вычислениям осуществляется в тексте отчета, оно более простое (пример распараллеливания запросов 1С дан), будет более производительным, чем фоновые задачи и потреблять меньше ресурсов.
И еще ... предполагается, что вы не разделяете запрос 1С, а ищете несколько запросов 1С, которые можно выполнить параллельно и с помощью технологии реализуете это. Найти их можно, например, через отладчик 1С - получаете информацию из отладчика, почему отчет медленно выполняется - например, 30 раз выполняется запрос 1С, но с различными параметрами - это уже предпосылка для их паралелльного выполнения.
8. ValeriVP 12.02.13 11:34 Сейчас в теме
(7)Прокоментируйте пожалуйста: "будет более производительным, чем фоновые задачи и потреблять меньше ресурсов."
Почему?
Также: "предполагается, что вы не разделяете запрос 1С, а ищете несколько запросов 1С, которые можно выполнить параллельно..." - можете привести хотябы один пример?

Из моей практики - запросы в цикле с разным набором параметров - это методическая ошибка. Гораздо более вероятная ситуация исполнения запроса в цикле - это случай, когда каждый следующий запрос использует результаты предыдущего (ну не можем мы написать сразу один запрос по каким-то причинам). А это распараллелить нельзя.
18. vasyak319 139 20.03.15 15:18 Сейчас в теме
(7)
30 раз выполняется запрос 1С, но с различными параметрами - это уже предпосылка для их паралелльного выполнения


Это предпосылка для отрубания рук, которые такое напейсали. Я с 1С с прошлого века работаю, но не могу вспомнить ни одной задачи, для решения которой действительно было бы нужно параллельно выполнить несколько запросов. Причём решения такие я видел много раз, но в 100% случаев это было следствием рукожопости программиста и всё ускорялось в десятки, а то и сотни раз простенькой оптимизацией наиболее вопиющих кусков кода.
for_sale; FractonKireyev; +2 Ответить
9. gallam99 229 12.02.13 12:00 Сейчас в теме
Комментирую - производительней = будет работать быстрее, так как распараллеливаются уже запросы SQL на этапе отправки к серверу MS SQL. В фоновых заданиях вы распределяете запросы в структурах 1С, а это неизбежная потеря времени и ресурсов.

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

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

Мы использовали у себя технологию следующим образом: в отчете клиента написаны запросы 1С к различным регистрам, немного переписали отчет для выполнения их последовательно (с обработкой выборки в другой части отчета) и адаптировали к параллельному выполнению. Затраты с нашей стороны: 1 чел/день, эффект - скорость выполнения отчета в 3 раза. При этом не было глубокого погружения в логику отчета - что в данной ситуации является преимуществом на мой взгляд.
10. ValeriVP 12.02.13 12:25 Сейчас в теме
В фоновых заданиях вы распределяете запросы в структурах 1С, а это неизбежная потеря времени и ресурсов.

Правильно ли я понимаю, что речь идет о потере времени на трансляцию запроса 1С в запрос SQL?
В этом случае - это бред. Это время пренебрежительно мало.

у клиента 100 различных отчетов не устраивающих по производительности

В этом случае надо менять железо, т.к. фактически это означает - все отчеты.

если количество строк в отчете 10000
- если это не считая текстов запросов, то это очень сложный отчет. Велика вероятность наличия запросов которые можно распараллеливать, если они конечно не в цикле. Годный пример.

Таким образом, есть пример когда имеет смысл распараллелить запросы, однако нет обоснования, зачем надо использовать для этого какую-то компоненту.
11. gallam99 229 12.02.13 13:26 Сейчас в теме
(10)
"Правильно ли я понимаю, что речь идет о потере времени на трансляцию запроса 1С в запрос SQL?
В этом случае - это бред. Это время пренебрежительно мало. " - мы проводили сравнения, а Вы? Оно не пренебрежительно мало)))

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

"Таким образом, есть пример когда имеет смысл распараллелить запросы, однако нет обоснования, зачем надо использовать для этого какую-то компоненту." - как бы Вам пояснить, чтобы понятно было.
Всегда для решения каких-то задач требуется инструментарий. Инструментов бывает несколько, каждый программист тестирует и выбирает для себя что лучше использовать. Мы занимаемся созданием подобных инструментов (на рынке немного компаний которые это делают) и предоставляем Вам, в данном случае бесплатно.
Если Вы пока с чем-то не сталкивались в решении проблем производительности (в частности распараллеливанием), это не значит что не столкнетесь в будущем. Мы лично применяли все доступные технологии на рынке и успешно для больших компаний.
12. ValeriVP 12.02.13 14:04 Сейчас в теме
Оно не пренебрежительно мало

сколько процентов? особенно с учетом:
- Для уменьшения влияния меж поточного взаимодействия необходимо, чтобы предполагаемая длительность запросов была более 5 секунд.


не правильно (кстати типовая ошибка)

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

Мне непонятно, почему имеет смысл использовать какую-то проприетарную библиотеку для задач, которые вполне решаются средствами 1С.
Вместе с тем, я сталкивался с проблемами производительности, часть из которых решалась в сотрудничестве с SoftPoint.
Однако в данном случае, на мой взгляд интересна только идея, а реализация неправильная - избыточная и не универсальная. Например, как быть при использовании не MS SQL?
13. ValeriVP 12.02.13 14:09 Сейчас в теме
и еще - правильно ли я вас понял, что ваша компонента транслирует запросы 1С в запросы SQL на порядок быстрее? а как на счет RLS?
14. gallam99 229 12.02.13 15:53 Сейчас в теме
А какая сложность с RLS?
Про универсальность "избыточная и не универсальная" - смотря с какой стороны посмотреть: а если не 1С, но MS SQL? В чем не универсальность? 1С - одна из систем с MS SQL, но список этим не ограничивается. Вместо написания потоков и прочего вам дана возможность в последовательном коде любого приложения выполнять параллельно запросы (Хранимые процедуры), да что угодно.

Про %, тут нельзя сказать однозначно для всех случаев. Но можете провести эксперимент:
Запустите в цикле большое количество фоновых задач (в которой выполните запрос) и сделайте замер, и напишите приложение (на любом языке, например, С++) - в котором создаете поток с выполнением запроса SQL и уничтожаете такое же количество раз (как в примере в фоновыми заданиями). Посмотрите разницу и потребление ресурсов.

"Наверное я не совсем правильно выразился. Не то что бы обязательно менять железо. Но суть в том, что если тормозят все отчеты, то надо смотреть на окружение - ПО, железо, сеть - и в гораздо меньшей степени на конфигурацию. Если отдельные блоки тормозят - да, имеет смысл обратить внимание на эти блоки." - никто не говорил все отчеты, говорили что их много 100, и при проблеме производительности надо смотреть все, последовательно исключая факторы)))

Надеюсь я ответил на ваши вопросы
15. OBEH 13.02.13 05:17 Сейчас в теме
На прямую к данной теме мое сообщение не относится. Но так, для примера.
Несколько лет назад по совету одного продвинутого программера использовал его dll для ускорения отчетов.
Кое как разобрался с механизмом и все такое. В общем, был немало удивлен, когда скорость отчетов, реально, увеличилась в 10 раз. Конфигурация была не моя и переделывать написанное не было желания, а этот механизм решал проблему неплохо.
Через некоторое время звонит бухгалтер и говорит, что "ни фига, скорость стала прежняя". Приезжаю, тестирую. Скорость в 10 раз выше. Ничего не понимаю. Потом догадался запустить параллельно с другого компа. Действительно, скорость упала до прежнего. Выяснилось, что при обращении к ресурсу(в данном случае, к базе) Windows 2003 "снимает" кэширование считываемых данных в оперативной памяти. Так что, мнимая "многозадачность" Windows 2003, декларируемая мелкомягкими, оказалась на поверку декларацией.
16. vec435 15 13.02.13 08:51 Сейчас в теме
немного не понял: если в пакетном запросе идет последовательное получение временных таблиц и данные одной таблицы есть источник для другой то как распараллелить?
17. gallam99 229 13.02.13 09:03 Сейчас в теме
В данном решении можно параллелить только "независимые" запросы 1С.
Оставьте свое сообщение

См. также

Исследование технологического журнала 1С при помощи регулярных выражений в блокноте Промо

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Все из тех, кто пробовали сдать на сертификат "Эксперт по технологическим вопросам 1С", сталкивались с методикой ЦКТП - разбор файлов технологического журнала при помощи консоли bash. Я, в свою очередь,внёс изменения в данную методику. Мне хотелось достичь более понятного вида и сфокусироваться на Perl, в качестве предпочтительного средства обработки файлов ТЖ. Вот что из этого вышло:

30.10.2017    29243    MrWonder    42    

Нестандартные блокировки при работе с OLAP-нагрузкой

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Если выполнение отчета мешает работе других пользователей и провоцирует блокировки, даже с учетом «грязного чтения» – ситуация кажется парадоксальной. О том, как расследовать такие проблемы, на конференции Infostart Event 2019 Inception рассказали ведущий программист торгового дома «Петрович» Станислав Щербаков и специалист по производительности компании «СофтПоинт» Александр Денисов.

20.07.2020    1671    Филин    6    

Автоматическая классификация ошибок технологического журнала

Технологический журнал v8 1cv8.cf Бесплатно (free)

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

25.06.2020    2346    ivanov660    12    

Выявляем и оптимизируем ресурсоемкие запросы 1С:Предприятия

Производительность и оптимизация (HighLoad) Администрирование СУБД Технологический журнал Структура метаданных v8::Запросы Бесплатно (free)

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

24.05.2020    6681    DataReducer    22    

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

Производительность и оптимизация (HighLoad) v8 1cv8.cf Бесплатно (free)

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

22.04.2015    40530    Gilev.Vyacheslav    1    

[SQL Server] Использование trace flag 9592 для сжатия траффика в кластере AlwaysOn

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

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

18.05.2020    1910    Aleksey.Bochkov    3    

Эти занимательные временные таблицы

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

Кое-что интересное о временных таблицах и работе платформы 1С с ними.

06.04.2020    10805    YPermitin    0    

Оптимизация запросов 1С посредством индексации временных таблиц. Миф? Тестируем, смотрим, считаем

Производительность и оптимизация (HighLoad) Практика программирования v8 Бесплатно (free)

Появилось свободное время, решил проверить на работе индексацию таблиц. Решил поделиться с Вами результатами исследования. Давайте порассуждаем на эту тему? Часто ли вы пользуетесь индексацией в запросах? Платформа 8.3.16.1224

03.04.2020    3700    feva    14    

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

Производительность и оптимизация (HighLoad) v8 1cv8.cf Бесплатно (free)

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

22.01.2014    66932    yuraos    112    

Как я собрал для себя высокопроизводительный и бесплатный облачный бекенд для 1С на PosgreSQL + PostgREST

Производительность и оптимизация (HighLoad) WEB Интеграция Мобильная разработка Администрирование веб-серверов v8 Бесплатно (free)

В этой статье я расскажу о проблемах бека для мобильных приложений или другого фронта, который требует производительности, быстрой реакции и отказоустойчивости, и как я решил это благодаря opensource проекту PostgREST и СУБД Postgre SQL 12. Проведу простой тест производительности для сравнения 1С с данным решением. Это может быть полезно всем, кто разрабатывает мобильные приложения либо фронтсайд-приложения для 1С на чем угодно - на мобильной платформе или на нативном языке или на Simple UI. И также обзор новых функций SimpleUI для связи с этим бекендом.

31.03.2020    11970    informa1555    28    

Многострочный контекст событий

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

Разбор технологического журнала с группировкой событий по первой или последней строке многострочного контекста.

31.03.2020    3003    vasilev2015    9    

Анализ взаимоблокировок

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

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

20.03.2020    4440    vasilev2015    21    

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

Производительность и оптимизация (HighLoad) v8 УТ10 УПП1 Бесплатно (free)

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

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

Многопоточность

Практика программирования Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

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

18.03.2020    6611    kaliuzhnyi    43    

Планы запросов - это просто! Разбор оптимизаций запросов PostgreSQL на живых примерах

Производительность и оптимизация (HighLoad) v8::Запросы Бесплатно (free)

Проблема быстродействия 1С напрямую зависит от производительности запросов. Но как понять механику работы СУБД с помощью плана запроса? Андрей Овсянкин и Никита Грызлов на конференции Infostart Event 2019 Inception подробно рассмотрели алгоритм работы с планом запроса СУБД PostgreSQL, полученным из технологического журнала, и рассказали, на что обратить внимание, чтобы оптимизировать работу системы.

17.02.2020    8765    Evil Beaver    13    

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

Производительность и оптимизация (HighLoad) v8 1cv8.cf Россия Бесплатно (free)

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

19.02.2013    54462    Gilev.Vyacheslav    46    

Оптимизатор запросов. Вторая часть

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Продолжение статьи об оптимизаторе запросов. Во второй части мы попробуем создать свой оптимизатор и попутно разберемся с такими вопросами, как: хранение файлов; индексы; статистика.

23.01.2020    6237    darkdan77    59    

Улучшаем производительность 1С. Рекомендации

Производительность и оптимизация (HighLoad) v8 1cv8.cf Россия Бесплатно (free)

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

23.01.2020    7467    Kaval88    26    

Мониторим производительность с помощью 1С RAS

Инструментарий разработчика Производительность и оптимизация (HighLoad) v8 1cv8.cf Бесплатно (free)

Подключаемся и анализируем данные через 1С RAS. Необходимо выполнить 5 пунктов и серьезный инструмент мониторинга будет у вас в руках.

19.12.2019    10678    ivanov660    16    

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

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

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

03.11.2012    42093    madmpro    32    

Весёлые картинки о работе Performance Monitor на Windows Server 2016 Std по мотивам расследования потери производительности на базе 1С

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Данная публикация посвящена одной особенности Performance Monitor на Windows Server 2016 Std. Как понимать графики Performance Monitor на Windows Server 2016 Std при расследовании проблем в работе 1С.

22.10.2019    7315    EugeneSemyonov    11    

Обслуживание баз данных. Не так просто, как кажется

Производительность и оптимизация (HighLoad) Администрирование СУБД v8 1cv8.cf Бесплатно (free)

Считаете, что обслуживание индексов и статистик дело простое? Что ж, это не всегда так.

14.10.2019    17120    YPermitin    28    

Мониторинг высоконагруженной системы

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Высоконагруженной системе (более 8000 клиентских сессий) мониторинг необходим. Про опыт использования инструментов для мониторинга – самописной системы информирования, написанной на C#, и конфигурации «Центр контроля качества» в связке с системой отображения данных Grafana, на конференции Infostart Event 2018 Education рассказал Олег Репников.

13.09.2019    8784    Repich    5    

Использование Zabbix для сбора информации о серверных вызовах и управляемых блокировках с сервера 1С Предприятия, работающего на платформе GNU/Linux

Администрирование данных 1С Zabbix v8 Бесплатно (free)

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

10.09.2019    18107    Sloth    24    

Хранение файлов - как уменьшить размер базы данных

Чистка базы Производительность и оптимизация (HighLoad) Практика программирования Разработка v8 Россия Бесплатно (free)

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

09.09.2019    8317    2tvad    17    

Неочевидные проблемы производительности: важность системного подхода при анализе

Производительность и оптимизация (HighLoad) v8 Россия Бесплатно (free)

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

19.07.2019    8766    Филин    12    

Ловля блокировок на связке "Microsoft SQL server - 1С"

Производительность и оптимизация (HighLoad) v8 v8::blocking Бесплатно (free)

Материал относится к базам данных на связке «1С - MS SQL Server». Один из способов отлова блокировок в бд 1С . Переход к управляемым блокировкам через режим "Автоматический и управляемый".

16.07.2019    9588    fhqhelp    0    

Анти-оптимизация: как мы ускорили запрос в 4 раза, сделав его неоптимальным

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

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

02.07.2019    11071    igordynets    119    

Ускорение чтения правил обмена в УПП 1.3 в 20 раз!

Производительность и оптимизация (HighLoad) v8 1cv8.cf Бесплатно (free)

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

27.06.2019    9677    YPermitin    16    

Хотите снизить нагрузку на процессор сервера в 2 раза?

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

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

27.06.2019    9331    Дмитрий74Чел    6    

Непридуманные истории по оптимизации. История 1

Производительность и оптимизация (HighLoad) v8 1cv8.cf Россия Бесплатно (free)

Первая статья из планируемого цикла об оптимизации приложений на базе 1С. Без теории. Одна практика.

13.06.2019    12432    Repich    117    

Оптимизация: неэффективные запросы

Производительность и оптимизация (HighLoad) Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

В большинстве случаев основной причиной медленной работы системы при многопользовательском режиме работы является блокировка данных СУБД (говорим про клиент-серверную версию). Блокировка - это не есть хорошо или плохо, это жизненно необходимая вещь при построении прикладной логики работы системы. Но блокировки таблиц, записей могут быть как вполне законными, так и далеко не всегда оправданными в каждой конкретной ситуации. Одной из самых распространенных причин неоптимальной блокировки ресурсов является некорректное написание запросов.

13.06.2019    5783    slayer-ekb    10    

Многопоточное ускорение однопользовательских нагрузок в 1С + Microsoft SQL Server 2017

Практика программирования Производительность и оптимизация (HighLoad) v8 v8::Запросы Бесплатно (free)

Взаимодействие с Microsoft SQL Server нередко вызывает трудности у 1С-ников, а потому интересны любые моменты, связанные с его использованием. О своем опыте работы с новым SQL Server 2017 участникам конференции Infostart-2018 рассказал директор ООО «Аналитика софт» Дмитрий Дудин.

11.06.2019    23980    dmurk    144    

За 5 шагов добавляем мониторинг счетчиков производительности серверов MS SQL и 1С

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

Мы расскажем и покажем, как добавить данные счетчиков производительности серверов 1С и MS SQL в нашу базу мониторинга за 15 минут. Приведем список наиболее важных из них, опишем основные особенности.

28.05.2019    18405    ivanov660    9    

Не думать о секундах свысока...

Производительность и оптимизация (HighLoad) v8 1cv8.cf Бесплатно (free)

Несколько примеров оптимизации типовой конфигурации УТ11. Описанные приемы подходят для многих других конфигураций.

21.05.2019    7851    vasilev2015    21    

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

Производительность и оптимизация (HighLoad) v8 v8::blocking 1cv8.cf Россия Бесплатно (free)

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

20.05.2019    7077    zhichkin    15    

Как работают управляемые блокировки

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

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

29.04.2019    22233    comol    198    

Странное потребление места на диске С

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Решение проблемы постоянного роста папки %AppData%/Local/Temp.

26.04.2019    14017    kuzyara    12    

Включение встроенного в платформу механизма "Копии базы данных" и использование "Дата Акселератора". Новый стандартный механизм использования баз OLAP в 1С

Производительность и оптимизация (HighLoad) v8 Россия Бесплатно (free)

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

25.04.2019    13674    Elf1k    27    

5 простых шагов и 15 минут на разворачивание инструмента мониторинга проблем производительности базы 1С

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

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

18.04.2019    28768    ivanov660    77    

Как разбить базу на файлы и не сойти с ума

Производительность и оптимизация (HighLoad) v8 Бесплатно (free)

Разбиение базы данных 1C на файлы и последующее сопровождение. Нюансы, грабли и прочее.

06.04.2019    15504    YPermitin    30    

Как одно изменение конфигурации PostgreSQL улучшило производительность медленных запросов в 50 раз

Производительность и оптимизация (HighLoad) v8 1cv8.cf Россия Бесплатно (free)

В связи с санкциями и другими событиями сейчас все более и более актуальна тема перевода ПО компаний на отечественное и свободное программное обеспечение. Одной из самых востребанных СУБД на рынке на данный момент является PostgreSQL - надежная, высокопроизводительная и хорошо масштабируемая СУБД, которая является прямым конкуретном таким крупным компаниям с их топовыми продуктами, как Oracle, IBM и Microsoft. Однако каждый, кто переходит на PostgreSQL, сталкивается с трудностями, прежде всего с настройкой и производительностью. Не обошли проблемы с производительностью "слоника" и меня. Предлагаю вашему вниманию перевод статьи "How a single PostgreSQL config change improved slow query performance by 50x" автора Pavan Patibandla, которая мне помогла улучшить производительность PostgreSQL.

18.03.2019    15479    w.r.    23    

Простое программное решение проблем с блокировками SQL

Производительность и оптимизация (HighLoad) v8 v8::blocking 1cv8.cf Россия Бесплатно (free)

Описание одного из способов программного решения проблемы блокировок при проведении документов в клиент-серверной 1С.

06.03.2019    8865    dmitrydemenew    38