Имя: Пароль:
1C
1С v8
Фоновое задание выполняется дольше чем при запуске вручную.
0 Слон
 
08.06.12
09:36
Собственно сабж.
Есть 8.2 клиент-серверная. Есть процедура, которая делает много разных запросов, обрабатывает ТЗ, затем выгружает все это в отдельную SQL-базу.
При запуске этой процедуры вручную с помощью обработки - время выполнения 20 минут.
А вот если регламентным заданием стартуется процедура - то время выполнения - порядка 50 минут.
Т.е. получается, что в 3 раза дольше. Знает ли кто-нибудь почему так происходит и как с этим бороться?
Может ресурсы режуться для фоновых заданий? Может добавить их можно?
1 Слон
 
09.06.12
08:43
Неужели никто не сталкивался с такой проблемой?
2 Пеппи
 
09.06.12
08:45
как определил время исполнения?
3 H A D G E H O G s
 
09.06.12
08:57
20 минут.
50 минут.

Какие то прям адские цифры. Оптимизируйте код.
4 Слон
 
09.06.12
10:17
Время исполнения определил просто - в текстовый файл пишу время старта/финиша и основных вех обработки.
Здесь вопрос не в оптимизации кода. Задача там такая нетривиальная. Вопрос именно в разнице времени выполнения в фоновом режиме и в клиентском. Если вас так время выполнения смущает давайте просто говорить что в фоновом режиме выполняется в 3 раза дольше, чем при запуске вручную. Как сократить этот разрыв хотя бы до 1,5 раза, а еще лучше, чтобы одинаковое время выполнялось?
5 abitfrosty
 
09.06.12
10:20
Надо сравнивать время исполнения по каждому объекту/позиции на клиенте и сервере, могу предложить прочитать про ЦУП.
6 H A D G E H O G s
 
09.06.12
11:04
(4) Как минимум - фоновое - на серваке полностью. Обычное - может и на клиенте выполняться.

А клиент не сильно от сервака отличается по факту, и не нагружен может быть.

Надо код смотреть.
7 acsent
 
09.06.12
11:05
(3) вдруг там перенос данных за месяц? тогда это мега быстро
8 shuhard
 
09.06.12
11:06
(4) сферический конь в вакууме
9 Слон
 
09.06.12
12:07
(7) Там перенос данных даже не за месяц с подробным пересчетом каждой позиции, но суть не в этом.
(8) Это означает, что задача невыполнима?
Может есть какой-то способ повысить приоритет и увеличить количество выделяемых ресурсов на фоновые задания?
10 hhhh
 
09.06.12
12:52
(9) 20 и 50 - это числа одного порядка. Наверно, не стоит париться. Если бы оптимизировали код по-нормальному, то было бы  20 секунд вместо 20 минут - это можно было бы подумать.
11 shuhard
 
09.06.12
12:53
(9)[Это означает, что задача невыполнима?]
это означает отсутствие задачи