Имя: Пароль:
1C
1С v8
Переход между процедурами в копии базы длится 5 сек, а боевой 20+ мин
,
0 Тессеракт
 
26.01.21
15:32
Добрый день.
УТ 11.3
Проблема:
Переход между процедурами в копии базы длится 5 сек, а боевой 20+ мин. В чем может быть дело?
Суть обработки- чтение эксель в тз. 28т строк.
Код:

&НаКлиенте
Процедура ПодгрузитьБП(Команда,ТаблицаДанныхБП)
    АдресХранилища="";
    БП666(ТаблицаДанныхБП,АдресХранилища);        
КонецПроцедуры
&НаКлиенте
Процедура БП666(ТаблицаДанныхБП,АдресХранилища)  
    Режим = РежимДиалогаВыбораФайла.Открытие;
    Диалог = Новый ДиалогВыбораФайла(Режим);
    ИмяФайла = Диалог.ПолноеИмяФайла;
    Фильтр = "Файл Эксель(*.xlsx)|*.xlsx";                
    Диалог.Фильтр = Фильтр;
    Диалог.МножественныйВыбор = Ложь;
    Диалог.Заголовок = "Выберите файл выгрузки из БП";
    Если Диалог.Выбрать() Тогда
        ИмяФайла = Диалог.ПолноеИмяФайла;  
    КонецЕсли;
    Файл = Новый Файл(ИмяФайла);
    Если НЕ Файл.Существует() Тогда
        Возврат;
    КонецЕсли;
    ДвоичныеДанные = Новый ДвоичныеДанные(ИмяФайла);
    ДокументРезультат = EXCELВТаблицуЗначенийБП666(ДвоичныеДанные, Файл.Расширение); ////// ВОТ С ЭТОГО МОМЕНТА В БОЕВОЙ БАЗЕ ОТЛАДКА МИН НА 20 ЗАВИСАЕТ
    //ПротоколПереноса = ПолучитьИзВременногоХранилища(АдресХранилища);
    
    //ДокументРезультат.Показать();
    Сообщить("Загрузка завершена! Теперь можно сформировать отчет.");
КонецПроцедуры
&НаСервере
Функция EXCELВТаблицуЗначенийБП666(ДвоичныеДанные, Расширение)    
    ФайлEXCELНаСервере = ПолучитьИмяВременногоФайла(Расширение);
    ДвоичныеДанные.Записать(ФайлEXCELНаСервере);    
    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.Прочитать(ФайлEXCELНаСервере);
    УдалитьФайлы(ФайлEXCELНаСервере);
    ОбластьТаблицы = ТабличныйДокумент.Область(4, 2, ТабличныйДокумент.ВысотаТаблицы, ТабличныйДокумент.ШиринаТаблицы);    
    ПостроительЗапроса = Новый ПостроительЗапроса;
    ПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(ОбластьТаблицы);  
    ПостроительЗапроса.Выполнить();
    ТаблицаДанныхБП = ПостроительЗапроса.Результат.Выгрузить();  //тз


Прошу, подскажите, в чем может быть проблема?
1 ДенисЧ
 
26.01.21
15:34
Копия на локальном компе с дисками нвме, а рабочая - сервер в Сингапуре, связь через 2g-модем?
2 fisher
 
26.01.21
15:34
Копия развернута в боевом окружении?
3 Тессеракт
 
26.01.21
15:35
(1) обе копии на одном серваке
4 Тессеракт
 
26.01.21
15:35
(2) да
5 Ногаминебить
 
26.01.21
15:38
Кэш чистили? Под одним и тем же пользователем с одной и той же машины один и тот же файл запускаете?
6 fisher
 
26.01.21
15:39
Отладка на сервере включена? Т.е. 20 минут занимает именно переход отладки в EXCELВТаблицуЗначенийБП666() на сервере? Или 20 минут - это время выполнения EXCELВТаблицуЗначенийБП666()
7 Тессеракт
 
26.01.21
15:40
***, мужики, только не кидайте фруктами)) отладку не с того рдп запустил, поэтому на серв не проваливалась отладка. Но вопрос все еще в силе, на тестовой 1 мин читается эксель, на боевой 20
8 fisher
 
26.01.21
15:50
(7) Ну, раз не в "переходе" дело, тогда очередь за замером производительности. То бишь, за локализацией узкого места.
9 H A D G E H O G s
 
26.01.21
15:51
&НаСервере
Функция EXCELВТаблицуЗначенийБП666(ДвоичныеДанные, Расширение)  

заменить на

&НаСервереБезКонтекста
Функция EXCELВТаблицуЗначенийБП666(ЗНАЧ ДвоичныеДанные, Расширение)
10 Kassern
 
26.01.21
15:56
(0) Чет я не понял, где ты во временное хранилище что-то заливаешь, Зачем тебе АдресХранилища, если ты туда ничего не помещаешь?
Суй ДД во временное хранилище на клиенте, а на сервере из хранилища получай и парси.
11 Фрэнки
 
26.01.21
15:57
(7) Я бы еще попробовал на боевой версии создать абсолютно новое подключение в базе. Т.е. новую строчку в пускаче.
И в самой базе создать нового пользователя, чтоб гарантия была, что под ним никто не входил.

Ну и протестить, как оно будет. Иногда такие глючки случаются. Создать такими подключениями просто быстрее, чем лазить повсюду в поисках кэшей.
12 Фрэнки
 
26.01.21
15:58
Этот совет с учетом того, что и копия базы и боевая в серверном режиме на одном и том же сервере.
13 Тессеракт
 
26.01.21
16:02
(10) я потом сую)
14 Тессеракт
 
26.01.21
16:02
(12) все так и есть. Спасибо за совет!
15 Тессеракт
 
26.01.21
16:03
(8) ага, сейчас начну, спасибо)
16 Злопчинский
 
26.01.21
16:04
(0) нук как была восьмерка сырая - так и осталась. шаманские действия...  сккральное знание, выйти из машины хлопнуть дверью зайти в машинуту.. тьфу...
17 1Снеговик
 
гуру
26.01.21
17:12
(16) поделитесь сакральной девяткой)
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший