Имя: Пароль:
JOB
Работа
Как найти проблемный запрос в Информационной системе 8.2

,
0 Demiurg
 
26.03.13
17:57
Добрый день!

Чтобы найти узкие места в коде, можно воспользоваться онлайн инструментом http://www.gilev.ru/querytj/ для мониторинга и анализа долгих запросов.

Инструмент ориентирован прежде всего на клиент-серверный вариант 1С:Предприятие 8 и MS SQL Server. Хотя часть функций работает и в других связках.

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

Инструмент не снимает с программиста требований по квалификации, но облегчает поиск "проблемных" мест в запросах кода 1С. Рекомендуем особое внимание уделять закладке "План запроса".

На текущий момент сервисом пользуются 500 человек (учетных записей). Из них 150 - это наши "проекты", остальное - энтузиасты.
Размер базы данных

Общее описание сервиса - http://www.gilev.ru/querytj/
Инструкция по настройке - http://www.gilev.ru/setupquerytj/
Видеоинструкция по настройке - http://youtu.be/anQZ1XQtmPM
Вопросы по настройке и эксплуатации - http://www.gilev.ru/forum/viewforum.php?f=3
Вопросы в скайп по настройке (если выше перечисленное не помогло) gilev_slava

Почта для вопросов [email protected]

Цель данной ветки - проинформировать о бесплатных возможностях по диагностики узких мест в коде.

__________________________
Согласовано с Волшебником.
1 H A D G E H O G s
 
26.03.13
18:01
(0) 2 вопроса

1) Будет ли в дальнейшем форма просмотра данных локально, без использования вашего веб-сервера?
2) Можно ли самому впилить свою форму просмотра и зарубить отправку данных на ваш сервер?
2 Волшебник
 
26.03.13
18:01
Ветка согласована.
3 Demiurg
 
26.03.13
18:04
(1) Вопросы по настройке и эксплуатации - http://www.gilev.ru/forum/viewforum.php?f=3
4 Demiurg
 
26.03.13
18:12
Некоторые технические характеристики:
Размер базы данных немного больше 100 Gb.
Система использует "разделители".
Клиентская часть - 8.2.
Серверная часть - 8.3.

На текущий момент мы столкнулись с тем, что некоторые "коллеги" закачивают гигабайты, для их учеток работает "альтернативный" алгоритм. Т.е. разные клиенты при нажатии на одну и туже кнопку получает разный исполняемый код с целью повысить производительность.
5 Demiurg
 
26.03.13
18:17
Особенности инструмента:
- показывает запросы платформы (ЦУП не показывает)
- сбор происходит по всем информационным базам сервера (не зависимо от того где субд)
- использует только Технологический Журнал, COM-соединения с базами и других подключений не имеет (в отличии от ЦУП)
- логины и пароли для мониторинга информационных баз не требует и не подключается
- в серверной части можно посмотреть фильтром конкретную базу, а также можно оценить код всех информационных баз посовокупности
6 GANR
 
26.03.13
18:21
Настроить технологический журнал на регистрацию запросов со временем выполнения более 3 секунд, например.
7 GANR
 
26.03.13
18:22
+(6) Ой! Не дочитал до конца.
8 Demiurg
 
26.03.13
18:24
Вообще сервис не бог весть какой сложный, мы думали что подобное уже давно сделают. Брать за "ранжирование" кода по ТЖ  не видим смысла.
(7) Да :), в клиенте можно выставить любую длительность, но надо понимать, что это скажется на информационной системе через просадку железа. Если выставить порог в 0 - это значит все запросы которые были в памяти фактически "будут записаны на диск".
9 Demiurg
 
26.03.13
18:51
особенность, обнаруженные в процессе эксплуатации как другие утилиты мониторинга на платформе 1С:
после "падения сервера 1с" наш сервис не забывает "о том что он собирал логи" и мы еще пока не разу не ловили нехватки места на диске
10 TormozIT
 
гуру
26.03.13
19:12
А можно подробнее рассказать про "показывает запросы платформы"? По имеющейся у меня информации технологический журнал платформы не позволяет регистрировать запросы платформы (видимо имеется ввиду текст на языке запросов 1С).
11 Demiurg
 
26.03.13
19:14
(10) не знаю, но нам попадают такие запросы как "реструкторизация" в конфигураторе, запрос к "config", инсерты "при пересчете итогов" и т.п.

мы пользуемся тем же самым ТЖ что и Вы :)
12 TormozIT
 
гуру
26.03.13
19:19
(11) Теперь ясно. Имелись ввиду такие запросы, которые ЦУП исключает из рассмотрения по все видимости в виду отсутствия возможности на них повлиять изменением конфигурации. )
13 Demiurg
 
26.03.13
19:25
(12) в теории - нельзя повлиять;
на практике - чистка "программно из 1с" распухших настроек пользователей,
выполнение реструктуризации в ТиИ для "незавершенных корректно регламентов",
очистка нулевых записей пересчетом итогов в таблицах итогов, распухших нулевыми записями,
и т.п. и т.д.
14 Demiurg
 
26.03.13
19:45
приведу простой пример как легко обнаружить нашим сервисом проблему (пусть не шибко сложный, но реальный)

клиент говорит - раньше так все классно было, прямо "летало"
а три недели назад неожиданно начались "тормоза"

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

в итоге, запустили ТиИ с реструторизацией, исправили неуникальное значение (дубль), снова сделали ТиИ, индексы построились платформой и система "пришла в норму"

хэппи енд
15 PiVa123
 
26.03.13
20:24
(14) А если ошибок нет, ТИИ не помгает а "тормоза" появились резко, причем тормоза как на сикульной, так и на файловой версии, ТИИ (как сказал) так и chkdbfl не помогли, вы решите такую проблему ?
16 Demiurg
 
26.03.13
20:26
(15) ну так для этого и делали инструментарий, решим
17 PiVa123
 
26.03.13
20:30
(16) 1С к которой обращались и выслали им проблемную базу, так ничего и не ответили, а Вы, смотрю, напористые.

Жаль это было давно и копии этой базы у меня уже нет, но факт был, победить не смогли, дотянули до НГ сделали свертку. Позже таких проблем не видели.

Спасибо что откликнулись.
18 zladenuw
 
26.03.13
22:49
если ли смысл пробовать для postgres ?
19 Demiurg
 
27.03.13
00:28
(18) мы лично не разу не запускали

если есть энтузиазм, расскажите что получилось - в нашей практике как раз последнее время задач с postgresql не было
20 Demiurg
 
27.03.13
00:28
ни разу...
21 Demiurg
 
27.03.13
00:38
На заметку.
Еще один пример, который позволяет обнаружить проблемы - рассмотрение значений параметров запросов с типом "дата", когда попадают значения сильно больше или сильно меньше рабочей даты (скажем с дельтой на 10 лет)

Как правило это означает, что либо "прошедшим" либо "будущем" временем ОШИБОЧНО введены данные, особенно это характерно при загрузках, когда "меньше контроля данных" при вводе.
22 Demiurg
 
27.03.13
10:23
вчера после создания ветки была не одна попытка зарегистрировать "левые ящики" (да не будет оно так работать)

уважаемые "конкуренты"! - не бойтесь "светиться"
БиТ к примеру официально попросил и получил более двух десятков учеток пачкой :)
23 Волшебник
 
27.03.13
10:27
(14) так и запишем.
ТиИ с реструктуризацией решает половину проблем с тормозами
24 Никола_
Питерский
 
27.03.13
10:34
(22) Что значит левые ящики ?
25 Fragster
 
гуру
27.03.13
10:45
(23) если база битая, то зачастую да. остальное решает логическая целостность.

Это если база битая.
26 Demiurg
 
27.03.13
10:53
(23) ТиИ зачастую их "обнаруживает" - исправить не уникальность записей эта процедура сама не может к примеру :)
Но в чем то Волшебник прав - на крупных предприятиях на больших базах считается "нереально выполнить ТиИ" и порой недооценка значимости этой процедуры приводит к "детским" ошибкам.
27 Demiurg
 
27.03.13
10:54
(24) указываешь при регистрации "чужой" ящик
28 Demiurg
 
27.03.13
11:01
Немного истории развития сервиса:
в сентябре 2012 - "расшарили" инструмент для общего пользования http://gilev.blogspot.ru/2012/09/1.html
в октябре 2012 - сервис получил "начальную" известность, сделали прогноз роста популярности http://gilev.blogspot.ru/2012/10/blog-post_4.html
и тогда же пошли первые отзывы о сервисе http://gilev.blogspot.ru/2012/10/online-1.html
29 Demiurg
 
27.03.13
11:04
в ноябре 2012 - опубликовали первую статистику накопленных данных сервисом http://gilev.blogspot.ru/2012/11/blog-post.html и разумеется случился Инфостарт Евент 2012, на котором презентовали широко возможности инструмента http://youtu.be/3jOVKom0f1w
30 Demiurg
 
27.03.13
11:06
Примерно тогда же нас завалили вопросами - в чем "подвох" бесплатности, когда сервисы "станут монетизироваться".
Мы еще тогда заявили, что сервисы останутся бесплатными. Так что те кто не очень верили, могут убедиться, что подход в этом вопросе мы исполняем и не планируем в дальнейшем его менять.
31 Demiurg
 
27.03.13
11:10
в декабре 2012 - мы расширили сервис новыми возможностями:
появилась закладка с оценкой загруженности железа в момент исполнения запроса;

добавили закладку с апдексом, которая выполняет даже 2 функции:
1) показывает вклад запроса в общее замедление операции
2) для проблемных мест показывает текст запроса субд http://gilev.blogspot.ru/2013/03/1.html

добавили на таблицу ранжирования длительности запросов "вклад" ожиданий блокировок (из сервиса блокировок)
32 rs_trade
 
27.03.13
11:11
(0) в чем преимущество перед Data Collection?
33 Demiurg
 
27.03.13
11:11
(32) что такое Data Collection ?
34 Demiurg
 
27.03.13
11:15
тогда же в декабре 2012 провели вебинар, целиком его не получилось записать, но часть все таки попала - вот она http://youtu.be/aoDqFNzp6d8 - показана часть возможностей сервисов
35 rs_trade
 
27.03.13
11:15
(33) у ms sql сбор данных о производительности.
36 Demiurg
 
27.03.13
11:16
(35) ну ответ очевиден - виден контекст 1С прежде всего, ранжирование происходит не по запросам SQL, а по контексту 1с
37 Demiurg
 
27.03.13
11:21
продолжаю "вылазку в историю"
январь 2013 ознаменовался массовым приходом серьезных предприятий на наши сервисы, некоторые из них лежат в публичных референсах с использованием онлайн-сервисов, например http://goo.gl/oKCP5
38 rs_trade
 
27.03.13
11:24
(36) сервис показывает где тяжелый запрос находится в конфе 1с? что-то типа как у софт-пойнта?
39 Demiurg
 
27.03.13
11:25
февраль 2013 начался с еще одного расширения функционала - добавили временные метки для большего удобства, теперь можно выполнять например "исследования нагрузочного тестирования" быстро помечая нужные моменты времени "начало теста", "конец 1й итерации" и затем быстро использовать их в отборах
тогда же сделали рассказ о практическом применении и записали на видео http://youtu.be/nrCGWm-2jog
(правда звукозапись немного подвела :), но понять можно )
40 Demiurg
 
27.03.13
11:29
(38) софтпоинт берет деньги! этот сервис бесплатен
возможности сервиса описаны http://www.gilev.ru/querytj/, можно быстро посмотреть работу (ссылка на демо там же)
41 rs_trade
 
27.03.13
11:32
(40) тогда круть конечно!
43 Demiurg
 
27.03.13
11:32
февраль 2013 закончился еще одним небольшим улучшением фильтров для анализа http://gilev.blogspot.ru/2013/03/blog-post_20.html, но куда важнее что в феврале мы сделали обратную связь через форум  http://www.gilev.ru/forum/ и благодарны тем, кто советом и делом помогает нам улучшать этот инструмент!
44 Demiurg
 
27.03.13
11:39
благодаря советам пользователей, мы начали "учить" сервис очевидным моментам, например распознавать код с автоматическими блокировками http://gilev.blogspot.ru/2013/03/blog-post_12.html
правда не обошлось без смешного - сначало по ошибки конфигурацию на управляемых блокировках он понимал как "с автоматическими", потому что реструкторизация данных происходит с более высоким уровнем изоляции в транзакциях ;)
45 Demiurg
 
27.03.13
11:48
возвращаясь к вопросу (1)
еще с декабря многие заговорили о "как бы нам его портировать себе"
Это сложный технически вопрос, и на сколько сервис просто выглядит снаружи (во всяком случаи мы старались), на столько сложен он технически в плане обслуживания. Причем речь идет не о "сетупе", а именно об обслуживании.
Пока мы не разу "не обрезали" данные, конечно это больше спортивный интерес и вызов для нас, но уже несколько раз апгрейдили сервер. Зато уже переделывали алгоритм отображения данных.

На форуме http://www.gilev.ru/forum/viewtopic.php?f=3&t=19 прозвучала мысль об "офлайновой" эксплуатации системы как "передавать" данные на сервис в условиях когда на предприятии нет доступа в интернет.

К партнерской конференции 1С мы подговили такую возможность
http://gilev.blogspot.ru/2013/03/blog-post_14.html и теперь клиент может передавать данные через флешку/почту.
46 Baracus
 
27.03.13
11:49
Вот она благодарность. Указываешь им на их имиджевые упущения, а они посты трут.
47 Demiurg
 
27.03.13
11:50
(46) Если Вы хотите помочь нам в чем то, напишите на почту [email protected]. Если что то будет дельное, мы еще Вас и отблагодарим, ок?
48 Baracus
 
27.03.13
11:53
(47) ок!
49 Demiurg
 
27.03.13
12:08
Возвращаясь к исходной теме, как сервис может помочь в решении сложных проблем, описан "учебный пример" http://www.gilev.ru/forum/viewtopic.php?f=6&t=96 где
запрос

в терминах 1с

ВЫБРАТЬ
ВТ_Номенклатура.Номенклатура,
РегистрДляДемонстраций.Склад,
РегистрДляДемонстраций.Контрагент,
РегистрДляДемонстраций.Организация,
РегистрДляДемонстраций.Количество
ИЗ
ВТ_Номенклатура КАК ВТ_Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РегистрДляДемонстраций КАК РегистрДляДемонстраций
ПО ВТ_Номенклатура.Номенклатура = РегистрДляДемонстраций.Номенклатура

в терминах субд

SELECT
T1._Q_000_F_000RRef,
T2._Fld10068RRef,
T2._Fld10070RRef,
T2._Fld10071RRef,
T2._Fld10072
FROM #tt1 T1 WITH(NOLOCK)
LEFT OUTER JOIN _AccumRg10067 T2
ON (T1._Q_000_F_000RRef = T2._Fld10069RRef)

в случаи отсутствия "покрывающего" индекса имеет план запроса http://goo.gl/hAXQd

верхний уровень
|--Nested Loops(Left Outer Join, WHERE:([tempdb].[dbo].[#tt10].[_Q_000_F_000RRef] as [T1].[_Q_000_F_000RRef]=[first].[dbo].[_AccumRg10067].[_Fld10069RRef] as [T2].[_Fld10069RRef]))

ветка 1
|--Index Scan(OBJECT:([tempdb].[dbo].[#tt10] AS [T1]))

ветка 2
|--Clustered Index Scan(OBJECT:([first].[dbo].[_AccumRg10067].[_Accum10067_ByPeriod_TRN] AS [T2]))

где ключевым моментом является "сканирование" индекса - это плохо!

в случаи создания покрывающего индекса (в данном примере это индексирование измерения)
http://goo.gl/khW1K

Во втором случаи уже происходит операция INDEX SEEK - и это хорошо! Так как в примере выясняется что помимо скорости сканирование "лишних" записей делает "избыточную" область блокирования, которая увеличивает вероятность отказа ввода данных в систему из-за сообщения об ошибке на превышения таймату блокировки.

Таким образом, помимо основной цели - ускорять запросы решается задача устранения избыточных блокировок! Разумеется это также нас подводит к суровой необходимости "учиться читать планы запросов".
50 Demiurg
 
27.03.13
12:35
Есть одна тема о которой можно писать достаточно часто и много - это "безопасность облаков". Нам задают вопрос о "надежности и приватности" данных каждую неделю и это нормально.

Я бы разделил всю аудиторию на:

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

Прекрасно понимаю, что не все программисты (такой вопрос нормален и для директора и для менеджера, и возможно не все доверяют своим программистам) - но основной наш аргумент, посмотрите код и убедитесь сами. Именно по этой причине мы его и не закрываем - чтобы сделать прозрачность работы системы.
51 Demiurg
 
27.03.13
12:38
Какие данные отображаются в информационной системе наглядно можно посмотреть https://skynet.gilev.ru/QueryTJ/

Демо: учетная запись work без пароля.
52 Demiurg
 
27.03.13
12:58
Смотрю и коллеги из Софтпоинта тоже зашли на огонек "полюбопытствать", приветствую :)
53 Demiurg
 
27.03.13
12:59
Мне в привате задали правильный вопрос "что это вы все материальные блага и коммунизм рассказываете для других, а зачем вы для себя делали, ведь есть цуп?"
раскрою ответ, но зайду "издалека" (до вечера еще много времени :) )
54 Demiurg
 
27.03.13
13:02
Да, действительно, мне фирма 1С подарила лично ЦУП, за это им большое спасибо! Более того и у Раруса есть купленная версия. Да и многие клиенты сейчас пошли продвинуты и уже приходят с ЦУПом (т.е. уже купили в составе 1С:КИП). Но...
55 Demiurg
 
27.03.13
13:06
Свою деятельность по повышению производительности начинал сам. Тогда еще такого понятия как ЦУП или 1С:Эксперт не было. Поэтому моими инструментами были профайлер, отладчик ну и другие стандартные и всем знакомые инструменты.

Поскольку обнаруживать проблемные места в коде и улучшать в коде у меня стало получаться, это стало приносить деньги.
Ну а несколько лет назад уже работая в коллективе единомышленников стало очевидно, что с ростом потока "проектов" нужно и себестоимость работ снижать, и качество повышать за счет автоматизации рутинных моментов.
56 Demiurg
 
27.03.13
13:09
В какой-то момент моя деятельность из технической стала превращаться в руководство проектом, а затем и того меньше технической.
57 Demiurg
 
27.03.13
13:11
Если многие IT руководители только приблизительно знают как у них обстоят дела с производительностью, то для меня этот вопрос прозвучал в новом свете - а как обстоят дела у моих клиентов с производительностью? Т.е. вопрос не звучит про одного единственного клиента, а про всех сразу. При чем если раньше как технический специалист подключался к их информационной системе, то теперь это делают мои коллеги. Насколько сильно верить на слово надо людям - это философский вопрос имхо. Ведь есть к примеру стажеры :)
58 Demiurg
 
27.03.13
13:15
Есть еще два вопроса, на которые ЦУП не давал ответов:

1. Как мне осуществлять контроль качества работ по повышению производительности, выполняемых моей командой специалистов?
2. Верить заказчику и своим подчиненным на слово?
59 Demiurg
 
27.03.13
13:19
Если описывать формально потребности, то можно сказать так:

Нужно знать ход не одного проекта, а 10-15 проектов одновременно, и состояние загрузки семи сотрудников.
 
Необходимо обеспечить доступность/простоту представления информации, на основании которой принимаются решения.
 
Одновременно эту информацию должен видеть не только я, но и руководители со стороны Заказчика, на каждом из проектов.
60 Demiurg
 
27.03.13
13:33
Надо сказать, что меня не осеняло и ночью как Менделееву таблицы не снились.
В рамках проектов ЦКТП, которые мы делали с 1С, мы посмотрели сначало как это делают "другие".

Сотрудники "1С "для проектов "1С:ЦКТП" решили просто - всю рутинную работу по сбору данных делают партнеры и выгружают файлы на ftp сервер "1С" для последующего анализа.
61 Demiurg
 
27.03.13
13:34
Но даже такой вариант создает проблемы: много проектов -  много файлов.
62 Demiurg
 
27.03.13
13:34
Иногда результаты из "1С:Центр Управления Производительностью" весят порядка 50 Гб, перенос файлов - это долго и ДОРОГО (поверьте, время на копирование - это тоже себестоимость проекта).
63 Demiurg
 
27.03.13
13:36
Самое оптимальное решение - хранить все нужное в "централизовано". Кто то назвал бы это "облаком", не уверен, но не суть.
64 Demiurg
 
27.03.13
13:39
В августе 2012 года мы выполнили свой первый проект на нашем онлайн сервисе "Анализ долгих запросов".

С первого же проекта оценил преимущества:
 
1) Вижу всю необходимую информацию
2) Очень большая экономия времени (не надо ожидать параметров подключения куда-либо)
3) Все проекты в одном месте
4) Не надо помогать заказчику смотреть данные, они все это делают одновременно сами
65 Demiurg
 
27.03.13
13:40
Результат - проекты стали "на поток":

Мы получили значительное уменьшение себестоимости проектов (в 2-3 раза)

Заменили платный 1С:КИП (84000 руб.) на бесплатный облачный сервис

Уменьшили сроки (например, вместо 3х дней на сбор стало хватать одного дня)
66 Demiurg
 
27.03.13
13:42
Появились новые возможности:

- мы стали бесплатно делиться онлайн-инструментами
- пользователи помогают нам улучшать сервисы (см. http://www.gilev.ru/forum)
-лояльность клиентов возросла
67 Demiurg
 
27.03.13
14:12
Поскольку не бывает так что все сотрудники с одинаковой квалификацией или есть доступные ресурсы, иногда и сам снимаю корону и одеваю фартук и смотрю в сервисах на случаи, которые например раньше наши сервисы не фиксировали, коллективно их разбираем.
Мне нравится, что детализация запроса показывает информацию так, что там не видно имени пользователя и материал максимально "обезличен",т.е. удобно демонстрировать информацию для анализа.
68 Demiurg
 
27.03.13
14:17
Не думаю, что сервисы останутся в таком виде. Как говорится, аппетит приходит во время еды. Планы у нас наполеоновские :)

Если у Вас есть идеи, что будет полезно улучшить, пишите в наш  форум, ведь Вы первый кто от этого выиграет.
70 Cmyk32
 
27.03.13
14:28
Спасибо!
71 Волшебник
 
27.03.13
14:29
(0) Проблемы могут быть не только в запросах, но и в программном коде. Такие ситуации анализируются?
72 rs_trade
 
27.03.13
14:30
(71) а такое возможно? есть только наверное по шаблонам каким то искать.
73 Asmody
 
27.03.13
14:32
(72) учитывая, что 1Ска на каждый пук с объектом/ссылкой лепит запрос, да не один, (недавно обсуждали), вполне может быть
74 Никола_
Питерский
 
27.03.13
14:57
Мне кажется нужно на главной странице Вам прям написать, что если база не на управляемых блокировках, даже не пытайтесь что либо сделать, а с начала переводите на управляемые !!!
75 Никола_
Питерский
 
27.03.13
14:58
А есть случаи когда автоматический режим лучше управляемого, речь об блокировках !
76 Fragster
 
гуру
27.03.13
14:59
(75) какие случаи?
77 Никола_
Питерский
 
27.03.13
15:01
(76) случаи использования конфы(БД) 1С ?

Или 100% гарантировано, что использование управляемого режима лучше(с точки зрения производительности) чем автоматического в независимости от структуры/алгоритмов конфы и т.д. ?
78 Fragster
 
гуру
27.03.13
15:02
(77) это в (74)(75) вопрос, что ли, был?
79 Demiurg
 
27.03.13
15:02
(71) проблемы с производительностью могут быть не только в запросах или программном коде:
- оптимизировать можно бизнес-процессы
- обучить пользователя (не нажимать на все подряд)
- оптимизировать/изменить алгоритм
- оптимизировать код и запросы
- оптимизировать рекламенты по обслуживанию и настройки среды
- оптимизировать/сбалансировать железо

Сервис Анализа долгих запросов предназначен для анализа долгих запросов. По нашему опыту они составляют 80% проблем.

Сервис взаимодействует с другими сервисами - которые решают смежные задачи.
Конечно, какие то задачи сервисы не решают по очень простой причине - мы автоматизируем решение тех проблем, с которыми нам пришли реальные клиенты. Приведите клиента с новой проблемой, и мы сделаем инструментарий.
80 Никола_
Питерский
 
27.03.13
15:03
+(77) Скажем так, бывали ли в истории случаи когда после перевода на УБ стало на порядок хуже ?

(78) Ага типа того.
81 Demiurg
 
27.03.13
15:05
(74) Зачем, сервис при первом же обнаруженном запросе это и так скажет. Поясните пожалуйста мысль.
82 Demiurg
 
27.03.13
15:07
(75) управляемые блокировки требуют дополнительных накладных ресурсов и если этот механизм использовать не по назначению а лепить "потому что так рекомендуют гуру", то можно и навредить
но все решения фирмы 1с за последние годы переведены на управляемые блокировки, поправьте меня, если ошибаюсь
83 Fragster
 
гуру
27.03.13
15:10
(82) сдуру можно всё, что хочешь, сломать
84 Demiurg
 
27.03.13
15:11
(71) к примеру - взаимоблокировки - это не проблема долгих запросов, для нее есть http://www.gilev.ru/deadlock/ специализированный сервис
85 Demiurg
 
27.03.13
15:11
(84) полная карта публичных сервисов есть здесь http://www.gilev.ru/online/
еще есть "внутренние"... :)
86 Demiurg
 
27.03.13
15:13
Как взаимодействуют сервисы для обсуждаемого здесь сервиса Анализа долгих запросов показано на схеме http://goo.gl/JXmvc
87 Demiurg
 
27.03.13
15:15
Есть к примеру другой сервис http://www.gilev.ru/sqlsize/ - мы им неактивно пользуемся, а вот админы наших клиентов "любят" его, хотя это нам не понятно :)
88 Demiurg
 
27.03.13
15:20
(80) у нас такого не было в практике (хуже от упр. блокировок не становилось)
было обратное - мы апдекс внедрили на конфигурации которую не успели перевести в упр. режим, пришлось переделывать код с учетом "блокировок на диапазоны" механизма АПДЕКС (у нас теперь переключатель куда логировать - регистр или журнал регистрации)
89 Demiurg
 
27.03.13
15:22
(83) простой пример чрезмерного увлечения упр.блокировками - это наложить на запрос на чтение лишнюю область блокирования - это сервер не загрузит, но параллельность ошибочно легко ухудшит
чтобы в такие ситуации не попадать, делаем контрольные примеры, чтобы убедиться что блокируются только те данные, которые по логике должны блокироваться
90 Demiurg
 
27.03.13
15:27
(80) тут такая история вспомнилась - мы вообще решали проблему  с управляемыми блокировками - это хоть и косвенно делу относится, но все же

у управляемых блокировок тоже есть понятие эскалации блокировок (укрупнения)
если писать большие объемы данных (десятки тысяч строк) то легко получить такую проблему

если на субд можно попытаться заблокировать эскалацию http://www.gilev.ru/escalation/ , то на сервере 1С таких ключей нет - надо уменьшать в коде объемы данных за раз или бить транзакции где позволяет логика (т.е. не провоцировать условия укрупнения блокировки на сервере 1С)
91 Sammo
 
27.03.13
15:58
Планируется ли неонлайновый сервис? По разным причинам онлайн может быть невозможен.
92 Demiurg
 
27.03.13
16:02
(91) а по каким причинам? чем Вас софтпоинт или ЦУП от 1С не устраивает?
93 freddy_kind
 
27.03.13
16:12
(0)чей то ошибку выдает, не могу создать - Logcfg.xml, пишет возможно нет доступа, я сам ручками создаю там нормально, он откуда его пытается создать, под какими правами не пойму?
94 Demiurg
 
27.03.13
16:17
(93) ответил в http://www.gilev.ru/forum/viewtopic.php?f=3&t=115 - пишите пожалуйста туда
эта ветка не предназначена для техподдержки, ее цель данной ветки - проинформировать о бесплатных возможностях по диагностики узких мест в коде.
95 Sammo
 
27.03.13
16:22
(92) ЦУП возможно будет закуплен. Вопрос раасматривается.
А причина - нет физически интернета. И не будет в разумные сроки.

P.S. Кстати, никогда не сталкивались с банками, например, где бывают особо интересные политики по доступу в интернет :)
96 Demiurg
 
27.03.13
16:29
(95)
Наш сервис сделан прежде всего для упрощения нашей работы (я делаю вывод что Вы ветку целиком не читали). Предпочитаем решать вопросы по мере их поступления.

Можем и ЦУПом диагностику сделать, и в рамках 1С:ЦКТП (фирму 1с привлечь). Утром задача, вечером стулья :)
97 Demiurg
 
27.03.13
17:11
В более-менее крупных IT-департаментах бывают "второстепенные" задачи. Я их называю "перевод стрел". Выглядит это так: Аудит производительности проводится с целью "оценить кто виноват в медленной работе 1С — программист или сисадмин?". Это конечно забавно :)

Тем не менее, это несложно сделать с помощью двух сервисов - анализа долгих запросов и анализа загруженности оборудования http://www.gilev.ru/hardware/.

Вторым сервисом оценивается загруженность оборудования.

Если железо перегружено, то прежде всего надо задаться вопросом: а как давно оно перегружено. Что сделал админ, чтобы повлиять на эту ситуацию. Есть ли бюджет на апгрейд мощностей.
Отсюда вытекает много других вопросов: «как, где, почему…» и т.д.

Вопрос финансовой состоятельности в маленьких компаниях по поводу апгрейда железа несерьезен, так как платить регулярную зарплату программисту за оптимизацию кода все равно дороже. Если Вы так не думаете — не делайте поспешных выводов. Ответьте на вопрос: как часто в программе изменяется код? Может ли эта правка ухудшить скорость? Может ли ухудшить скорость «типовое» обновление?

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

Однако что же делать крупным компаниям? Крупным компаниям тоже есть смысл инвестировать железа. Будете смеяться, но в них не считают уже как следует деньги и получается, что все равно выгодней купить железо. (Не всегда конечно).

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

Бесплатный онлайн-сервис Анализа долгих запросом, который можно назвать «Доказательство, почему виноват программист», а точнее — сервис показывает все долгие запросы, которые существуют на сервере СУБД, и их общий вклад в замедление системы. Это означает, что теперь злобный сисадмин  может воспользоваться на http://www.gilev.ru/services/online бесплатным сервисом «Анализ долгих запросов» и доказать, что программисту есть над чем «почесать репу»…
:)

Ради справедливости надо сказать, что мы видели исключения. Есть мнение что «при блокировках железо не бывает загружено», а мы видели обратное. И вариант «если скажем процессоры загружены под 100% и к ним очереди, то надо их апгрейдить» тоже при хорошем бюджете можно решить например путем реализации новым алгоритмом кода.
Но все же в жизни такие сложные варианты у Вас не возникнут, в 80% случаях эти закономерности работают.
98 Demiurg
 
27.03.13
17:13
Есть один наглядный пример, демонстрирующий "бесплатную схему" предоставления доступа к инструменту для наших клиентов (в частности).

Чаще всего на рынке программ на базе «1С» вы не найдете бесплатных продуктов.

Вот скажите те, кто «автомобилисты», когда вы приезжаете на сервис, вы покупаете «стенд для диагностики авто»? Правильно, вы платите за услуги по диагностике, а стенд не покупаете.

Поэтому поэтому, когда наших сервисов для диагностики достаточно, то сами сервисы мы не продаем. Продаем наши  услуги по диагностике.
99 Волшебник
 
27.03.13
18:02
Как считаешь, когда надо начинать заниматься оптимизацией: когда уже начало неприемлемо тормозить или ещё на этапе разработки архитектуры продумывать потенциальные узкие места и строить архитектуру "с запасом"?
100 Demiurg
 
27.03.13
18:02
(99) ну твою позицию я знаю - по факту проблем )
101 Волшебник
 
27.03.13
18:03
(100) А твоя позиция?
102 Demiurg
 
27.03.13
18:04
Имхо это слишком общий вопрос: если есть подозрения что проблемы будут, то можно соломку подстелить. Обычно чем больше пользователей, тем больше соломы )))
103 Demiurg
 
27.03.13
18:05
Константин Рупасов говорил на курсах по 1С:Эксперт - крупные базы не бывают без проблем )))
104 Demiurg
 
27.03.13
18:06
Станислав, скажу за себя - наши сервисы "сами себя смотрят" :)
105 Fragster
 
гуру
27.03.13
18:06
(103) а когда начинаются "крупные"?
106 Demiurg
 
27.03.13
18:07
(105) думаю догадываетесь у кого это спрашивать, да? :)
107 Demiurg
 
27.03.13
18:16
(101) немного подумав...

Общий смысл инструмента в режиме 24х7 это "упреждение" проблем до того, как они стали критичными.

Но даже факт наличия критичных проблем тоже требует мониторинга.

Конечно можно пофлудить "что такое критичные проблемы" :), но думаю кому надо понимает о чем речь.

Прямо сейчас мы проктикуем "апдекс" и "статус" в режиме 24х7 - они не создают нагрузки на систему (кушать не просят).

Сервис анализа долгих запросов чтобы минимизировать нагрузку - увеличиваем временной порог. Скажем до 60 секунд его можно поднять. Если другие сервисы сигнализируют превышение порогов норм, то прямо сейчас мы вручную понижаем временной порог анализа запроса, но ты подсказал хорошую мысль, надо этот момент автоматизировать. Спасибо за идею!
108 rs_trade
 
27.03.13
18:28
(99) На этапе разработки архитектуры продумывать потенциальные узкие места, это если только в тех компаниях кто нетленки ваяет. В комерч. организациях такое очень редко возможно.
109 rs_trade
 
27.03.13
18:29
(99) А так на этапе проектирования конечно. Хорошие данные и плохой код, работают лучше чем наоборот © не помню кто
110 Demiurg
 
27.03.13
19:03
:)
111 Demiurg
 
27.03.13
21:53
А завершить этот день хочу еще одним показательным примером за сегодня - Волшебник как в воду глядел - еще один клиент не сделал пересчет итогов (проблема нулевых записей), которая легко обнаружилась нашим сервисом http://www.gilev.ru/sqlsize/  - который легко находит такие факты.
112 Волшебник
 
28.03.13
13:43
(111) У меня глаз алмаз!
113 Demiurg
 
28.03.13
13:57
ввели данные за "начало 2001", потом нашли, перепровели текущей датой, а итоги за эти годы "насчитались" )
размер итогов в 90 раз больше размера основной таблицы регистра
114 Demiurg
 
28.03.13
21:06
Прочитал цитату "внизу" мисты:
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки - вот настоящая работа.

Подумалось - а мы ищем много сволочных и маленьких и не очень ошибок - это каторга? :)))
115 rsv
 
28.03.13
21:13
(0) Правильно ли я понял что ключевое во всем этом... это текстовик технологического журнала ?
116 rsv
 
28.03.13
21:16
+(115) По ходу так и есть ... нет текстовика ... нет и анализа.
117 Demiurg
 
28.03.13
21:18
(115) да, инструмент реализует обсчет и визуализацию ТЖ
118 Волшебник
 
28.03.13
21:21
(114) да, каторга
119 Demiurg
 
28.03.13
21:22
немного подумав...

только два сервиса так делают:
http://www.gilev.ru/status/ - анализ событий (по ТЖ)
http://www.gilev.ru/querytj/ - анализ долгих событий

не используют вообще
http://www.gilev.ru/hardware/ - контроль загруженности оборудования
http://www.gilev.ru/apdex/ - статистика длительности операций

остальные используют не только ТЖ
120 Demiurg
 
28.03.13
21:25
(118) рекламный слоган: У Вас есть каторжная работа - заберем :)))
121 Demiurg
 
28.03.13
23:15
посмотрел статистику пользования сервисом за последние два дня (сколько существует эта ветка), прибавилось 15 пользователей

было бы интересно услышать впечатление о сервисе (можно сюда или в почту или в скайп, как удобней)
122 Волшебник
 
28.03.13
23:20
(120) В качестве рекламного слогана сойдёт, но я бы не советовал прописывать это в договоре.
123 Demiurg
 
28.03.13
23:26
(122) Сейчас такие заказчики пошли: "какая разница что-то в договоре написано, мы же платим деньги, значит мы решаем за что...". Только хорошо сделанная работа помогает  :)))
124 Magister
 
29.03.13
03:55
(18) На Postgres я запускал совместно с Вячеславом. Чуть дорабатывали клиентскую часть, возможно и серверную (этого я не знаю).
Показывает длинные запросы, а вот с планами - беда.

P.S. Себе такой сервис сделать, с поддержкой Postgres, что ли... ресурсов правда нет на открытие в общий доступ :(
125 Magister
 
29.03.13
03:57
Чуть оффтопа.
По-моему Postgres недооценен в плане работы с 1С. Уже вот к 100 пользователям подбираемся, пока худо-бедно справляется. Правда железо серьезное, это тоже немаловажно.
126 Odavid
 
29.03.13
11:03
(36) "виден контекст 1С прежде всего, ранжирование происходит не по запросам SQL, а по контексту 1с"
а так нельзя определить?
(71) "Такие ситуации анализируются?"
как Вы себе представляете анализировать работу 1сного кода?! :)
(82)"но все решения фирмы 1с за последние годы переведены на управляемые блокировки"
это какие, например?
(99)" или ещё на этапе разработки архитектуры продумывать потенциальные узкие места и строить архитектуру "с запасом"?"
как можно в 1С спрогнозировать накопление данных в той или иной выборке?! Только опытным путем.
Все упирается - в невозможность 1С нормально обработать большое количество данных.
(103)"крупные базы не бывают без проблем"
Правильно Константин говорил, поэтому и осторожно относится ко всем "оптимизациям" обработки данных в 1С.
Нельзя угадать, где что вылезет.
(125)"По-моему Postgres недооценен в плане работы с 1С."
Судя по работе с 1С - переоценен. Такое количество ошибок, эксклюзивных для данной "СУБД" - это еще надо придумать, как и где словить.
"Уже вот к 100 пользователям подбираемся", моэно и тысячу в справочнике завести, но количество обрабатываемых данных от этого не увеличится.
127 Demiurg
 
29.03.13
11:50
прошу прощения, я сегодня "в полях", вечером постараюсь подробно ответить на все комментарии
128 Odavid
 
29.03.13
12:51
(127) я бы вот хотел получить ТЕОРЕТИЧЕСКОЕ обоснование на заданные вопросы :)
Т.е. суть (смысл) реализации.
Если Вы опять уйдете в "это закрытая информация", хотя о практической части речи не идет - тогда понятно :)
129 rs_trade
 
29.03.13
14:22
Я не понял, ключ базы, он для одной только базы? Или это как ключ клиента, и баз может быть несколько?
130 Demiurg
 
29.03.13
15:43
(124) основной движущей силой бесплатной раздачи являются наши коммерческие проекты, т.е. это инструментарий созданный в результате оплаченных работ
фактически мы с каждого проекта немного тратим на развитие бесплатного инструментария

НО, поскольку у Вас редкая (для нас) ситуация, мы готовы предложить такой вариант, Вы поможете нам сделать постановку задачи (так как Вы видите реальные условия), а мы ее реализуем. Поскольку ТЖ заявлен собирать планы запросов для постгреса, нам фактически нужна помощь вникнуть в разницу собираемых планов и либо преобразовать формат, либо расширить. Если Вам интересно это, пишите - давайте "сделаем это" :)
131 Demiurg
 
29.03.13
15:45
(129) Учетная запись для http://www.gilev.ru/querytj/ позволяет мониторить не одну базу как это делает ЦУП, а все информационные базы на этом сервере. В этом преимущество нашего инструмента.
132 Demiurg
 
29.03.13
15:48
(128) суть этой ветки - проинформировать о бесплатных возможностях сервиса

ваше "я" и "хочу получить" - интересно Вам, но не другим

