Имя: Пароль:
1C
1С v8
Поиск узких мест в конфе.
, ,
0 Олег
 
18.10.12
14:01
Сегодня обнаружил случайно что один самописный документ, жрёт 13% процессорного времени на неслабом терминал сервере процессом толстого клиента. На моей рабочей станции при открытом этом документе толстый клиент отъел 40% процессорного времени.

Стал рыть, обнаружил обработку события ТЧ документа ПриВыводеСтроки приводить не буду. Оптимизировал. Всё бы хорошо, но гложет мысль, а где у нас в УППхе, а я уже 4-й программист кто ей занимается, ещё могут лежать такие сюрпризы.
И главное как их искать?
Есть ли методики?
1 dimaldinho
 
18.10.12
14:03
Опросить пользователей, быстродействием каких операций они недовольны.
2 vmv
 
18.10.12
14:04
ПриВыводеСтроки() обработчик-паразит на УФ его убрали, т.к. попорукие его использовали по методу откуда и руки
3 acsent
 
18.10.12
14:04
посмотреть статистику в профайлере. выявить самые тяжелые запросы
4 Олег
 
18.10.12
14:10
(3) а вот со скулем у меня плохо, не ноль, но всё же плохо.
Вот например я увижу в профайлере что вот он зараза! Жрёт ресурсы. А дальше то как? Я же не 1Сный запрос выловил, а SQLный как узнать что в этот запрос перевёл сервер1С?
5 H A D G E H O G s
 
18.10.12
14:12
Найти все ПриВыводеСтроки() нетиповые и отстрелить их
6 Олег
 
18.10.12
14:15
А смысл, я например оставил, в том документе им раскрашивали в разные цвета (всё же женщина писала) строки табличной части. Я это оставил, только у меня это жрёт ресурсов почти ничего, в диспетчере задач незаметно.
7 tdm
 
18.10.12
14:16
ЦУП, не ?
8 Олег
 
18.10.12
14:18
Думаю так:
Всё же в 1С не дурики сидят и пишут код правильно, а не по-индийски поэтому смотрим всё самописное.
(7) надо посмотреть ЦУП, пока не трогал его руками, только читал про него.
Но у нас основная проблема с проведением расчёта себестоимости была, вроде "разрулили" настройками учёта.
9 tdm
 
18.10.12
14:19
>>Всё же в 1С не дурики сидят и пишут код правильно, а не по-индийски
всяко разно бывает)
10 tdm
 
18.10.12
14:21
(8) а вообще если интересна эта тема думаю можно поговорить с руководством и на курсы 1С Эксперт по технологическим вопросам попросить оплатить, неделя учебы и гора информации для дальнейшей оптимизации :)))
11 Fragster
 
гуру
18.10.12
14:21
Найти все изменения данных в обработчиках обновления, получения данных, выводе строки и т.п.
12 DailyLookingOn Sunset
 
18.10.12
14:37
(8)
вспомнилась декларация по имуществу и запрос в цикле по всем ОС
13 Олег
 
18.10.12
14:41
(12)
Извените, но такого:

Процедура СоставПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
   Отказ = Истина;
   Если ДанныеСтроки.НомерИзделия = 0 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
       //ОформлениеСтроки.ЦветТекста = WebЦвета.Зеленый;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 1 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 2 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;  
   ИначеЕсли ДанныеСтроки.НомерИзделия = 3 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 4 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 5 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 6 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;          
   ИначеЕсли ДанныеСтроки.НомерИзделия = 7 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 8 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 9 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 10 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;          
   ИначеЕсли ДанныеСтроки.НомерИзделия = 11 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 12 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   ИначеЕсли ДанныеСтроки.НомерИзделия = 13 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;          
   ИначеЕсли ДанныеСтроки.НомерИзделия = 14 Тогда
       ДанныеСтроки.НомерИзделия = ДанныеСтроки.НомерСтроки;
   КонецЕсли;
   ПолучитьЦветСтроки(ДанныеСтроки, ОформлениеСтроки);    
КонецПроцедуры



Они не в стоянии написать, а в том документе было!
14 H A D G E H O G s
 
18.10.12
14:52
Типовые написаны годно, просто иногда их пытаются присобачить под то, под что они не заточены.
15 H A D G E H O G s
 
18.10.12
14:54
(13) Откуда это?
Нафига такая женщина нужна? Подаван?
16 Олег
 
18.10.12
14:59
(15) в принципе Дир по ИТ сегодня у нас сидит, но спрашивать не буду :) она работала тут до меня и до предыдущего программиста.
Там весь документ такой, я тут прикинул, в нём
около 100 реквизитов в шапке, и около 20 табличных частей, реквизиты табличных частей не считал.
Этой т.н. "считалкой" себестоимость считают, плановую.
17 Торин
 
18.10.12
15:03
посмотри вот сюда...
http://www.gilev.ru/services/online
мне помогло.
18 Торин
 
18.10.12
15:05
(14) полностью согласен. Но вся проблема в том, что  вот щас как раз и наступают времена, когда требуется то, " под что они не заточены..."
19 Олег
 
18.10.12
15:06
(17) спасибо. Гляну.