Элементарный способ ускорить вашу 1С в два-три раза

14.12.18

База данных - HighLoad оптимизация

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

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

Так как там серверная БД, пришлось серьезно вникать в анализ производительности БД, купил даже курс
"Ускорение и оптимизация систем на 1С:Предприятие 8.3"  и кстати не сочтите за рекламу - очень доволен остался... Парни просто профи в вопросе и умении излагать материал...
По советам из этого курса внедрил подсистему, фиксирующую время выполнения операций и стал изучать на 3х секундном процессе открытия определенной формы сколько тратится на запрос БД /процессорную обработку / Передачу данных на клиент.

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

Конечно же, поменял сервера местами, снова измерил время работы и выяснил что одинаковые сервера с чрезвычайно похожими сетапами дают разное время открытия формы. Хоть тресни.

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

А я говорит, в одном сервере на днях в настройках электропитания поставил режим "Высокой производительности". Ну или в дополнительных параметрах питания, нашел раздел "Управление питанием процессора" - "Минимальное состояние процессора" - и поставил настройку 100%


 

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

Ускорение и оптимизация систем на 1С:Предприятие 8.3

 

Я думаю, пояснять этот график не надо....

Конечно, грамотный айтишник скажет, что еще в БИОС надо выставлять максимальную производительность процессора, что бы в Windows уже не требовалось за этим следить. Но для сервера лезть в БИОС это целая история, причем ночная... А изменить сделать предложенную настройку настолько просто и очевидно - что стало стыдно за то, что потребовалось так много лет, что бы дойти до этой простой истины...

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

- Использование скоростного SSD (можно SATA3, можно M.2)

- Запас оперативной памяти

- Windows тоже ставить на SSD или же обязательно переносить на SSD диск
     - файл подкачки
     - КЭШ сервера 1С (в реестре отредактировать команду запуска сервера)
     - Терминальных пользователей вынес в отдельную виртуальную машину (тоже на SSD)
     - Если используем решения на "обычных формах" - то никакой PostgreSQL - только MS SQL (Реагирую на гневный комментарий... - дело, конечно не в формах, а в технологии запросов, которые применялись в старых конфигурациях, когда допускалось соединение виртуальных таблиц без их предварительной записи во временную таблицу). 

- Если решение на управляемых формах, то используем Web сервер для доставки приложения. Особенно заметно на файловых базах - ускорение получается даже на том компьютере, где лежит эта база (что казалось бы парадокс). А у сетевых клиентов - просто космос!!!

- Регулярное тестирование БД с пересчетом итогов.

- Если SQL - не забываем про регламентное обслуживание SQL базы.

По рекомендации пользователя PerlAmutor  в комментариях - обращаю внимание на сведения от 1С https://its.1c.ru/db/metod8dev/content/5904/hdoc

Также рекомендую прочитать статью Скорость работы 1С8 файловой по сети

DatabaseCompressionTool — сжатие и свертка любой базы 1С

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


Вступайте в нашу телеграмм-группу Инфостарт

См. также

HighLoad оптимизация Программист 1C:ERP Бесплатно (free)

Использование оператора «В» для полей или данных составного типа (например, Регистратор) может приводить к неочевидным проблемам.

10.11.2025    5265    ivanov660    48    

51

HighLoad оптимизация Программист 1С:Предприятие 8 1C:ERP Бесплатно (free)

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

18.02.2025    8109    ivanov660    39    

61

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

Обсудим поиск и разбор причин длительных серверных вызовов CALL, SCALL.

24.06.2024    10536    ivanov660    13    

64

HighLoad оптимизация Программист 1С:Предприятие 8 Бесплатно (free)

Метод очень медленно работает, когда параметр приемник содержит намного меньше свойств, чем источник.

06.06.2024    16506    Evg-Lylyk    73    

46

HighLoad оптимизация Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

Анализ простого плана запроса. Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы.

13.03.2024    8109    spyke    29    

54

