|
v7: Проблема Ожидание блокировки 1С 7.7 при смене сервера На Современный | ☑ | ||
---|---|---|---|---|
0
xSerj
11.10.13
✎
02:33
|
Новый сервер:
CPU = Два AMD Opteron 6380 2,8GHz (в Windows - 32 ядра). Mem = 32 Gb HDD = 4 SAS дисков, RAID 10 ? на контроллере LSI MR9271-4i, 1Gb Кэша. ОС: Windows Server 2003R2 sp2 Datacenter Edition 32 бит. Старый сервер: CPU = Два Intel Xeon 5030 2,66ГГц (в Windows - 8 ядер). Mem = 16 Gb HDD = Два ultra wide SCSI в зеркале. ОС: Windows Server 2003R2 sp2 Enterprise Edition 32бит. 1С: 7.7, релиз 25, dbf. Размер базы: 4 Gb. Пользователей: 56. Вход: Терминальный. ПРОБЛЕММА: На старом сервере пользователи работают с базой. Хоть и медленно, но уверенно. На новом: 1 user работает в 3 раза быстрее. 56 users - Регулярное "ожидание блокировки" работь хуже чем на старом. при том же дистрибутиве 1С и той же базе. В 1С используется: 1CPP.dll (2.0.2.1) для раскраски. Admin1C.dll (1.0.0.0) для таб Пользователей ROM-Mail.dll (1.3.1.0) Terminal Sleep от Romix ВОПРОСы: Существуют ли какие-то особенности Datacenter Edition, плохо согласующиеся с 1С 7.7 или доп. DLL? Или есть особые настройки сервера?.. Посоветуйте что-то, пока меня не заставили выкупить себе Новый сервер (8000$). |
|||
1
КонецЦикла
11.10.13
✎
02:38
|
Погуглить, позвать админа.
|
|||
2
Злопчинский
11.10.13
✎
03:05
|
побежал за печенюшками и колой
http://www.employmentandlaborinsider.com/Usher%20eating%20popcorn.jpg |
|||
3
FlashC
11.10.13
✎
03:06
|
опять 25)
|
|||
4
FlashC
11.10.13
✎
03:09
|
(0) кто сервак собирал?
|
|||
5
NS
11.10.13
✎
03:19
|
(0) При проведении документа работает только одно ядро. 1cv7 - однопоточное приложение. И проводить одновременно может только один пользователь. Это азы. Так что ищите специалиста в следующий раз.
|
|||
6
NS
11.10.13
✎
03:20
|
И кто-же в терминале на 56 пользователей ставит 32 битную винду?! 64 битную поставить религия запрещает?
|
|||
7
xSerj
11.10.13
✎
03:42
|
(6)
64 битную ставили, было еще хуже. А Ведь старый сервер таки РАБОТАЕТ и на 32х. Манагеры те же. База Та же. |
|||
8
xSerj
11.10.13
✎
03:44
|
(3) релиз 27 пробовал. Не помогло.
Задача № 1. Сделать НЕ ХУЖЕ старого. Потом Будем улучшать. |
|||
9
xSerj
11.10.13
✎
03:45
|
(1) Гуглю второй месяц.
|
|||
10
Злопчинский
11.10.13
✎
04:47
|
(5) но ничто не мешает раскидать разные 1ски на разные ядра - это несущественно улучшит ситуацию, так как таблицы блокируемые - общие - но все же...
|
|||
11
Злопчинский
11.10.13
✎
04:48
|
Отключить на процах зеленый режим (энергосбережение)
|
|||
12
Злопчинский
11.10.13
✎
04:49
|
а смотрел - на чем стопорится?
. внимательно зазырить - может кто-то все-таки не втерминале работает, а умудрился по сети..? . проверить - как прописаны пользователям пути - напрямую или через шару? |
|||
13
nirazu ne 1c
11.10.13
✎
04:58
|
был такой случай,, сделали новый сервер и
переместил туда дбф на райд 1 все тормозило, и общие документы и база 1 с сделал на адаптеке 3605 райд 10 и туда перемесил дбф, стало как прежде, скорость приемелемая |
|||
14
Злой Бобр
11.10.13
✎
10:49
|
(0) Как минимум позвать админа, заставить себя поставить 27 релиз, научиться пользоваться поиском. Если результата нет - бегите за вазелином, ну или переведите стрелки на умника который взял такую херню на 50+ юзеров (как по мне - оно и в теории недолжно быть быстрее).
И собственно кроме размера базы нада знать максимальный размер ДБФ-ки, размер файла констант, ... Ну в поиске найдете, я просто еще немного и по клавишам попадать перестану (так что ищите). |
|||
15
NS
11.10.13
✎
11:00
|
(8)
1. Ставишь 64 битную винду. 2. Включаешь на рейде кеширование на запись. 3. И наконец ищешь специалисьа, и не занимаешься самодеятельностью. Работают то хоть в терминале? |
|||
16
trad
11.10.13
✎
11:03
|
(0) для начала затестить производительность дисковой системы на запись. Например утилитой sqlio
|
|||
17
fenixx
11.10.13
✎
11:04
|
Ожидание блокировки в 7.7 может быть не связано с производительностью сервера. Смотри время проведения документов, нет ли выскакивающих диалогов без таймаута внутри процедур проведения, или внутри явно указанных транзакций
|
|||
18
floody
11.10.13
✎
11:05
|
+1 за выключенный кеш на контроллере
ну и планы электропитания проверить, все на максимальную производительность |
|||
19
Злой Бобр
11.10.13
✎
11:08
|
(15) Да все и на 32-битке должно работать (условно должно), но не на этом хламе.
Можно кинуть базу на нетварь и работать по сети. Вот только ненужно задавать вопрос что такое нетварь - поиск в помощь. (0) И отвечая на вопрос про датацентр - особенности есть. У меня первые 2 попытки запустить эту хрень прошли мимо с матами и водкой. Поэтому я вам изначально и сказал - зовите админа, сэкономите время и нервы. |
|||
20
NS
11.10.13
✎
11:11
|
(19) Не должно. Берем 56 пользователей, и умножаем на 60 метров в каждом терминальном сеансе. И понимаем что на 32 битах сервак столько выделить не может.
А во вторых ежу понятно что AWE/PAE это костыль, которые работает несравнимо хуже честных 64 бит. И не дает даже нормального кеширования дисков. |
|||
21
NS
11.10.13
✎
11:17
|
(14) От параметров базы ничего не зависит.
Первый сервер в (0) Не может ни на какой dbf, v7 базе работать быстрее чем второй. В нем ничего ускоряющего работу с базой нет, по сравнению со старым серваком. |
|||
22
пипец
11.10.13
✎
11:18
|
(0) сервак вообще норм атадминен ? экономии энергии ?
- прописать пути к темпам в ярлыке 1с для каждого пользователя ? - кеширование пути короткие ? - опять же как с правами и прочим ? чисто на винде - аудит папок и прочее? ЗЫ в 99-ти случаях - 1ЦЫ тут не при чем |
|||
23
stix2010
11.10.13
✎
12:09
|
ключевое слово RAID10 и диски, можешь для начала запихнуть базу на ram диск и проверить
|
|||
24
zva
11.10.13
✎
12:52
|
(20) 2003 enterprise x32 поддерживает до 32 ГБ оперативной памяти при включенном PAE, datacenter до 64 ГБ. Один процесс 1с77 болше 2 гб все равно не отъест. 64 битность особого ускорения не даст.
(0) я бы начал с проверки наличия ключа /PAE в boot.ini далее переустановки Terminal Sleep от Romix, возможно криво встал, далее мониторинг дисковой- кэш на запись на контроллере. Если есть антивирус на новом сервере снести полностью. |
|||
25
NS
11.10.13
✎
12:55
|
(24) 32 битная винда запускает все 32 разрядные приложения в нижних 4 гигах, и там же находятся все системные службы.
Реально под нужды 32-битных приложений отводится чуть больше 2 гигов. А теперь я повторю расчет - 56 терминальных сеансов, под каждый 60 метров. Реально если все 56 пользователей попробуют зайти - будет предупреждение о нехватке памяти. И 1С не умеет использовать AWE память. |
|||
26
NS
11.10.13
✎
12:59
|
Все вот эти 64 гига - отводятся только под системный кеш, и приложения которые умеют использовать AWE память. 1С к таким приложениям не относится. Поэтому мнение (24) в корне неверно.
|
|||
27
zva
11.10.13
✎
13:09
|
(25) бред, ограничение в 4 ГБ только на один процесс 1с77, 56 пользователей смогут использовать всю память.
PAE does not change the amount of virtual address space available to a process. Each process running in 32-bit Windows is still limited to a 4 GB virtual address space. http://msdn.microsoft.com/en-us/library/windows/desktop/aa366796(v=vs.85).aspx |
|||
28
Bigbro
11.10.13
✎
13:10
|
уверен что перегружена дисковая система
|
|||
29
NS
11.10.13
✎
13:25
|
(27) "Как правило, на компьютерах под управлением Windows 2000 или Windows Server 2003 один процесс может получить доступ не более чем к 2 ГБ адресного пространства (при условии, что не используется ключ /3GB), часть которого относится к физической, а часть — к виртуальной памяти. Чем больше запущено программ (и, следовательно, процессов), тем больше выделяется памяти в пределах 2 ГБ адресного пространства."
http://support.microsoft.com/?id=283037 У каждого процесса есть выгружаемая (которая может выноситься в файл подкачки, либо в верхнюю память) и невыгружаемая занятая память. И невыгружаемая не может быть вынесена в файл подкачки и системный кеш. |
|||
30
NS
11.10.13
✎
13:31
|
Повторю цитату с справки Майкрософт.
"Чем больше запущено программ (и, следовательно, процессов), тем больше выделяется памяти в пределах 2 ГБ адресного пространства." |
|||
31
zva
11.10.13
✎
16:44
|
"один процесс может получить доступ не более чем к 2 ГБ адресного пространства, часть которого относится к физической, а часть — к виртуальной памяти"
Из 60 Мб процесса 1С77 10 Мб будет лежать в физической памяти в пределах 2 ГБ, остальные 50 Мб в виртуальной, за пределами 4 Гб. Чем больше занято физической памяти - тем больше будет выделяться виртуальной под следующие процессы. Память будет загружаться равномерно. "Реально если все 56 пользователей попробуют зайти - будет предупреждение о нехватке памяти. " При включеном PAE этой ошибки не будет |
|||
32
NS
11.10.13
✎
16:52
|
(31) Будет ошибка нехватки памяти при включенном PAE. У меня достаточно клиентов с большим количеством пользователей налетали на эту проблему.
И в любом случае PAE это аналог виртуальной памяти, только в оперативке а не на диске, с производительностью намного меньшей чем прямой доступ к памяти в x64 системах. |
|||
33
DGorgoN
11.10.13
✎
17:06
|
(0) Терминал слип от Ромикса криво сел похоже.
|
|||
34
zva
11.10.13
✎
17:12
|
(32) это ошибка standard редакций и ниже. сам лично админил терминалы еще на win 2000 ent. В пиках загрузка памяти была 6 - 7 ГБ. Никаких сообщениях об ошибок не было. Приложений с поддержкой AWE на сервере тоже.
(33) терминал может сел нормально, просто кто-то запускает 1С из другого каталога, в итоге тормоза ловят все. |
|||
35
NS
11.10.13
✎
17:14
|
(34) Нет, это ошибка Enterprise R2, с включенным PAE.
И ошибка от версии винды не зависит. Так как это именно нехватка нижней памяти. (33) По какой причине на новом серваке должно стать быстрее? Зачем искать черную кошку там где её нет? |
|||
36
DGorgoN
11.10.13
✎
17:15
|
(34) Возможно и такое.
|
|||
37
DGorgoN
11.10.13
✎
17:17
|
(35) Общей памяти больше, винты лучше, процессоров больше и они лучше. Должно, просто обязано работать быстрее. Однако ненамного быстрее - предел близко, 4 гига база (ДБФ ведь так?) + 7-ка на 56 пользователей. Угук, с такими объемами уже 8 либо оптимизация и еще раз оптимизация. Да, надеюсь на ДБФ все?
|
|||
38
uno-group
11.10.13
✎
17:33
|
А что SAS диски быстрее ССД?
ИМХО какой нибуть Intel Core i7-3770K Box / 4x3,5GHz за 300 у.е для 56 юзеров работал бы быстрее чем эта дура в 32 ядра. |
|||
39
NS
11.10.13
✎
17:37
|
(37) Как 32 оперативки могут ускорить по сравнению с 16, на базе в 4 гига, с пользователям которые суммарно жрут максимум 4 гига?
|
|||
40
NS
11.10.13
✎
17:38
|
(38) 32 ядра не дадут никакого ускорения на проведении даже по сравнению с 2 ядрами.
|
|||
41
uno-group
11.10.13
✎
17:55
|
(40) ну так я о том же что у него производительность 1 ядра практически не изменилась. а в том что я запостил на 30-40 % быстрее ядро.
|
|||
42
uno-group
11.10.13
✎
17:57
|
AMD FX-9370 Box/ 8x4,4GHz или вот такой проц более подходит к его случаю
|
|||
43
aka MIK
11.10.13
✎
18:04
|
SQL не предлагали еще? У меня в старой восьмерочке на старом сервачке SQL в разы быстрее файловой версии
|
|||
44
xSerj
11.10.13
✎
18:06
|
(13) Так У нас и стоит RAID 10. И файловая система работает отлично.
(14) 27-й поставлю если 25-й заработает. На старом-то работает. База та же - дистрибутив тот же. Максимальны размер файла: 600 Mb. 1SJOURN.DBF - 92 Mb, 1SCONST.DBF - 18 Mb. (17) Проводится все быстро. диалоги убраны в 2001 г. Затык начинается когда за 20 юзеров. (19) Не верю, что посети 56 юзеров проткнутся быстрее чем с Терминалки. (21) Ну если не читать цыфры тестирования, то разницы нет. На старом проц часто загружен на 100%. На новом макс 10%, Чтение запись файлов на новом в 3-10 раз быстрее в зависимости от размеров файлов. В т.ч. при многопоточном копировании. Кеширование включено. Power - Alweys On. |
|||
45
xSerj
11.10.13
✎
18:11
|
(24) Спасибо за дельность.
на x64 было еще хуже. на х32 PAE включен (проверено пере проверено) Terminal Sleep от Romix сегодня для теста вообще отключил. Ядер должно хватить... Тест через пол часа. Обновил драйвер для CPU. Стоял от MS за 2002 г. Сейчас от AMD за 2007 г. |
|||
46
aka MIK
11.10.13
✎
18:12
|
(44) Мониторь еще КаталогИБ() - может кто по по левому заходит...
|
|||
47
xSerj
11.10.13
✎
18:12
|
(28) А чем проверить посоветуешь. Монитор ресурсов смеется над нагрузкой...
|
|||
48
NS
11.10.13
✎
18:12
|
(45) Похоже ты не слышишь. Блокировка возможна только при проведении. При проведении используется только одно ядро.
ТИ то что у тебя стало 32 ядра - на скорость не влияет. Если у тебя включено кеширование, то вся база сидит в памяти, и скорость дисков так-же ни на что не влияет. И объем оперативной памяти тоже. |
|||
49
NS
11.10.13
✎
18:13
|
(45) Было еще хуже на X64 - как проверял?
Сказки рассказываешь. |
|||
50
xSerj
11.10.13
✎
18:14
|
(31) Ошибки и нет (о нехватке памяти)
|
|||
51
aka MIK
11.10.13
✎
18:17
|
(48) Ну кеша то у процессора явно поболее, так что вполне процессор может быть в разы быстрее - это помимо частоты
|
|||
52
xSerj
11.10.13
✎
18:18
|
(34) Каталог с 1С (BIN) у всех один. Для теста и база одна. Хотя на старом четыре работают.
|
|||
53
NS
11.10.13
✎
18:18
|
(51) Одно АМДшное ядро быстрее одного Интеловского? Не верю!
|
|||
54
Chai Nic
11.10.13
✎
18:19
|
(51) Да, 1с очень любит кэш процессора.. однако AMD.. для них характерно извращенное новаторство. Может получиться так, что на характерных именно для 1с инструкциях и данных кэш начинает работать неадекватно из-за предсказаний ветвлений или еще чего-там..
|
|||
55
xSerj
11.10.13
✎
18:21
|
(37) В том и вопрос все лучше, кроме результата.
Еще подозреваю Datacenter. Это основная разница со старым. Пробовал Datacenter х64 было еще хуже. 1С "вылетала" и "не возвращалась" |
|||
56
xSerj
11.10.13
✎
18:23
|
(38) "А что SAS диски быстрее ССД?". - Надежней. у ССД ограниченное к-во перезаписей. А 1C DBF только тем и занимается.
|
|||
57
NS
11.10.13
✎
18:25
|
(51) Немного погуглил результат на одном ядре в geekbench (w32) - примерно одинаков.
|
|||
58
NS
11.10.13
✎
18:31
|
(55) Ось на скорость выполнения кода не влияет.
Скорость локальной работы дисков (а терминал это локальная работа) тоже от оси практически не зависит. Так что дело не в оси, а в железе. Пользователи ожидали улучшение, получили тоже самое. По-этому и жалуются. И что там с антивирусами? |
|||
59
xSerj
11.10.13
✎
18:39
|
(45) Драйвер CPU пришлось снести тест WinRAR-ами не выдержал. Драйвер был не самый родной.
Тест без Terminal Sleep через 2 минуты С БОГОМ... |
|||
60
Chai Nic
11.10.13
✎
18:46
|
Я вообще фигею.. для детской базы покупать новый сервер.. я понимаю, если бы у вас база была под сотню гигов...
|
|||
61
Salimbek
11.10.13
✎
19:16
|
(59) Классический совет, создать РАМ-диск и направить на него временные каталоги пользователей
|
|||
62
xSerj
11.10.13
✎
19:35
|
Тест без Terminal Sleep был лучшим за все время, но бывали и блокировки сек на 15. Тестировали 32 юзера. Интенсивно! Может Terminal Sleep стоит переустановить... и ещё раз проверить...
Пока пошли изучать Контрелер SAS дисков. Он ко всему имеет свой кеш 1GB. |
|||
63
xSerj
11.10.13
✎
19:38
|
(61) Совет - это хороше, а подсказки Какой Объем? Может есть статьи интересные?.. с примерами, сравнениями,...
Буду благодарен. |
|||
64
Зойч
11.10.13
✎
19:58
|
посмотри счетчик disk queue length
|
|||
65
viktor_vv
11.10.13
✎
20:15
|
(62) Так ты ж вроде написал, что "Кеширование включено.", вроде как все имели ввиду включение именно собственного кэша контролера на запись.
Батарейка (BBU) имеется на контролере ? |
|||
66
viktor_vv
11.10.13
✎
20:17
|
(65)+ Без батарейки может и не получится включить кэш на запись.
|
|||
67
xSerj
11.10.13
✎
20:19
|
(65) Включено в Windows. Разбераемся с аппаратной реализацией Контролера. Ютилитами от производители. Пока все как по умолчанию
Батарейка есть. |
|||
68
Grobik
11.10.13
✎
20:22
|
(67) Открой по себе инфы побольше. Если с Украины — может здыбается.
|
|||
69
Grobik
11.10.13
✎
20:23
|
Советы все в ветке дурацкие. Рассчитаны на человека, который вопрос в (0) никогда бы задал. Мир катится в пропасть.
|
|||
70
viktor_vv
11.10.13
✎
20:27
|
(67) Там включать надо именно утилитами, то что в винде до ламппочки.
По крайней мере у хьюлетов так. |
|||
71
viktor_vv
11.10.13
✎
20:27
|
Ну и (64) посмотри.
|
|||
72
NS
11.10.13
✎
20:30
|
Если включено кеширование записи виндой, с отключенной очисткой буфера (отложенная запись, отключена сквозная запись), то никакие манипуляции с диском ничего не изменят.
|
|||
73
NS
11.10.13
✎
20:31
|
(70) В смысле? Это шутка?
|
|||
74
Grobik
11.10.13
✎
20:31
|
А вообще в России люди продающие "AMD Opteron 6380" под 1С например Этерго, знают чего они продают. И продают сразу винду и скуль и сами мелкософт настраивают. Прямо под имеющийся релиз платформы 1С.
|
|||
75
Grobik
11.10.13
✎
20:33
|
Короче ТС чего-то не договаривает. Да еще и шифруется.
|
|||
76
NS
11.10.13
✎
20:33
|
(74) Конечно, люди продающие 32 ядерный сервак под файловую семерку знают что продают.
|
|||
77
NS
11.10.13
✎
20:33
|
(75) Это тебе так кажется. Все кто хотел увидеть, уже увидели что новый сервак для 1Ски ничем не отличается от старого.
|
|||
78
viktor_vv
11.10.13
✎
20:36
|
(73) Насчет "до лампочки" погорячился наверное.
|
|||
79
Voronve
11.10.13
✎
20:41
|
(0) Железку кто покупал ?
(76) сервант мог и не ТС закупить. Дали что есть - жахайся как можешь ... |
|||
80
NS
11.10.13
✎
20:44
|
С железом и его настройками тут уже ничего не сделать.
Оптимизацию сможет провести только программист. |
|||
81
viktor_vv
11.10.13
✎
20:50
|
(80) я конечно не часто сталкивался с серверами , но там где сталкивался, упиралось как раз в отключенное кэширование на запись именно в контролере.
|
|||
82
NS
11.10.13
✎
20:52
|
(81) Если включена в винде отложенная запись - до конроллера дойдет только когда винда захочет сбросить кэш.
Ну и контроллер естественно нужно правильно настроить, но в данном случае это ничего не изменит. |
|||
83
viktor_vv
11.10.13
✎
20:52
|
(81)+ Типа перестраховки производителя от порчи данных.
|
|||
84
xSerj
11.10.13
✎
20:53
|
(68) Расширил инфу о себе
|
|||
85
viktor_vv
11.10.13
✎
20:59
|
(84) Только сейчас дочитал в (0) последнее предложение :), сурово там у вас :).
|
|||
86
xSerj
11.10.13
✎
21:06
|
(79) Железку покупал Админ (железячник)фирмы. Я программист 1С
|
|||
87
Grobik
11.10.13
✎
21:07
|
(76) Хотел ответить роликом про буратину, но сросрось. Качаю 1080 для проверки своего нового китайца.
|
|||
88
viktor_vv
11.10.13
✎
21:09
|
(86) Логично было бы, чтобы он и мудохался с ним :).
|
|||
89
xSerj
11.10.13
✎
21:09
|
(65) Включение Кеша. Наш админ надеялся на сборщиков сервака. Теперь решили перепроверить (какие настройки дали сборщики)
|
|||
90
xSerj
11.10.13
✎
21:12
|
(82) Расшифруй для программиста 1С, как обяснить Админу железячнику "Ну и контроллер естественно нужно правильно настроить, но в данном случае это ничего не изменит."
|
|||
91
xSerj
11.10.13
✎
21:13
|
(85) Хазяен бывший СБУ-шник
|
|||
92
NS
11.10.13
✎
21:14
|
(90) Это значит сначала проверить в диспетчере устройств, что включена отложенная запись, а потом то-же самое посмотреть на рейде (в его софте)
|
|||
93
xSerj
11.10.13
✎
21:16
|
(88) Так и есть но... Но мне то же интересно... + 1С то моя сфера. Будет плохо работать скажут я виноват...
|
|||
94
ilya_i
11.10.13
✎
21:19
|
Был случай, что контролер плохо работал, ничем себя не выдавал просто медленно, если учесть всякие кэширования, то может как раз при большой нагрузке именно скорость винтов и начинает сказываться.
|
|||
95
NS
11.10.13
✎
21:21
|
(94) база 4 гига, и если включено виндовое кеширование - до контролера дело не доходит. База целиком сидит в Кеше, в памяти.
|
|||
96
NS
11.10.13
✎
21:22
|
Если конечно к базе не открыт сетевой доступ.
|
|||
97
viktor_vv
11.10.13
✎
21:22
|
(93) Ты бы таки проверил (64) в оснастке "производительность".
|
|||
98
xSerj
11.10.13
✎
21:25
|
(92)"что включена отложенная запись" - это "Разрешить кэширование записи на диск"? или плюс "Включить повышенную производительность". или другое
|
|||
99
NS
11.10.13
✎
21:26
|
(98) повышенная производительность - это и есть отложенная запись, оно же отключение сквозной записи.
|
|||
100
NS
11.10.13
✎
21:27
|
естественно включать только при наличии нормального резервного копирования, и наличии бесперебойника и парашюта.
|
|||
101
xSerj
11.10.13
✎
21:51
|
(99) Спасибо обяснил
(100) Наверно Админ без парашюта |
|||
102
xSerj
11.10.13
✎
21:56
|
(100) А если без этой галочки, то тогда проверять контролер на предмет кэширование в нем? Я правильно понял?
|
|||
103
NS
11.10.13
✎
22:01
|
(102) На контроллере должна быть батарейка, и включена отложенная запись.
|
|||
104
Voronve
11.10.13
✎
22:03
|
(86) тогда чего меньжуешься "не заставили выкупить себе Новый сервер" ?!
|
|||
105
xSerj
11.10.13
✎
22:07
|
(103) Батарейка есть, слышал. За отложенная запись спрошу...
|
|||
106
viktor_vv
11.10.13
✎
22:29
|
Таки насчет "кэширование на запись" виндовое до лампочки, беру свои слова обратно, иногда лучше жевать, чем говорить :).
Полез на свои серваки, на брендовых HP эти флаги в свойствах диска даже не запоминаются, то есть доступны, но после установки и повторного открытия сбрасываются. Грешу на HP, так как винду только с их утилитой можно было поставить. может че в реестре прописали. Поэтому и был заметен эффект от включения кеша контролеров. Сильно не парит, так как очередь к диску около нуля болтается. На самосборном с win server доступны и запоминаются. |
|||
107
NS
11.10.13
✎
22:34
|
(106) я админством не занимаюсь, но насколько я помню они слетают на системных дисках и при сетевом доступе. Возможно их может вырубать контролер рейда.
|
|||
108
viktor_vv
11.10.13
✎
22:39
|
(107) Да я тоже с админством не сильно, постольку поскольку. Точно знаю, что если на диске Active Directory расположена, то винда очень трепетно относится к такому диску , и отрубает, все что хоть приблизительно может покорежить данные, в том числе и кеш на запись.
Но у меня DC на отдельной машине, только под это. Поковыряю еще. |
|||
109
NS
11.10.13
✎
22:46
|
погуглил - меня клинит. снимается галка при перезагрузке на win 2003 server, на контролере домена, если на кешируемом устройстве находится база домена.
|
|||
110
NS
11.10.13
✎
22:46
|
(108) да, все верно.
|
|||
111
Salimbek
11.10.13
✎
22:59
|
(63) С объемом - тут сложнее, т.к. мерить надо, примерно 50 юзеров * 100 мБ на темп-файлы... гигабайт на 4-6 винты можно. А эффект - когда 1С-ка начинает брать итоги по регистрам (РассчитатьПО и т.д.), то она вытаскивает большую ДБФ-ку клиенту, а потом ее неспешно перебирает. Соответственно, если временные каталоги перенаправлены, то и считать будет много быстрее. Я пользовался ImDisk-ом. Чтобы перенаправить каталог, надо, как написано тут: http://infostart.ru/public/104654/ запускать 1С-ку с ключем "/T"
|
|||
112
Salimbek
11.10.13
✎
23:11
|
ну и практически все советы собраны тут: http://kb.mista.ru/article.php?id=136
|
|||
113
Кип Калм
11.10.13
✎
23:14
|
(0) Продай винты и рейд-контроллер, на вырученные средства купи ссд и будет тебе щастье.
|
|||
114
viktor_vv
11.10.13
✎
23:17
|
(109) Нагуглил такую хрень.
http://support.microsoft.com/kb/811392/RU там много букв. Но основное. "Возможно появление одного из следующих сообщений об ошибке. Error setting Write Cache value. (1) Incorrect function. Это сообщение свидетельствует о том, что указанное дисковое устройство или его драйвер не поддерживают изменения состояния кэширования записи с помощью команд драйвера Microsoft (IOCTL). Такое поведение характерно для многих контроллеров RAID. Кэширование записи на таком диске не может быть настроено с помощью средств, разработанных корпорацией Майкрософт. Для получения сведений о механизме настройки кэширования записи обратитесь к производителю соответствующего устройства. Дисковые драйверы корпорации Майкрософт не поддерживают включения кэширования для таких устройств" видать когда раньше разбирался что-то такое и читал. Отсюда и "до лампочки" :)). |
|||
115
rbserg
11.10.13
✎
23:25
|
(0) > 56 users - Регулярное "ожидание блокировки" работь хуже чем на старом.
> 1С: 7.7, релиз 25, dbf. > Размер базы: 4 Gb. > Пользователей: 56. > Вход: Терминальный. раз "dbf" и "Пользователей: 56." то я бы посоветовал либо скуль, либо нетварь, либо админа хорошего. ПС. Был у нас хороший админ - горя не знали. Сейчас фирма - шелупонь какая-то... |
|||
116
viktor_vv
11.10.13
✎
23:31
|
(115) Мне кажется при "> Вход: Терминальный." вариант "либо нетварь" не столь актуален.
|
|||
117
xSerj
12.10.13
✎
00:00
|
(99) NS. Пока все ушли ставил в win галочку "повышенная производительность" и снимал. Результат на одном и том же запросе не поменялся. 1-й вход 140 с, второй (от другого пользователя 1С, но тот же пользователь Win) 120 c.
Запрос 29 раз обращается к таблице РН, спр Клиентов, рег Затрат. Для стравнения результатов 29-и менеджеров по продаже за один и тот же период. |
|||
118
xSerj
12.10.13
✎
00:01
|
(116) Поддерживаю
|
|||
119
xSerj
12.10.13
✎
00:03
|
(111) Будем пробовать.
|
|||
120
xSerj
12.10.13
✎
00:27
|
(111) Спасибо, попробуем, но это развитие ускорения, а ведь на старом RAM диска нет.
|
|||
121
NS
12.10.13
✎
01:04
|
(117) это же кеширование записи, а не чтения.
|
|||
122
xSerj
12.10.13
✎
01:43
|
(121) Значит это отразится на работе, но не на отчетах?
|
|||
123
NS
12.10.13
✎
01:48
|
(122) У тебя же проблема с блокировкой. А она возникает во время проведения. При проведении записываются движения документа, и их запись ускорится. Так же ускорится создание временных файлов, но это как указано выше можно сделать при помощи темпов на RAM-диске.
|
|||
124
NS
12.10.13
✎
01:52
|
Вопрос еще какая батарейка. Рам, Флэш, или РАМ + Флэш.
|
|||
125
xSerj
12.10.13
✎
01:53
|
(123) "и их запись ускорится", а чтение с кэша будет?
|
|||
126
xSerj
12.10.13
✎
01:55
|
(124) Извини даже вопрос не понял. Но знаю что Физически есть батарейка. При кождом старте отчитывается о своем заряде. Пока 100%. (Серваку 2 месяца от покупки)
|
|||
127
NS
12.10.13
✎
01:55
|
(125) Чтение с Кэша в винде есть всегда, оно в параметрах не отключается, отключается только при сетевом доступе.
|
|||
128
NS
12.10.13
✎
01:56
|
(126) Речь про кеш на контролере.
|
|||
129
xSerj
12.10.13
✎
01:59
|
(128) Да
|
|||
130
NS
12.10.13
✎
02:03
|
(129) Что да? Там Флеш, ОЗУ, или то и другое?
Гиг там ОЗУ? Если Гиг ОЗУ, то рисковать и включать отложенную запись (максимальное ускорение) нет смысла, достаточно сквозной, простого кеширования записи. Если Гиг флеша, то отложенная запись даст ускорение, но немного повысит риски смерти базы после сбоя. |
|||
131
xSerj
12.10.13
✎
02:03
|
(127) База на D:\ в IG_trd
стандартные "D$", "Стандартный общий ресурс", имеют значение? |
|||
132
xSerj
12.10.13
✎
02:06
|
(130) Таких точностей я пока не знаю, но узнаю.
|
|||
133
NS
12.10.13
✎
02:06
|
(131) Имеет сам факт подключения сетевых, а не локальных в терминале пользователей.
|
|||
134
NS
12.10.13
✎
02:12
|
(131) При подключении второго (и последующего) пользователя к сетевой (не SQL!) базе 1С резко возрастает "торможение" 1С:Предприятие 7.7 при работе по сети. Причем, при отключении второго пользователя торможение сохраняется, до перезагрузки сервера. Это особенность Windows NT/2000 - система не умеет кэшировать (сохранять в памяти) файлы при совместной многопользовательской работе по сети. Проблема описана в статье на диске ИТС (от фирмы 1С).
http://kb.mista.ru/article.php?id=136 Это актуально и при работе в терминале. Если к устройству начнут подключаться сетевые пользователи, виндовое кеширование отключится. |
|||
135
NS
12.10.13
✎
02:15
|
Если убрать шары, то можно себя от этой неприятности гарантированно обезопасить.
|
|||
136
xSerj
12.10.13
✎
02:31
|
(134) "Если к устройству начнут подключаться сетевые пользователи" К диску D: нет. А другие шары на других дисках имеют значение?
На старом срв есть и шары к другим папкам и т. д. Но ведь работает... |
|||
137
NS
12.10.13
✎
02:34
|
(136) Не знаю.
|
|||
138
xSerj
12.10.13
✎
02:38
|
Уточняю, пока вспомнил, остальные шары (на старом срв) физически на других дисках...
|
|||
139
NS
12.10.13
✎
02:45
|
(138) Всё равно не знаю. Варианта три
1. Кеш отключается на физическом устройстве (Raid) 2. Кеш отключается на логическом устройстве - диске. 3. Кеш отключается для папок/файлов к которым произошло обращение по сети. |
|||
140
xSerj
12.10.13
✎
02:51
|
(139) бум гуглить...
|
|||
141
xSerj
12.10.13
✎
03:00
|
(139) По памяти, думаю к физ дивку или к объедененному диску в RAID. Во всяком случае на старом срв есть RAID и доп диски, они то и разшарены и на старом срв таки работают в 4-х базах 56 юзеров
|
|||
142
xSerj
12.10.13
✎
03:02
|
(139) Как минимум есть вариант проверить экспериментально. Отключим все шары с Raid миассива и посмотрим...
|
|||
143
VladZ
12.10.13
✎
08:10
|
(0) Я бы не стал 56 пользователей садить в DBF базу. Я бы перевел базу на SQL. Закупил три сервера: один под SQL, два под RDP.
Два под RDP исходя из следующих соображений: 1. Есть возможность "разруливать" нагрузку. В любом случае среди пользователей есть операторы, задача которых быстро внести информацию, есть пользователи, которые занимаются анализами: формируют отчеты пачками. Можно будет разрулить: операторов отдельно, аналитиков отдельно. 2. Надежность. Допустим у нас один сервер. И допустим он сломался. Вся фирма сидит и нервно курит. В случае двух серваков, при поломке одного из них, можно всех пользователей завести на один сервак. Да, нагрузка возрастет, но работать можно будет. В случае, если падает SQL - разворачиваем его на одном из оставшихся серваков. 3. Обслуживание серверов. В случае нескольких серверов есть возможность поочередного обслуживания. 4. Теперь почему SQL. Надежнее. Нет проблем с ожиданием, когда же база наконец-то переиндексируется. Плюс, появляются дополнительные "плюшки". |
|||
144
VladZ
12.10.13
✎
08:12
|
+143 Можно задействовать старый сервер. Если как есть - то под RDP. Можно чуток с дисковой покрутить и под SQL настроить.
|
|||
145
VladZ
12.10.13
✎
08:17
|
"Посоветуйте что-то, пока меня не заставили выкупить себе Новый сервер (8000$)." С чего это? Ты закупал или админ?
|
|||
146
viktor_vv
12.10.13
✎
08:20
|
Насчет отключения кешированя при сетевом доступе, думается мне там идет не отключение кеша дисков в целом кеша диска, а не кешируются в памяти именно файлы, которые по сети открываются. То есть если к базе по сети не подрубаются, то все нормально, остальные шары не влияют на это.
|
|||
147
ЧеловекДуши
12.10.13
✎
10:23
|
(0) >>>На новом:
1 user работает в 3 раза быстрее. Ну да, ну да попробуй начать работать 10-тью или 20-тью пользователями :)))) Наивный |
|||
148
ЧеловекДуши
12.10.13
✎
10:24
|
(146) Да ему нечего не поможет :)
|
|||
149
hhhh
12.10.13
✎
10:43
|
(93) конечно виноват. Ну админ ясно - тупой, но вы-то? Должны понимать, что серверы практически одинаковые. На старом естественно 7.7 будет работать в 2 раза быстрее, она писалась 15 лет назад.
|
|||
150
GStiv
13.10.13
✎
09:28
|
Raid10 это под базу или система и база, скорее всего диск по lun порезали. Попробуйте базу положить на отдельные диски от системы
|
|||
151
bushd
13.10.13
✎
09:47
|
(150) + 100500 такая же мысля пришла. Базу сложить на быстрый независимый носитель. А так правильно заметили узкое место 77 не ликвидируется увеличением ядер.
P.S. Эмоции - серваки на ксеннонах - всегда меня радовали... |
|||
152
Alexor
13.10.13
✎
16:35
|
(143) Если не ошибаюсь.
Сейчас проблема 7-ку до скуля докупить. Да и сам скуль вроде только 2005 на клюшках возможен, а его не купить. |
|||
153
Кип Калм
13.10.13
✎
18:02
|
(152) Купит 7.7 для скл не проблема, 7.7 работает даже на скл 2014.
|
|||
154
Злопчинский
13.10.13
✎
21:53
|
(153) обозначь, кто продает с реганкетой и лицензионным договором? купить на вторичном рынке скульный движок - вообщем можно, но вот есть ли у тебя при этом сублицензионный договора и реганкета?
|
|||
155
NS
13.10.13
✎
21:59
|
(154) Прайс на сайте 1С не является публичной оффертой?
http://www.1c.ru/rus/partners/goodlist.jsp?parentKod=1CV77&kod=1CV77 |
|||
156
viktor_vv
13.10.13
✎
22:38
|
(153) Насчет скл 2014 меня терзают смутные сомнения. Штатно это скл 2000 , с более поздними подружить, это не совсем штатные методы.
|
|||
157
Dolly_EV
14.10.13
✎
15:59
|
"8000$" - как-то дорого для озвученной конфиги?? не?
Переписать конфу (узкие места) на прямые запросы не предлагать? - тогда при таком раскладе "Размер базы: 4 Gb. Пользователей: 56. Вход: Терминальный. " - достаточно будет и половины старого сервака, чтобы забыть про блокировки а вообще - обсуждалось уже 100500 раз все это: дело не в железе, а в кривом коде конфы. |
|||
158
xSerj
15.10.13
✎
01:45
|
(157) Вопрос то не в том как оптимизировать код
ВОПРОС: ПОЧЕМУ НА НОВОМ ЖЕЛЕЗЕ ОДНА И ТА ЖЕ БАЗА, НА ТОМ ЖЕ ПО РАБОТАЕТ ХУЖЕ, ЧЕМ НА СТАРОМ? |
|||
159
xSerj
15.10.13
✎
01:48
|
(139) Спасибо, ты лучше других обяснил куда смотреть...
Установил на контролере такие параметры (Админ выставил) Strip Size = 256 KB VD has Emulated PD = No Span Depth = 2 Number of Drives Per Span = 2 Write Cache(initial setting) = WriteThrough Disk Cache Policy = Enabled Encryption = None Data Protection = Disabled Active Operations = None Exposed to OS = Yes Creation Date = 15-06-2013 Creation Time = 04:41:31 PM Emulation type = None Сегодняшний тест прошел на ура, но тест длился 20 мин. Планируем полный тест, тогда отпишусь... |
|||
160
xSerj
15.10.13
✎
01:49
|
может кто скажет новые замечания по настройкам контролера?..
|
|||
161
xSerj
15.10.13
✎
01:52
|
Сегодня за 20 мин. работали отчеты как за час на текущем (старом) сервере. При этом блокировок небыло даже без Terminal Sleep
|
|||
162
xSerj
15.10.13
✎
01:54
|
(152) Что за проблема. Все юзают не лицензионное ПО. Поставлю любое, а пока читай пост № 158
|
|||
163
xSerj
15.10.13
✎
02:34
|
(146) От подключения по локале отказались более чем 10лет тому
|
|||
164
xSerj
15.10.13
✎
02:37
|
(137) Еще раз благодарочка!!!!!!!!!!!!!!
Ты хоть и не решил где у нас проблема, но лучше других обяснил, где копать... |
|||
165
Bigbro
15.10.13
✎
07:31
|
потестить очередь диска вроде предлагали, ответа я не увидел. посмотри и другие счетчики, по процентам попадания в кеш на чтение и на запись например.
|
|||
166
viktor_vv
15.10.13
✎
09:28
|
(159) Вот это
Write Cache(initial setting) = WriteThrough это сквозная запись. Попробуйте WriteBack - отложенную запись, должно быть быстрее, контроллер более эффективно очередь записи может построить. |
|||
167
viktor_vv
15.10.13
✎
09:31
|
(166)+ Насчет рисков из (130) думаю можно сильно не беспокоится, с батарейкой все нормально должно быть, причем если заряд батарейки опустится ниже некоторого критического уровня, то контроллер автоматом должен отключить отложенную запись.
|
|||
168
ЧессМастер
15.10.13
✎
09:49
|
(0) а почему скуль не используете ?
|
|||
169
xSerj
15.10.13
✎
20:32
|
(166) А кто даст гарантию, что отложенную запись будут читать другие юзеры, а не с харда? Боимся
|
|||
170
NS
15.10.13
✎
20:35
|
(169) В смысле? Это совершенно безопасная опция в случае наличия батарейки.
|
|||
171
xSerj
15.10.13
✎
20:35
|
(168) Вопрос не в скуле. Кроме того самый частый запрос рег.Остаток(Товар,Склад). Он на скуле работает в разы медленнее чем да ДБФ. Тестировал не раз. Другие отчеты и правда быстрее на скуле. Но ...
|
|||
172
xSerj
15.10.13
✎
20:37
|
(130) У нас DDR+ батарейка. Сегодня узнал.
|
|||
173
NS
15.10.13
✎
20:39
|
В винде, ставить отложенную запись - небезопасно, если винда ляжет это грозит потерей данных и смертью базы.
На рейде, если есть батарейка, опцию нужно включать обязательно. (172) Тем более опцию нужно обязательно включить, а в винде тогда можно оставить простое кеширование записи, без самой нижней галки. |
|||
174
viktor_vv
15.10.13
✎
20:41
|
(172) Ну это стандартный вариант. Насчет (169), никто там ничего не будет читать лишнего или другого, это отложенная запись только для контролера, для пользователя и ПО это обычная запись на диск.
|
|||
175
NS
15.10.13
✎
20:44
|
(171) Можно даже не вникая что в коде, сразу сказать что нужно переписывать. У вас слишком маленькая база чтоб тормозило.
|
|||
176
viktor_vv
15.10.13
✎
20:52
|
(175)+1. Я даже думаю, что там можно и штатными средствами нормально сделать, без извратов с прямыми запросами.
Сильно смутил "за 20 мин. работали отчеты как за час на текущем (старом) сервере" меня б наверное уже порвали на куски :)), если б отчет формировался час. |
|||
177
Z1
15.10.13
✎
21:04
|
(171) не верю.
тесты у Вас сомнительные. не может рег.Остаток(Товар,Склад) считаться быстрее под dbf чем под ms sql. (как бы чем больше нагрузка на базу тем больше ms sql будет выигрывать ) хоть бери остаток на та хоть на позицию документа на одной и той же базе sql обгонит dbf. ну как бы мое условие верно если sql сервер правильно настроен. Плюс если еще и оптимизировать расчет Остатка основываясь на конкретики задачи то выигрыш будет еще больше. |
|||
178
viktor_vv
15.10.13
✎
21:11
|
(177) Тоже было такое, таки в дбф быстрее. Я правда детальные тесты не делал, но одну базу перевел без предварительного тестирования на скуль, больше одного дня не выдержали :). По замерам производительности в отладчике, таки Рег.Остаток() тормозил.
Плюнул, не стал заморачиваться вернул взад, для 10 пользователей, в моем случае, сомнительное удовольствие мудохаться со скулем. |
|||
179
Z1
15.10.13
✎
21:27
|
(178) если ты востанавливаешь последовательность документов
или перепроводишь документы за полгода и сравниваешь работу этого теста в целом dbf и sql при работе одного пользователя это как бы один вариант то в силу тех или иных причин dbf база может быть быстрее. а если просто сравнивать вычисление Рег.Остаток(Товар, Склад) то и в том и в другом случае у тебя идет вычисление по индексу и Вы утверждаете что индекс в dbf лучше организован чем индекс в ms sql и вычисление по индексу dbf будет быстрее чем по индексу sql? (178) Опять же простота установки ms sql вовсе не означает что сервер ms sql правильно установлен и оптимально настроен. |
|||
180
viktor_vv
15.10.13
✎
21:33
|
(179) Не, перепроведения не было. Тормозили списки где в формулах были Рег.Остаток().
2. Поэтому и не стал заморачиваться со скулем, тем более простора для маневра особо не было, ни в плане ресурсов на той же машине где терминал, ни в плане выноса скуля на отдельную машину. |
|||
181
viktor_vv
15.10.13
✎
21:33
|
(180)+ 2 - это к вопросу правильной и оптимальной настройки скуля.
|
|||
182
Z1
15.10.13
✎
21:39
|
(180) В 171 утверждается что
вычисление Рег.Остаток(Товар, Склад) быстрее в dbf чем в sql и как ты предполается вычисление по одному товару и одному складу. никакого упоминания о списках в 171 нет. (180) Я как бы не говорю что ты сделал неправильный выбор формата базы для своей базы для 10 пользователей, а говорю что высказывание 171 неверное. |
|||
183
viktor_vv
15.10.13
✎
21:47
|
(182) Про списки имел ввиду. В форме списка справочника текстовое поле с формулой Рег.Остаток(ТекущийТовар,НекоторыйСклад).
Я может после выходных ради интереса потестирую одну и ту же базу в разных форматах. |
|||
184
xSerj
16.10.13
✎
00:56
|
(176) Обясняю, у меня одельно идет хронометраж отчетов. Кто когда и какой запуска, и сколько времени поратил формирование отчета. За 20 мин. на новом сервере потратили 904 с. за тот же день на старом сервере 17000. 17000/8/3(20мин 1/3 от часа)=708. Добавим разницу в процессорах и их времени получится за 20 мин как за час
|
|||
185
xSerj
16.10.13
✎
01:06
|
(177) Я же писал, что результат не в пользу скуля
|
|||
186
aka MIK
16.10.13
✎
01:07
|
(171) А ты бы попробовал вначале, а потом говорил что вопрос не в скуле. Ля делов то - на полчаса перегрузить dbf в sql!
И по запросу Рег.Остаток(Товар, Склад) - результат скорости выполнения запроса может в разы отличаться в зависимости от того склад в начале или товар |
|||
187
aka MIK
16.10.13
✎
01:09
|
Сравнивает блин палку копалку с новой версией плаки копалки и удивляется, почему старая лучше новой - а хер его знает, все на тракторах давно пашут
|
|||
188
viktor_vv
16.10.13
✎
01:33
|
(186) Чего б ему отличаться от порядка измерений, если в таблице итогов кластерный индекс по Период + все измерения . Это к скорости Рег.Остаток().
|
|||
189
viktor_vv
16.10.13
✎
01:51
|
(184) Теперь понятнее.
отя до конца не понятна формула учета разницы в процессорах, и нафига ее учитывать, ну да ладно. |
|||
190
КонецЦикла
16.10.13
✎
03:27
|
(176) Я когда-то видел отчет, который формировал документы, а потом использовал их данные
Воистину, неисповедимы пути одинэснегов... |
|||
191
xSerj
16.10.13
✎
03:41
|
(189) Один и тот же очет. когда 1 на 1 с компом результат в 2-3 раа в +
|
|||
192
xSerj
16.10.13
✎
03:42
|
(190) а клиентов?
|
|||
193
xSerj
16.10.13
✎
03:45
|
(183) все промто тест типа перебор номенклатуры и если негруппа получить остаток. все
|
|||
194
Salimbek
16.10.13
✎
10:04
|
(1930 В стандарте работа в ДБФ быстрее чем в СКЛ, если в СКЛ переписать получение остатков на прямой запрос через 1C++ и ODBC, то станет практически поровну
|
|||
195
Bigbro
16.10.13
✎
10:42
|
если тупо перебор - так и есть быстрее работает перебор в дбф.
|
|||
196
viktor_vv
16.10.13
✎
10:45
|
(195) Вовпрос не про перебор, а про скорость работы метода Рег.Остаток() в скуле и дбф. Про перебор было только как способ сравнить скорость работы метода.
|
|||
197
viktor_vv
16.10.13
✎
10:48
|
(194) А с чем связано различие в скорости ?
Посмотрел в профайлере, Рег.Остаток() через вызов хранимки сделано. Выше накладные расходы получаются на вызов хранимки? |
|||
198
Salimbek
16.10.13
✎
12:26
|
(197) ну там не только это же... т.е. если использовать только вызов хранимки и обработку результата, то может и быстро было бы, но нет ли у 1С-ки других "накладных" расходов?
|
|||
199
NS
16.10.13
✎
12:33
|
Штатно, кэшированием, получение остатков ускоряется во многие-многие разы.
|
|||
200
viktor_vv
16.10.13
✎
12:52
|
(198) Так в том-то и дело, что хранимка у них с многими телодвижениями вызывается.
Сравнил с подготовленным запросом 1С++, там вроде как тоже хранимка, но вызывается как-то попроще. И выполнитьСкалярный на подготовленном запросе раза в два быстрее, чем Рег.Остаток(). |
|||
201
viktor_vv
16.10.13
✎
12:59
|
(200) Вот выполнение скалярного запроса
exec sp_execute 12, ' BJ3 ', ' 15TF ' а вот рег.Остаток() declare P1 numeric(12,3) set P1=NULL declare @P2 numeric(12,3) set @P2=NULL declare @P3 numeric(11,2) set @P3=NULL exec _1sp_RG5272_Select 'Oct 1 2013 12:00AM', ' BJ3 ', ' 15TF ', P1 output, @P2 output, @P3 output select P1, @P2, @P3 Ну и сама _1sp_RG5272_Select Create procedure _1sp_RG1051_Select(@per DATETIME, @p1 CHAR(9), @p2 CHAR(9), @p3 CHAR(9), @p4 CHAR(9), @p5 NUMERIC(12, 3) OUTPUT, @p6 NUMERIC(12, 3) OUTPUT, @p7 NUMERIC(11, 2) OUTPUT, @p8 NUMERIC(11, 2) OUTPUT, @p9 NUMERIC(11, 2) OUTPUT) AS Select @p5=SP1055,@p6=SP1056,@p7=SP1057,@p8=SP1058,@p9=SP1059 from RG1051 where PERIOD=@per AND SP1855=@p1 AND SP1053=@p2 AND SP1052=@p3 AND SP1054=@p4 GO Я в этих материях не силен, поэтому и хотелось бы таки понять в чем прикол. |
|||
202
viktor_vv
16.10.13
✎
13:03
|
(201) + Текст процедуры от другого регистра, промахнулся, но смысл тот же.
|
|||
203
Ёпрст
16.10.13
✎
13:04
|
(194)А если в дбф переписать на прямой запрос с условием попадания в индекс..то тут и скуль не обгонит
:)) |
|||
204
NS
16.10.13
✎
13:06
|
(203) см. (199), и ничего переписывать не надо.
|
|||
205
NS
16.10.13
✎
13:18
|
И небольшой трюк под SQL, увеличивающий скорость в разы.
ВремОстаткиТМЦ.УстановитьЗначениеФильтра("Склад",Константа.ОсновнойСклад,1); ВремОстаткиТМЦ.УстановитьЗначениеФильтра("Номенклатура", ТекНоменклатура,1); ВремОстаткиТМЦ.ВыгрузитьИтоги(ВремТаблОстатки,1,1); ТекОстатки = ВремТаблОстатки.Итог("Количество"); |
|||
206
NS
16.10.13
✎
13:20
|
Только не понял почему у меня в третьей строчке оба параметра в единицу.
|
|||
207
viktor_vv
16.10.13
✎
14:11
|
(206) <ВклФильтр> - необязательный параметр. Число: 1 - в получаемую таблицу включаются измерения, закрепленные фильтром ; 0 - не включаются. Значение по умолчанию - 0.
<Очищать> - необязательный параметр. Число: 1 - перед выгрузкой таблица значений очищается; 0 - не очищается. Значение по умолчанию - 1. Так что второй параметр можно в 0 ставить. |
|||
208
viktor_vv
16.10.13
✎
14:12
|
(207) Да и третий параметр можно не указывать.
|
|||
209
NS
16.10.13
✎
14:12
|
(207) Я знаю.
(208) ? |
|||
210
viktor_vv
16.10.13
✎
14:16
|
(209) Третий (очищать) он по умолчанию и так 1 будет.
|
|||
211
viktor_vv
16.10.13
✎
14:16
|
Или я не понял вопрос в (206).
|
|||
212
NS
16.10.13
✎
14:25
|
(211) Я не понял зачем у меня стоят единицы. Но я отлично знаю что делают эти параметры.
|
|||
213
NS
16.10.13
✎
14:26
|
(210) Это новая парадигма программирования? Обязательно не указывать параметры по-умолчанию?
|
|||
214
viktor_vv
16.10.13
✎
14:35
|
(213) Да нет.
Я таки не могу понять в чем вопрос. Как бы из описания параметров можно понять зачем установлены те или иные значения. Конкретно к куску кода из (205) второй параметр можно в 0 ставить, так как в этом коде нет обращений к колокнам измерений в ВремОстаткиТМЦ. Зачем там 1 стоит я не знаю. Может дальше в коде есть обращения к колокнам измерений в ВремОстаткиТМЦ, ХЗ. |
|||
215
NS
16.10.13
✎
14:41
|
(214) Нафига к ним обращаться, если и так известно что там?
|
|||
216
NS
16.10.13
✎
14:41
|
Не то обсуждаем.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |