1. alanderex 10.08.16 17:34 Сейчас в теме

Загрузка ЦП 100%

Добрый день.

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

Проблема была не в коде, дословно было сказано «Мы нашли небольшой баг, сейчас исправим», после чего мы написали Кристине о проблеме ввода данных:
[09.08.2016 19:31:25] Екатерина: Кристина, печатная форма долго формировалась, так как дата установки цен позже перемещения.

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

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

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


Локальные компьютеры отпадают, так как работа идет через RDP. Сервер - виртуальная машина, выделено 11 гигов ОЗУ и 3Ггц процессор - 1 ядро. Можно конечно выделить больше ядер, но это только кое-как сгладит проблему, но не решит в корне.
как можно доказать свою точку зрения 1сникам?

У кого какие мнения и соображения на эту тему?
Ответы
Сортировка: Древо
3. alex-l19041 9 10.08.16 17:45 Сейчас в теме
(1) alanderex, а вообще "если программа ищет глубоко", то таки "съест" одно ядро. Так что для виртуальной машины лучше выделить еще одно ядро
16. cool.vlad4 43 09.09.16 09:43 Сейчас в теме
(1) alanderex, код их выложить. сложно что-то определенное сказать. (замер производительности можно попробовать, его уже посоветовали, но может ничего и не дать). "программа глубоко ищет", не знаю что это означает и что имелось ввиду. с вероятностью 99,9% кривой код. а что там такого в печатной форме, что требует крутые вычислительные ресурсы сервера и модернизации оборудования,это и хотелось бы узнать.
17. cool.vlad4 43 09.09.16 09:46 Сейчас в теме
(1) блин, на время поста не обратил внимания. а тему апнули, зачем-то. как проблему-то решили?
2. alex-l19041 9 10.08.16 17:41 Сейчас в теме
"цены для накладной были внесены позже, чем проводилось перемещение" - как работает, если цены введены раньше ?
4. v3rter 10.08.16 17:53 Сейчас в теме
Да, платформа может занимать 100% одного ядра. Кстати, 1 ядро на сколько одновременных пользователей?
5. alanderex 10.08.16 19:04 Сейчас в теме
пользователей 10 человек
6. alanderex 10.08.16 19:07 Сейчас в теме
платформа может занимать 100% одного ядра


Так что для виртуальной машины лучше выделить еще одно ядро


но на том же "занятом" ядре могут находится и рабочие процессы n-ного количества пользователей. Получается выделение доп.ядра спасет только тех, кому повезло быть не на этом занятом ядре...
7. Murvin 10.08.16 19:15 Сейчас в теме
Принтер печатает после или тупо висит?
8. alanderex 10.08.16 19:40 Сейчас в теме
Печатает, формирование просто дико долго происходит печатной формы. После формирования - все ок
11. walp 11.08.16 05:40 Сейчас в теме
(8) alanderex, если печ. форма долго формируется, то программистам надо найти место, которое жрет больше всего времени и попытаться его оптимизировать. Почти всегда с этим можно что-нибудь сделать. Остальные печатные формы в других документах формируются нормально? Отчеты делаются быстро? С проведением документов проблем нет? Если все так, то проблема не в конфигурации сервера или количестве пользователей, а конкретно в этой форме.
alex-l19041; +1 Ответить
9. starik-2005 1400 10.08.16 22:02 Сейчас в теме
Все зависит от размера базы, типа СУБД, архитектуры хранения данных. Вы ничего не сказали о том, какая печатная форма в какой конфигурации и на какой платформе формируется. То, что код кривой - это точно, но без полных сведений о решении что-то конкретное сказать невозможно.
10. alanderex 11.08.16 00:37 Сейчас в теме
Используется файловая версия 1с 8.2
Размер базы - 2,1 Гб
Печатная форма товарной накладной в конфигурации "Бухгалтерия для Беларуси" версия 1.6
12. v3rter 11.08.16 09:08 Сейчас в теме
На 10 пользователей я бы выделили ядра 3.
13. kuznecovii 11.08.16 10:41 Сейчас в теме
Очень сложно что то сказать без кода, могу лишь предположения высказать.

1) Вероятно печать ТТН (формирование вывода на печать) не проблема, скорее всего программисты по требованию Заказчика дописывали заполнение определенных полей (вероятно цен) по интересному алгоритму и надо смотреть как они это делали. Не могу сказать, что редко встречаю подобный код с циклом в котором есть подзапрос + еще один цикл по обработке и соответственно нагрузка на ЦП 100%.

2) Если все типовое без модификации, то скорее нужно смотреть в момент загрузки ЦП (опять же код и отладка), возможно проблема с драйверами принтера, т.е. при выводе на пред. осмотр или запрос каких то параметров происходит глюк и обработка пытается получить и обработать данные следовательно 100% загрузка. И это может объяснить почему на компе разработчика скорее всего все гуд.

На этом предсказания закончу.

PS А вообще в данной ситуации очень просто все скинуть на систему или сервак, особенно в такой ооооочееень ресурсоемкой операции как печать ТТН!!!!! Не ругайтесь, а совместно, т.е. дружно найдите в чем косяк, если что зовите суперменов ))))
14. olgerd666 41 06.09.16 17:41 Сейчас в теме
Вообще лучше код посмотреть, что такого там есть. И 1 ядро - это маловато
15. Kinestetik 19 09.09.16 07:16 Сейчас в теме
Проведите замер производительности отладчиком функции формирования печ.формы. И увидите, что дольше всего выполнялось - запрос или вызов еще каких-то функций или цикл с большим числом итераций. Эти моменты и оптимизируйте
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии



Ведущий программист 1С
Москва
зарплата от 150 000 руб. до 180 000 руб.
Полный день

Руководитель проектов 1С
Москва
Полный день

Консультант-аналитик 1С: ЗУП
Санкт-Петербург
Полный день