HighLoad оптимизация Программист 1С:Предприятие 8 Бесплатно (free)

Оказывается, в типовых конфигурациях 1С есть, что улучшить!

13.03.2024    11436    vasilev2015    22    

47
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vano-ekt 145 15.12.18 00:53 Сейчас в теме
[:||||:]
Glebis; SerVer1C; papami; vadimlp77; Дмитрий74Чел; mirco; sevushka; WellMaster; user921389; kuzyara; 24rus; dandykry; akimych; starik-2005; +14 Ответить
2. nvv1970 15.12.18 01:16 Сейчас в теме
Кэп, кэп, кэп. Про это уже написано, рассказано... много много.
Перепечатка курса?
Про pg vs ms хрень полная. Автор выставляет себя дилетантом. И как можно путать формы, режим приложения и режим блокировок?
digorec88; mrsmrv; Светлый ум; Дмитрий74Чел; mirco; ef42; h00k; Silenser; Ildar13; +9 5 Ответить
3. Aleksey81 1194 15.12.18 07:48 Сейчас в теме
Про Postgre vs MS не хрень. Выполнение запросов в старых конфигурациях, где не используют временные таблицы, а делают сразу объединение виртуальных таблиц на postgre делается неэффективно и по времени в 3-5 раз медленнее. Это зафиксировано в официальной документации и хорошо видно при формировании прайс листа в УТ 10 в двух разных sql.
bladeson; ef42; northsoft; master555; h00k; Yakud3a; for_sale; +7 Ответить
4. Aleksey81 1194 15.12.18 07:56 Сейчас в теме
(2) И поясните, пожалуйста, где были перепутаны "формы", "режим приложения", и "режим блокировок"?
for_sale; +1 Ответить
5. Aleksey81 1194 15.12.18 08:32 Сейчас в теме
(4) Попробую угадать. Вам не понравилось упоминание о неэффективности использования PostGre на приложениях с обычными формами. Что ж. Это понятно. Здесь, вероятно, надо было указать длинную цепочку событий:
Обычные формы -> это старые конфигурации -> 1С в старых конфах использовала старую методологию в запросах -> В таких конфигурациях не редкость объединение виртуальных таблиц без их предварительного выделения во временные -> PostGre медленно работает, если использовалась эта "старая" методология. -> в старых конфах PostGre не эффективен.
ef42; michmich; frkbvfnjh; for_sale; Xershi; +5 Ответить
39. nvv1970 30.12.18 10:50 Сейчас в теме
(5) только наверно не объединение, а соединение)
Я за точность высказываний. Чтобы человек, не понимающий темы не делал смысловой привязки к формам. Потому что этим человеком может оказаться заказчик, который увидит ОФ и сделает абсолютно идиотский вывод плохой работе ПГ.
Спасибо за исправление. Извините за резкость и "гневность")))
Я рад, что у вас глубокие знания и опыт. Но нужна ответственность перед более неопытными коллегами за каждое свое слово. Поэтому давайте не оставлять за кадром такие важные моменты, тем более в статье.