учитывайте это в своей риторике, мы все таки не рекламируем как софтпоинт платный продукт, а делимся (дарим) наши знания, конвертированные в технологии, можно и спасибо сказать
133 Magister
 
29.03.13
15:49
(126) Я не про справочник говорил, а про реальных одновременно АКТИВНО работающих работающих пользователей.
И объемы, поверьте, немаленькие.

Ну а про ошибки Postgres... и как мы тогда живем, что не наблюдаем их вот уже больше двух лет? Загадка :)

(130) Хм... вы лично мне отвечали, что планы запросов для Postgres делать не будете, по крайней мере бесплатно. Ваша позиция изменилась?

А проблема там, на самом деле, в том, что планы запроса собираются, но их формат отличается от формата MsSQL, и ваш парсер его не понимает.

Сейчас пока что мы только APDEX используем, от сбора длинных запросов вынуждены были отказаться - т.к. при этом не работало обновление конфигурации БД (глюк платформы). Впрочем, возможно это уже и исправлено, на последних платформах не проверял.
134 Demiurg
 
29.03.13
15:50
(133) наша позиция изменилась, но не сильно, мы хотим чтобы вы  тоже поучаствовали в этом проекте, как заинтересованное лицо
можем гарантировать, что ваш блок нами продаваться не будет
135 Demiurg
 
29.03.13
15:53
(126) "а так нельзя определить? " нельзя, но Вы можете попробовать и убедиться лично
136 Demiurg
 
29.03.13
15:58
(126) "это какие, например?" прямо сейчас посмотрел до чего смог "дотянуться" - УТ 11, Бухгалтерия Предприятия КОРП точно на управляемых блокировках. А что, для Вас это новость?
137 Magister
 
29.03.13
16:01
(134) Не совсем понял, что именно от нас требуется. Доработать клиентскую часть, чтобы она преобразовывала план запроса в формат, аналогичный MsSQL? Или доработать серверную часть? Но она ведь у вас. Или что-то иное?
Можем перейти в почту, адрес у вас должен был остаться.
138 Demiurg
 
29.03.13
16:03
(126) "как Вы себе представляете анализировать работу 1сного кода?! :) " - сам код анализировать влоб очень сложная задача, но можно идентифицировать строки, которые "дергают много данных", "выполняются слишком часто и суммарно набегает время", "исполняют долгие запросы", "отъедают много памяти на сервере 1с и не очищают" и т.п. и т.д.
Другое дело что эта ветка посвящена уже существующим возможностям. Планами мы делится будем на инфостарте 2013. Покупайте билет. Доржи, цени! :)
139 Demiurg
 
29.03.13
16:03
(137) давайте в скайп или почту (мои в профиле)
140 Demiurg
 
29.03.13
17:12
(137) см. почту, если не ошибся адресом
141 Magister
 
29.03.13
17:22
(140) не ошибся, я уже и ответил
142 Demiurg
 
29.03.13
17:26
Возвращаюсь к исходной теме: как найти проблемный запрос 1с.
Сервис по умолчанию показывает:
- контекст 1с, т.е. строку кода с чем то вроде Запрос.Выполнить()
- запрос SQL к субд
- план запроса
- параметры запроса

но запросы бывает не всегда просто из SQL назад "сопоставить с запросом 1с", так как они могут собираться динамически и это "неточный" процесс

чтобы решить эту проблему, наш сервис "АПДЕКС" http://www.gilev.ru/apdex/ по мимо классического применения полезен вот чем

для обнаруженного проблемного запроса в http://www.gilev.ru/querytj/ есть закладка "параметры апдекс"
в классическом использовании закладка показывает процент времени исполнения запроса от времени операции, замеряемой по апдексу
это позволяет оценить, насколько потенциально можно ускорить  всю бизнес-операцию, если ускорить этот запрос

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

визуально это можно посмотреть здесь http://gilev.blogspot.ru/2013/03/1.html
143 Demiurg
 
29.03.13
17:38
(142) можно сказать, что возможность видеть запросы 1с - это тоже преимущество перед платными продуктами
144 Demiurg
 
30.03.13
15:42
периодически на партнерском форуме возникают вопросы посмотреть размер не просто базы, а таблицы, проранжированные по размерам

не надо упрашивать разработчиков платформы - есть бесплатная возможность в http://www.gilev.ru/sqlsize/
145 Demiurg
 
30.03.13
15:44
вот примерт такой ветки http://partners.v8.1c.ru/forum/thread.jsp?id=1132703
хотя казалось бы... :)
146 Demiurg
 
30.03.13
16:51
Тема v8: О чем молчит 1С (хранение оборотного регистра) также решается в http://www.gilev.ru/sqlsize/ , можно время от времени без особых усилий смотреть на количества строк чтобы принять решение нужно ли что то предпринимать для решения (ТиИ и т.п.)
147 expertus
 
30.03.13
17:04
(0) подскажи плз, какие проекты решались вашей командой:
- максимум пользователей
- макс объем ИБ
- макс количество распределенных точек, с указанием периодичности обновления
?
148 Demiurg
 
30.03.13
17:31
(147) мы не можем публиковать "максимумы", так как большие проекты практически всегда закрытые

максимальные параметры наши проектов существенно больше опубликованных другими фирмами в открытых источниках, есть уверенность, что по многим параметрам мы сделали самые крупные проекты в России и не только

НО... ветка не о том, какие мы молодцы, а про бесплатные инструменты, а рассказать про наши успехи мы готовы в http://www.gilev.ru/forum/viewforum.php?f=14 (там легкая авторизация, поддерживаются социалки)
150 Demiurg
 
30.03.13
21:20
Хочу рассказать об особенностях клиентской части сервиса, которая лучше поможет понять масштабы, с которыми сталкивались. С картинками эту заметку можно прочитать здесь http://gilev.blogspot.ru/2013/03/blog-post_30.html
151 Demiurg
 
30.03.13
21:23
Проще говоря, нам пришлось решать очень интересную задачу - а именно обсчитать запросы 5000 пользователей единой информационной базы 1с (не распредленка) http://4.bp.blogspot.com/-sUjlQFgY-ww/UVbsLX0WUII/AAAAAAAAEF0/qGqTXNo1poc/w497-h373/%25D0%259A%25D0%25BE%25D0%25BD%25D1%2581%25D0%25BE%25D0%25BB%25D1%258C+%25D1%2581%25D0%25B5%25D1%2580%25D0%25B2%25D0%25B5%25D1%2580%25D0%25BE%25D0%25B2+-+5474+%25D1%2581%25D0%25B5%25D0%25B0%25D0%25BD%25D1%2581%25D0%25B0+%25D0%25BA%25D1%2580%25D0%25B0%25D1%2582%25D0%25BA%25D0%25BE.jpg . В результате этого проекта появилась "галочка" обсчитывать логи "многопоточно", так как на таких масштабах логи это гигабайты логов, которые попадают к нам через веб-сервис. Поверьте, один обсчет таких логов - это "увлекательное занятие" :)
152 Demiurg
 
30.03.13
21:24
эх, гугль ужасно ссылки формирует, жуть...
153 Demiurg
 
31.03.13
16:21
всех с международным днем бэкапа :)

http://www.gilev.info/backupday
154 Demiurg
 
31.03.13
16:22
правильная ссылка http://www.gilev.info/2013/03/blog-post_31.html
155 Demiurg
 
01.04.13
19:47
(141) проанализировали присланные материалы, спасибо
в ближайшие недели добавим возможность смотреть планы запроса с постгреса
156 ПесняПроЗайцев
 
01.04.13
20:36
(0) 500 зарегистрированных тестеров вне компании. Так?
метки.
план в постгри.

С 1 апреля! )
157 Magister
 
01.04.13
20:50
(155) Это хорошо, спасибо :)
158 Demiurg
 
01.04.13
20:54
(156) ветка начата не 1го апреля
159 Demiurg
 
02.04.13
03:40
желающие попрактиковаться в чтении планов запросов - добро пожаловать в ветку http://www.gilev.ru/forum/viewtopic.php?f=5&t=125
160 _Atilla
 
02.04.13
21:16
Вопрос автору
1. «1С-Рарус» — совместное предприятие фирм «1С» и «Рарус», созданное в 1994 году. «1С-Рарус» вроде дочки самой 1С. правда??
161 Demiurg
 
02.04.13
23:37
(160) http://rarus.ru/company/about/history/ достаточно подробно написано, зачем подобные вопросы задавать в этой ветке, гуглить не пробовали?
162 _Atilla
 
03.04.13
02:17
(161) Спс
1995 год
Получение предприятием «Рарус» статуса дистрибьютора фирмы «1С» - 1С: Дистрибьютор.

Расширение штата сотрудников до 15 человек.

Принято решение о создании ООО «1С-Рарус» - совместного предприятия фирм «1С» и «Рарус» с равными долями в уставном фонде у каждой стороны.

==============================================

На сайте http://www.gilev.ru/kb/

Рубрика: MS SQL Server, Администрирование, тюнинг    
MS SQL Server 2000 vs 2005 сравнение продуктов для целей эксплуатации 1С:Предприятия 8

слайд № 11
ЗАО ЭНЕРГОПРОМ МЕНЕДЖМЕНТ более 400 польз УПП
ГК Вестер объем базы около 800 ГБ
МТС расчет зп на десятки тысяч сотрудников
Евросеть более 6000 розничных точек

Вопрос
2. Напр возьмем МТС. расчет зп на десятки тысяч сотрудников.
Как это понимать? "Ура, мы смогли в кривой платформе и кривой конфигурации смогли посчитать десятки тысяч зп"
Или "Ура, мы смогли посчитать зп на 386 или 486 машинах"?

3. или другой пример ГК Вестер.
Интересно, в этой базе реальный объем данных какой?
Если побайтно посчитать объем спр + доков + и РС...
163 Demiurg
 
03.04.13
02:58
(162) http://www.v8.1c.ru/news/newsAbout.jsp?id=1568 было уже достаточно давно, если мне не изменяет память то где то в 2007  привлекался на проект, в те времена база была под террабайт, но имхо если уж говорить об объемах данных, с тех пор у нас были проекты и на более крупные объемы
164 Demiurg
 
03.04.13
03:01
МТС по причине подписанного NDA обсуждать не будем, хотя проект очень интересный был.
165 Demiurg
 
03.04.13
03:02
Про евросеть могу сказать просто - она работает :)
166 Demiurg
 
03.04.13
03:08
Давайте сделаем так, если Вы серьезно настроены, хотите обсудить реальные проекты и предложить нам что то также, давайте встретимся на территории 1С-Рарус к примеру.
Контакты есть в личке.
Сюда обсуждать не относящие к теме вопросы (см. заголовок) не надо.
167 Demiurg
 
03.04.13
14:14
Обновили сервис "мониторинга производительности информационной системы" http://www.gilev.ru/apdex/
168 Demiurg
 
03.04.13
14:16
(133) (156) добавили возможность работы с СУБД Postgres, в том числе видеть планы запросов.
169 Demiurg
 
03.04.13
15:14
170 Злопчинский
 
03.04.13
15:31
171 Demiurg
 
03.04.13
16:01
(170) Там видимо успели порезать ветку, так как не очень точно  понятна потребность "для каких задач нужен ТЖ", но если говорить про запросы, то да, наши сервисы этот вопрос закрывают,
и даже если речь идет просто о "событиях" происходящих с участием так или иначе сервера 1С (возникает нехватка лицензий, объектная блокировка при попытке отредактировать документ двумя пользователями и т.п.) то все это можно увидеть в сервисе "Анализа событий ТЖ" http://www.gilev.ru/status/
172 Demiurg
 
03.04.13
16:06
Даже больше того скажу, если Вы видите что какую то Вашу потребность текущие сервисы не закрывают, Вы скажите нам (например в скайп gilev_slava). Есть высокая вероятность что мы либо уже этот функционал делаем, либо можем сделать. Несколькими постами выше можно убедиться в этом на примере поддержки нашими сервисами Postgre.
173 _Atilla
 
03.04.13
23:47
(68) Не думаю, что сервисы останутся в таком виде. Как говорится, аппетит приходит во время еды. Планы у нас наполеоновские :)

Можете немножко рассказать о ваших планах?
175 Волшебник
 
04.04.13
00:43
(0) Может сделать статью в Книге Знаний?
176 Волшебник
 
04.04.13
00:44
177 Demiurg
 
04.04.13
02:46
(176) готов сделать статью, но это надо "устаканить размазанное здесь на две сотни постов", чешу затылок :)
178 Demiurg
 
04.04.13
02:51
(173) немножечко могу

разделить сервисы на:
1) пассивно смотрящие и позволящие делать анализ человеку - они будут бесплатные постоянно
2) корректирующие параметры системы (с разрешения администратора системы)

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

для начала...
179 Злопчинский
 
04.04.13
04:09
Три категории должно быть
.
3. Сделать всё.
.
;-0
180 Demiurg
 
04.04.13
14:34
)))
182 Magister
 
04.04.13
23:04
(167) А можно подробнее, что изменилось?

(168) Спасибо, всё работает.
Правда в платформе есть глюк неприятный (при включенном сборе длинных запросов не работает обновление конфигурации БД), так что постоянно держать его не можем.
183 Demiurg
 
05.04.13
01:24
(182) Расширена инструкция http://www.gilev.ru/setupapdex/
описанием возможности логирования запросов (отчет плюс закладка показатели апдекс в http://www.gilev.ru/querytj/)

Нам понравилась удобная возможность видеть рядом запрос 1с и субд (с планом). Плюс для динамически формируемых запросов используя статистику исполнения можно увидеть разницу в поведении.
184 andreynikus
 
05.04.13
02:18
Вячеслав, опишите пожалуйста основные преимущества вашего сервиса перед ЦУПом, помимо цены конечно :)
185 Demiurg
 
05.04.13
02:53
(184) см. (5)
- показывает запросы платформы (ЦУП не показывает)
- сбор происходит по всем информационным базам сервера (не зависимо от того где субд)
- использует только Технологический Журнал, COM-соединения с базами и других подключений не имеет (в отличии от ЦУП)
- логины и пароли для мониторинга информационных баз не требует и не подключается
- в серверной части можно посмотреть фильтром конкретную базу, а также можно оценить код всех информационных баз посовокупности
186 Demiurg
 
05.04.13
02:57
(184) см. (131) анализирует все информационные базы на сервере  1с

также выделю наличие возможности общаться напрямую с нами (разработчиками) и высказывать пожелания (часть из них мы уже реализовали, часть сейчас в разработке)

отличительная возможность - это видеть тексты запросов 1с рядом с запросами SQL, контекстом кода для для "особо" подозрительных мест - за счет интеграции с апдекс.
187 Demiurg
 
05.04.13
03:01
быстрее обсчет собранных данных
188 Demiurg
 
05.04.13
03:02
выдерживает работу "более" высоконагруженных систем
189 Demiurg
 
05.04.13
03:04
имеет возможность получить больше детализирующей информации для проблемного запроса (имена таблиц, количество строк в них, дефрагментацию и т.п.)

показывает рядом с запросом превышение норм загруженности железа
190 Demiurg
 
05.04.13
03:06
требует меньше внимания по контролю места на жестком диске под логи ( в результате падения rphost "не теряются сессии сбора данных" )
191 Demiurg
 
05.04.13
03:10
не нужно хранить гигабайта данных логов - место на диске "забивается" на нашем сервере

наш сервис больше приспособлен для мониторинга 24х7
192 Demiurg
 
05.04.13
03:13
более простая и легкая установка
меньше трудозатрат на обслуживание
доступен везде где есть интернет
193 Demiurg
 
05.04.13
03:17
не надо делать подписку на итс чтобы получить обновление
194 Demiurg
 
05.04.13
03:25
не для всех преимущество,но все же - при настроенных самостоятельно сервисах скидка на наш аудит составляет 30 000 руб.
195 andreynikus
 
05.04.13
04:04
Особенно радует фишка с сопоставлением запросов и возможность видеть загрузку железа в момент запроса.
Спасибо за инструмент.

