#0
by 7OH
Добрый день. Ищу совета - как сжимать данные на клиенте для отправки на сервер. Пример - читаем на клиенте файл (так как у серверов доступа нет обычно). Прочитанное надо отправить для анализа и обработки на сервер. В моём случае размер данных, отправляемых на сервер - 36 Мб - и приходится довольно долго ждать именно передачу параметра. Хотелось бы сжимать (думаю текстовые данные должны существенно сжаться) и отдавать на сервер. хран = Новый ХранилищеЗначения(стрВнутр, Новый СжатиеДанных); Но (как вычитал на этом же форуме) хоть в хэлпе и написано про ХранилищеЗначения, что "Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер)." при этом стабильно получаем "Тип не определен (ХранилищеЗначения) (Проверка: Тонкий клиент)"
#3
by Лефмихалыч
у меня в СП написано, про хранилище, что Доступность: Сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
#4
by DmitrO
ХранилищеЗначения доступно только на сервере (в СП ошибка). Предлагаю сжать во временный файл на клиенте объектом ЗаписьZipФайла, передать на сервер как двоичные данные.
#5
by 7OH
как вариант можно попробовать. Работа с диском может занять много больше времени (запись + упаковка + чтение), чем передача текущего. Всё таки в памяти работа на порядки быстрее. Попробую с замером.
#6
by Лефмихалыч
может просто файлы выкладывать в какое-то место, куда и у сервера, и уклиента есть доступ?
#7
by RomanYS
Какова вероятность наличия такого места с каналом вдвое быстрее чем клиент-сервер? Имхо почти нулевая
#9
by RomanYS
В вопрос и мое мнение, ничего больше. Просто я плохо представляю ситуацию, когда канал клиент-сервер меньше чем доступный с обоих сторон канал к третьему ресурсу. Хотя придумать такое можно.
#10
by 7OH
вопрос ставим принципиально - передаём с вёб-клиента на сервер. Вряд ли у них есть общий доступ. остался вопрос - как сохранить структуру в файл? ЗначениеВСтрокуВнутр на сервере тоже не доступно. Эксперимент провёл ради интереса со сторокой, обработанной на сервере через ЗначениеВСтрокуВнутр. Передача структуры на сервер и возврат стрВнутр - 106 сек. Передача на сервер стрВнутр - 6 сек. Сохранение в файл - 12 сек. Упаковка файла - 7 сек. Чтение двоичных данных из зип - 0.1 сек. Передача на сервер двоичных данных - 0.6 сек. Итого: 6 сек против 20 сек уже сжатой (106 сек) строки. То есть через файл не вариант даже с учетом того, что в файл структуру ещё как-то записать надо без сервера.
#11
by DmitrO
понятно что не писать данные на диск, а получить что-то сжатое в памяти и это сразу передать - будет быстрее. Но суть в том, что 1С так попросту не умеет. " и приходится довольно долго ждать именно передачу параметра" А как передавал, ДвоичнымиДанными? Надо попробовать через ПоместитьФайлы (НачатьПомещениеФайлов).
#12
by Лефмихалыч
зачем сохранять структуру в файл? Она легко передается между клиентом и сервером безо всяких там файлов
#15
by 7OH
Вот именно при передаче структуры с данными (с большим размером) - долго ждёт. А при поместить файл - он разве его при этом на сервер не будет отправлять ? - зря я написал "строку" - думал так легче будет. У меня в структуре загруженные данные с листов XLS - данных много.
#16
by disla
Я делал ПоместитьВоВременноеХранилище на клиенте, а потом ПолучитьИзВременногоХранилища на сервере, передавал двоичные данные. И наоборот также.
#23
by H A D G E H O G s
Шаг первый: &НаСервереБезКонтекста Процедура ОбработатьДанныеНаСервере(Знач СтруктураФайла)
#24
by H A D G E H O G s
А по факту у тебя тормоза не на передаче данных, а на сериализации/десериализации.
#25
by 7OH
это и понятно "Передача на сервер стрВнутр - 6 сек." самому рисовать преобразователь структуры в строку как-то не очень улыбается. Под рукой 8.3.6 нету, чтобы проверить как с этим справится JSON (и возможна ли работа с ним на клиенте).
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- MS word Слетели данные диаграммы, как восстановить ?
- УТ 11 Присоединенные файлы
- Отбор по длине строки в запросе
- Куча сеансов тонкого клиента 1С: 8.3
- Программно создать упаковку в erp 2.1
- Ошибка деления на ноль в типовой ЗУП при расчете среднего дневного заработка
- Бесшовная интеграция 1С: Управление холдингом с 1С: Документооборот
- Как передать параметр из ПКС в ПКО (после загрузки)
- Счет-фактура выданный на основании кассового отчета? Бит_отель на БП 2.0
- УПП: Два аванса в другой валюте в УПП не засчитываются целиком при отгрузке.
- Как вытащить данные из регистра сведений по дате документа
- БГУ 2.0 закупки. обмен с оос "не выбран документ для выгрузки"
- ERP 2.1 Ресурсная спецификация
- (COMОбъект): Invalid class string
- закрепить окно формы в 8.3.7
- Как создать индексированный реквизит в документе 1с77 ms sql?
- Розница, редакция 1.0 (1.0.16.4) -> Розница, редакция 2.1
- Программно распечатать только 1 страницу табличного документа
- где посмотреть остатки в кассе ККМ?
- Форма списка заказов УТ 11с динамическим списком.