Справедливости ради замечу, что такой сильной корреляции между формами и качеством запросов я не замечал. Наверно потому что в УФ ПГ тоже часто отказывается работать. Соединения со срезами, по два полных соединения в запросе и т.д. Последние конфигурации для РФ вроде хороши, но локализованные решения или сильно отстают, или сделаны некачественно. Поэтому для меня нет такой аналоги с формами и не будет никогда.
Rom_0976; Aleksey81; +2 Ответить
58. alex-prig 11.04.25 01:55 Сейчас в теме
(39) Откройте форточку, стало душно
6. insurgut 208 15.12.18 08:36 Сейчас в теме
Делается уже на автомате, когда в плане энергосбережения ставишь Высокая производительность, чтобы компьютер не засыпал.
7. PerlAmutor 160 15.12.18 08:44 Сейчас в теме
На всякий случай, если кто-то попал сюда в поисках решения с производительностью сервера кидаю ссылку на ИТС, где упоминается в том числе и режим повышенной производительности: https://its.1c.ru/db/metod8dev/content/5904/hdoc (информация по ссылке не полная, остальные твики в гугле).
criptid; michmich; BarsukM; Pipapalamm; WellMaster; h00k; Aleksey81; +7 Ответить
8. Aleksey81 1194 15.12.18 08:57 Сейчас в теме
(7) Спасибо, добавлю в публикацию, если вы не против
9. PerlAmutor 160 15.12.18 09:28 Сейчас в теме
(8) Я только ЗА.
Если кто-нибудь напишет утилиту или скрипт позволяющий делать подобные настройки на этапе установке сервера 1С в автоматическом режиме, было бы замечательно.
12. Aleksey81 1194 15.12.18 10:36 Сейчас в теме
(9) Если кто-нибудь напишет утилиту.... Остальные будут бояться ее запускать... Особенно в эпоху вирусов-шифровальщиков....
13. PerlAmutor 160 15.12.18 10:38 Сейчас в теме
(12) Есть github, пожалуйста, выкладывайте исходники, будем сами собирать.
10. capitan 2548 15.12.18 09:29 Сейчас в теме
Капитан очевидность, приветствую тебя
Надо было для начала стартовать 1С с дискеты, тогда в заголовке можно было написать - Элементарный способ ускорить вашу 1С в миллион раз!
11. Aleksey81 1194 15.12.18 09:54 Сейчас в теме
(10) И тебе привет, Андрей!
14. maxim_1c 357 15.12.18 22:17 Сейчас в теме
Спасибо автору, наткнулся на публикацию буквально в тот момент, когда у меня выполнялась ресурсозатратная операция. Настроил сервер - сэкономил время.
frkbvfnjh; +1 Ответить
15. CheBurator 3232 16.12.18 00:48 Сейчас в теме
Автор, видимо, или молод или стар настолько, что успел забыть больше чем знал ;-)
про режим энергосбережения лет наверное десять назад еще Павел Баркетов из СофтПоинта подробна на своих очных семинарах и рассказывал и вживую показывал...
https://www.youtube.com/watch?reload=9&v=OXuagO8JrRg
Дмитрий74Чел; vano-ekt; h00k; jONES1979; JohnConnor; +5 Ответить
16. Adilgeriy 24 17.12.18 11:56 Сейчас в теме
ну еще можно базу на диск в памяти положить. еще быстрей. M2 только самсунг 970 pro
19. Vlx 332 17.12.18 13:09 Сейчас в теме
(16)
M2 только самсунг 970 pro

Т.е. не хуже, чем 970. Так следует понимать?
17. Vlx 332 17.12.18 13:06 Сейчас в теме
Может конечно и очевидные вещи. И уже об этом говорилось ранее.
Но я пробовал изменял параметры энергосбережения и не могу сказать, дало мне это изменение какой-то эффект или нет.
Автор провел практическую работу, сделал замеры и говорит, что есть положительный эффект.
Поэтому публикация однозначно +.
unknown181538; rovenko.n; ansonat; frkbvfnjh; +4 Ответить
22. Adilgeriy 24 17.12.18 13:41 Сейчас в теме
(17)да их скорость чтения/записи в 6-8 раз превосходит ssd на sata
18. starik-2005 3200 17.12.18 13:07 Сейчас в теме
Бородатый админ - маст хэв!

