Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Переход между процедурами в копии базы длится 5 сек, а боевой 20+ мин

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

заменить на

&НаСервереБезКонтекста
Функция EXCELВТаблицуЗначенийБП666(ЗНАЧ ДвоичныеДанные, Расширение)
   Kassern
 
10 - 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) нук как была восьмерка сырая - так и осталась. шаманские действия...  сккральное знание, выйти из машины хлопнуть дверью зайти в машинуту.. тьфу...
   1Снеговик
 
17 - 26.01.21 - 17:12
(16) поделитесь сакральной девяткой)

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.