"анализирует все информационные базы на сервере 1с"
Ну тут преимущество довольно спорное
Зачем мне собирать данные с других баз если "тормозит" только одна?
А если баз много, для тестов и прочее.
Будет много лишних логов и мало места на диске и т.д.
Возможно, было бы более гибким решением сделать выбор, собирать данные по каким-то конкретным базам или по всем
196 andreynikus
 
05.04.13
04:10
(168) Только сбор плана в Oracle не включайте, все встанет колом :)
Не по вине 1с кстати.
Oracle почему-то очень не охотно расстается со своими планами.
Хотя может сейчас уже поправили
197 Demiurg
 
06.04.13
00:04
(195) есть мнение, что есть долго выполняемые запросы в других базах помимо основной, то они отъедают ресурсы, которые могли быть использованы для основной базы
198 andreynikus
 
06.04.13
00:42
Да, но ведь обычно разработчик точно знает какая база "тормозит
, и чаще всего дело не в ресурсах, а в коде.
Так зачем собирать лишнюю информацию?
Например, если у меня 10 средненагруженных баз на сервере и я включу тж на сбор информации по запросам, думаю серверу 1С придется туго.

Я лишь решил указать на недостатки вашей системы, и сделать более гибкую настройку.

Ну как говориться дело ваше
199 Demiurg
 
06.04.13
10:27
(198) если в десяти базах есть к примеру аналитические запросы, каждый из которых длится по две минуты, а суммарно это набегает на 20 минут, то устранив их, мы высвобождаем существенное количество аппаратных ресурсов под основную базу
200 Demiurg
 
06.04.13
10:33
Если при сборе данных ставить порог к примеру в 18 секунд, это не нагружает сервер, но видны все проблемы.
201 Sorm
 
06.04.13
10:36
(0) Сервис - это хорошо, но в итоге все так или иначе упирается в анализ запросов или настройки сервера, что можно произвести и без сервиса.
202 Demiurg
 
07.04.13
08:21
Как показывает практика,  прежде чем оптимизировать запрос,  нужно оценить его "вклад" в общее замедление. Один запрос в 500 секунд выполняющийся раз в неделю может быть мелочью по сравнению с двухсекундным запросом, который выполняется каждым пользователем раз в минуту. Вручную подобную задачу не сделать на сотне пользователей, либо  уйдет очень много времени.
203 TormozIT
 
гуру
08.04.13
02:50
Долгие запросы то легко ловить, а вот быстрые высокочастотные намного сложнее. Техножурнал здесь может выступать лишь как вторичный инструмент, т.к. без предварительной разведки (средствами СУБД) им придется собирать все запросы без фильтрации. Думаю всем понятно, какие это объемы и какой удар по производительности сервера приложений.
204 Demiurg
 
08.04.13
15:34
(203) есть большие сомнения что надо оптимизировать секундный запрос
что за задача?
скорее тогда алгоритм насилует систему большим количеством ненужных запросов из вашей логики
такое может быть если например рефреш списков каждые 10 секунд  поставить
205 TormozIT
 
гуру
08.04.13
15:41
Имел в практике реальные случаи, когда запросы менее 1сек заваливали I/O так, что дисковая очередь долгое время была значительной. И причина даже не в кривом коде, который с большой частотой выполняется запрос, а например в количестве параллельно выполняемых потоков (сеансов) выполняющих такой код. В наших случаях все крутилось вокруг загрузок данных из внешней системы.
206 Demiurg
 
08.04.13
15:45
ну т.е. льете в кучу потоков, провоцируете ожидания на блокировках и ожидания ресурсах оборудования, а ответ хотите увидеть в плане запроса?
для этого больше подходят
http://www.gilev.ru/latch/ - для одной базы
http://www.gilev.ru/sqlsize/ - для одной базы и сервера (там и смотрите типы ожиданий)
207 Бертыш
 
08.04.13
16:31
Добрая тема
208 Demiurg
 
08.04.13
16:45
(205) прямо сейчас сервис http://www.gilev.ru/wp-content/uploads/2013/02/Снимок83.png обобщенно показывает процент вклада каждого типа ожидания  ( в том число IO ), но в ближайшем будущем сделаем "раскладку" в виде кода 1с
209 TormozIT
 
гуру
08.04.13
20:05
Что за действие (SDBL) HoldConnection?
210 Demiurg
 
08.04.13
20:23
(209) ответил в ветке http://www.gilev.ru/forum/viewtopic.php?f=9&t=165
просьба технические детали обсуждать там, тут ветка о бесплатных возможностях
211 Demiurg
 
08.04.13
21:25
Для тех кто хочет "пропитаться" кухней оптимизации 1с, мы начали серию "коротких" заметок, о том какие задачи нам приходится решать при обслуживании сервисов "изнутри" http://www.gilev.info/2013/04/gilevru.html
212 TormozIT
 
гуру
08.04.13
21:37
(211) Пропитался чуток, ждем продолжения.
213 Demiurg
 
09.04.13
12:22
214 Demiurg
 
09.04.13
14:26
помогли решить проблему с взаимоблокировок http://partners.v8.1c.ru/forum/thread.jsp?id=1134033
с помощью сервиса http://www.gilev.ru/deadlock/
215 Asmody
 
09.04.13
15:27
Вячеслав, тут пытаемся воспользоваться чудо-сервисом, заходим под моей учеткой на QueryTJ, там, где "Информационная база" ничего не выбирается. Хотя клиентская часть чего-то там вам регулярно сливает.
216 Demiurg
 
09.04.13
15:42
(215) зарегистрированную учетку вижу, переданных данных нет за все время существования учетки, совет по настройке сервиса дал в ветке http://www.gilev.ru/forum/viewtopic.php?f=3&t=166 (просьба техническую часть обсуждать там)
217 Demiurg
 
10.04.13
21:00
продолжение истории http://www.gilev.info/2013/04/gilevru_4064.html
218 Demiurg
 
11.04.13
12:21
продолжение истории http://www.gilev.info/2013/04/gilevru_10.html
219 Demiurg
 
12.04.13
00:35
220 Demiurg
 
12.04.13
20:24
решение некоторых технических вопросов при настройке сервиса разобрано в http://www.gilev.ru/forum/viewtopic.php?f=3&t=65
221 Demiurg
 
15.04.13
17:12
ну вот мы и дожили до "пределов" сервера (сегодня достигли ограничения по сети),
что то как то быстро этот момент наступил...

по результатам решения отрапортуемся в блоге )
222 Волшебник
 
25.04.13
12:28
(221) Может сетку гигабитную протянуть?
223 Mihenius
 
26.04.13
15:25
Я правильно понимаю что инструменты:

http://www.gilev.ru/hardware/ - контроль загруженности оборудования
http://www.gilev.ru/apdex/ - статистика длительности операций

Можно использовать не только для 1с, но и любых других БД на MS SQL?
224 TormozIT
 
гуру
10.05.13
13:25
Насколько оперативно сервис выдает информацию в периоды максимальной нагрузки?

Скажем я выполнил какую то операцию в подключенной базе, и она длилась необычно долго. Через какое время примерно я смогу увидеть какую то диагностическую информацию в сервисе?
225 Demiurg
 
07.06.13
20:14
(222) то инфостарт, то проекты, все собирался написать

пока мы вышли из ситуации тем что развели разные базы данных сервисов на разные компьютеры - благо наш подход более менее масштабируемый, но внесли ряд изменений в сервисы - большая часть данных теперь живет в "архивных" регистрах, а рабочая - в "оперативных" регистрах
226 Demiurg
 
07.06.13
20:15
(223) да, хардваре при желании можно заюзать и для аксапты, и для сапа, у них тоже не все хорошо бывает ;)
227 Demiurg
 
07.06.13
20:16
(224) сейчас сервисы получают данные раз в час, мы планируем перепроектировать блок получения данных, но трудозатраты большие, надо на них заработать на обычных проектах сначала )
228 Demiurg
 
07.06.13
20:17
(223) апдекс в чистом виде - это просто идея замеров, но я плохо представляю как в наш сервис вы будете загонять замеры других приложений, вам придется заново написать клиентскую часть, но задача в принципе реализуемая
229 Demiurg
 
14.06.13
21:51
перевели сервисы на 8.3.3
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.