Вообще, про режим высокой производительности я пишу в комментариях примерно раз в неделю - до сих пор, оказывается, есть народ, который не знает, почему это 1С (и не только) начинает работать быстрее раза этак в два. Автор, ты-то хоть знаешь, почему?
rovenko.n; +1 Ответить
35. rovenko.n 19.12.18 10:40 Сейчас в теме
(18)А на файловых базах поможет? Часто для скорости приходится что-то тестировать до того, как на сервер обновления загружат.
36. starik-2005 3200 19.12.18 11:17 Сейчас в теме
(35)
А на файловых базах поможет?
Поможет, если алгоритм написан неоптимально. Т.е. процесс обработки данных сменяется процессом получения данных из хранилища. Если такое поведение в алгоритме частое (пример - запрос в цикле), то даже на файловой системе данная операция повысит производительность (хоть и не в два раза). Если же сначала все данные выбираются, потом обрабатываются, потом записываются в систему, то изменения будут не такими большими, но тоже будут - интерфейс начнет реагировать быстрее на действия пользователя.
rovenko.n; +1 Ответить
20. w.r. 655 17.12.18 13:26 Сейчас в теме
Знал про это. Но главное никогда об этом не забывать ) Автору спасибо!
frkbvfnjh; +1 Ответить
21. Ziggurat 50 17.12.18 13:38 Сейчас в теме
Интересная и полезная статья. Новый, достаточно сложный материал изложен грамотно и доходчиво! Автор, огромное спасибо.
23. DarkAn 1101 17.12.18 14:42 Сейчас в теме
(0)
купил даже курс "Ускорение и оптимизация систем на 1С:Предприятие 8.3"
. Читая автора сложилось впечатление, что курс только куплен, но не пройден (с домашними заданиями), т.к. в данном курсе о данной настройке так же говориться.

PS Я, про "Этот курс". Спасибо за курс Андрею и всей команде портала за его доступность, как в денежной, так и в интеллектуальной составляющей.
Дмитрий74Чел; Virsy; h00k; +3 Ответить
25. Aleksey81 1194 17.12.18 16:27 Сейчас в теме
(23) Вы правы, осилил пока только четверть курса.
24. shard 282 17.12.18 15:37 Сейчас в теме
а где про использование Web сервера для доставки приложения почитать можно?
26. Aleksey81 1194 17.12.18 16:32 Сейчас в теме
27. Gilev.Vyacheslav 1921 18.12.18 05:43 Сейчас в теме
А сколько Алексея ждет открытий когда он научится план запроса анализировать, да виртуалку настраивать...
vano-ekt; triviumfan; Aleksey81; +3 Ответить
28. Aleksey81 1194 18.12.18 08:24 Сейчас в теме
(27) Сделаю себе это подарком на новый год :)
54. romankoav 4 27.11.21 12:55 Сейчас в теме
(28)а про настройку виртуалки где почитать?
29. frkbvfnjh 817 18.12.18 09:07 Сейчас в теме
Спасибо за статью! В жизни всегда так - пока сам не разберешься, никто помочь не может, а как разберешься так сразу баян! Никого не слушай, особенно тех кто про баяны поет. Правильно сделал, что статью написал.
virtyoz; Teut_Vlad; begemot; KroVladS; unknown181538; Alien_RS_Forever; Gorus; ansonat; +8 Ответить
31. Aleksey81 1194 18.12.18 12:17 Сейчас в теме
(29) Договорились, экспертов по баянам слушать не буду. Спасибо за добрые слова.
30. F1215 18.12.18 10:20 Сейчас в теме
Спасибо за статью. В принципе все это не раз пережовывалось но здесь хоть читать приятно
32. herfis 520 18.12.18 17:03 Сейчас в теме
Мастерство заголовка, блин.
"Где можно натупить с настройкой сервера и просесть в производительности в два-три раза" - было бы ближе к телу.
2PRV; Дмитрий74Чел; +2 Ответить
33. VasilVtoroy 19.12.18 09:11 Сейчас в теме
На всякий случай. M2 это форм-фактор диска(даже семейство форм-факторов), а sata - протокол. Есть, и не мало, ssd в форм-факторе m2, которые работают по протоколу sata.

Более быстрый протокол называется NVM.
dime2; sansys; +2 Ответить
34. _Enot_ 10 19.12.18 09:57 Сейчас в теме
Спасибо за статью.Полезная. Возьму на вооружение
37. ef42 20.12.18 07:40 Сейчас в теме
В принципе все очевидно, но напомнить никогда не мешает. Статья кратенько так написана, в самый раз чтобы вспомнить. Автору плюс. По PG vs MS можно подробнее, где и что написано, кто проводил замеры?
38. Aleksey81 1194 20.12.18 20:57 Сейчас в теме
Замеры проводил я лично. А где написано - искать надо. Год назад это очень внимательно изучал. Теорию уже не найду, а практику - очень легко воспроизвести самому.
40. user1090556 29.01.19 09:42 Сейчас в теме
что подразумевается под " - КЭШ сервера 1С (в реестре отредактировать команду запуска сервера)"?
41. Aleksey81 1194 29.01.19 19:59 Сейчас в теме
(40) Это значит, что в реестре нужно найти ветку [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent] в которой лежит команда запуска сервера ImagePath = "C:\Program Files (x86)\1cv8\8.3.13.1644\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files (x86)\1cv8\srvinfo" -debug
Кстати именно в ней мы ставим флаг -debug.
Посмотрев внимательно на эту строку увидим такой поддекст: -d "C:\Program Files (x86)\1cv8\srvinfo". В этом каталоге вы как раз и найдете "серверный" кэш всех использовавшихся вами баз.
sansys; user1090556; +2 Ответить
42. user1090556 30.01.19 04:49 Сейчас в теме
(41) обычно debug я ставлю в такой последовательности, и отладка работает: "C:\Program Files\1cv8\8.3.13.1644\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "C:\Program Files\1cv8\srvinfo"
Имеется ввиду что кэш можно перенести на другой диск ускорив тем самым работу сервера?
ennerlink; +1 Ответить
43. Aleksey81 1194 30.01.19 09:06 Сейчас в теме
(42) Сам по себе перенос кэша имеет смысл только если системный диск перегружен, а диск на который переносите - способен работать в разы быстрее.. Что касается порядка команд - это едва ли имеет значение.
44. lev6975 06.01.20 01:07 Сейчас в теме
Когда я работал серваком ИТС в давние, но, не очень, времена, у одного клиента комплексная автоматизация 1.1 на ноутбуке(впарили чуваку на одно рабочее место, а, он кроме накладных в ней ничего и не делал, что, впрочем, на время обновления не влияло, поскольку, ноутбук был не из дорогих и быстрых), обновлялась около часа
Ну, обновлялась бы и обновлялась, у клиента положено быть не больше часа, пить кофе и болтать, так что укладывался во время. Но, райончик был "густонаселенным" клиентами, а, работа сдельная, сколько оббежишь столько и твое. И, вот, как в сабже, от нечего делать, копался винде во время зависшего процесса обновления и в диспетчере случайно обнаружил что двухгигагерцевый процессер работает на частоте 0,9 ГГц... мне это не понравилось и, малость нагуглив, узнал что это из - за экономичного плана питания. Недолго думая, залез и выставил наилучшую производительность, подняв вышеупомянутый параметр состояния процессора до 100%
Частота тут же подпрыгнула к 2ГГц как положено, а, зависший процесс обновления отвис буквально через несколько минут(перешел к следующему действу"обновить конфигурацию базы данных?"), а, еще минут через пять с конфигурацией базы данных благополучно справился и предложил принять изменения... ну, клиенту не сказал ничего про эту находку, а, повесил лапшу что новые обновления теперь ставятся быстрей чем раньше
Ну и после обновления питание вернул на место, чтобы, на всякий случай клиент не офигел от быстрого разряда батареи)))
Так короче и делал, приходил, включал перформанс, уходил - выключал
И не только у этого клиента
den_marino90; bussiness_hacker; Aleksey81; +3 Ответить
45. Aleksey81 1194 15.01.20 11:17 Сейчас в теме
(44) Спасибо, может пригодится. Но я бы рекомендовал таки оставлять "100% перфоманс". Клиент, уверен, будет только в выигрыше.
46. barracuda13 04.03.20 13:17 Сейчас в теме
спасибо полезная статья."тошнотики" и "умники" как всегда отличились.У кого корона шире так и не поняли,за то все умные учителя-"дилетант","капитан очевидность",прочие задросткие выражения ботаников самоучек.
Автор спасибо за статейку!
Aleksey81; +1 Ответить
47. starik-2005 3200 05.03.20 18:19 Сейчас в теме
А вот, кстати, додавил переход на Linux у нас в конторе для отдельного чудо-"сервера" (машинка с 64-мя гигами на райзене 3600-м с памятью 3333). Сегодня коллега протестил - в Гилеве 120!!! Ладно, думаю, протестирую на клиент-сервере (режим сбалансированной производительности) - 45! (это постгрес + убунту сервер последний + xRDP и авторизация в домене).

До этого машина работала под вендой эссенциал, пускала, соответственно, двух юзеров всего. В Гилеве из-за старого ядра винды проц не аиделся толком и показывал в файловой 74 в Гилеве (у меня дома 1600-й показывал 89). Кароче, народ, крайне рекомендую новые райзены (ZEN+) в качестве "недосерверов". Надо будет завтра включить режим высокой производительности - должен серверный под 60 попугаев скакнуть.
48. starik-2005 3200 05.03.20 18:50 Сейчас в теме
Кстати, вот протестил несколько раз Гилевским тестом:
1. Снял режим совместимости - 104-110.
2. Оставил режим совместимости - 120!!!

А вот тут притесался Хеон Голд за дохрена денег с дохрена памяти, но, увы, всего 60 в файловой ))) У меня RYZEN 3600 за 12к с воздушным обдувалом... И это все в режиме ONDEMAND, т.е. "сбалансированная производительность", на SQL 44 попугая. Даже не представляю, сколько будет, если включу PERFORMANCE! )))
Прикрепленные файлы:
49. user935934 13.03.20 11:26 Сейчас в теме
как-то так...
Прикрепленные файлы:
50. Fristayla 25.06.20 15:03 Сейчас в теме
Спасибо! Отличная статья! Протестил у себя и офигело от результатов.
51. rynesans 08.10.20 17:04 Сейчас в теме
не слушайте глупого дядю, что вам скажет выставлять минимальное состояние процессора 100% - перегреваться будет процессор очень сильно, и сервак будет аварийно вырубаться. а поставить более мощьное охлаждение вам влетит в копейку, и не на все матери его можно прикрутить нормально. процессор сам нагрузится как ему нужно и во время простоя будет охлаждаться.
52. Aleksey81 1194 13.10.20 06:40 Сейчас в теме
(51) Игорь, вероятно, вы очень трепетно относитесь к своей технике и не позволяете ей работать "сверхмеры". Это очень трогательно... Уверен, ваш ноутбук вас боготворит!
53. bussiness_hacker 01.11.20 14:42 Сейчас в теме
Тема хорошая и дискуссия тоже, автору плюс.

Включил режим высокой производительности на сервере с файловыми базами, опубликовал базы на IIS, завтра буду пользователей запускать, надеюсь поможет )
55. user929864 30.06.22 09:22 Сейчас в теме
может у кого-то это и ускорило, но у меня икакого от слово абсолютно, сама технологическая платформа как грузилась 20 сек, иак и грузится
56. Aleksey81 1194 09.07.22 13:35 Сейчас в теме
(55) Хм, вероятно, вы ждали, что существует универсальный способ решить все проблемы. Жаль, что надежда не оправдалась
57. Sergey_E 19.01.24 09:54 Сейчас в теме
Запуск через web сервер и тонкого клиента на файловой базе происходит секунд 10-15 (использование памяти 150-200Мб на подключение). До этого использовали прямое подключение к файловой базе, загрузка происходила от 1 минуты и до получаса (в память загружалось 1.5-2.5 Гб). На 10 подключений съедались все 32 Гб на сервере. При переключении на режим высокой производительность увеличение в скорости не заметил.
Для отправки сообщения требуется регистрация/авторизация