Как организовать обмен. Веб-сервис, трафик

1. x2z7yy 16.03.16 14:36 Сейчас в теме
Сейчас обмен делается строками XML через веб-сервис. Собственно эти данные, даже в хранилище значения со степенью сжатия максимальным, большИе по объему трафика. ЗаписьZip - на мобильной платформе нет. Как можно организовать нормальную архивацию данных перед отправкой?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. dj_serega 390 16.03.16 16:59 Сейчас в теме
(1) x2z7yy, Попробуйте переписать на http.
10. SirStefan 53 14.04.16 16:58 Сейчас в теме
У меня обмен через почту. На мисте нашел хороший вариант без сохранения в файл:
ХМЛ = Новый ЗаписьXML;
ХМЛ.УстановитьСтроку();
...
стрХМЛ = ХМЛ.Закрыть();
Хранилище = Новый ХранилищеЗначения(стрХМЛ,Новый СжатиеДанных(1));
БезопаснаяСтрока = XMLСтрока(Хранилище);
ДвоичныеДанные = Base64Значение(БезопаснаяСтрока);
...
и эти двоичные данные напрямую в письмо во вложение
Показать


на смартфоне разбираю
Данные = Письмо.Вложение.Получить();
БезопаснаяСтрока = Base64Строка(Данные);
Хранилище = XMLЗначение(Тип("ХранилищеЗначения"),БезопаснаяСтрока);
ЧтениеХМЛ = Новый ЧтениеXML;
ЧтениеХМЛ.УстановитьСтроку(Хранилище.Получить());
...

Размер файла вложения уменьшился в 5 раз
fenixnow; dj_serega; flyer; +3 Ответить
11. flyer 231 15.04.16 10:32 Сейчас в теме
(10) SirStefan, хорошая идея кстати. если у почтовика ограничения нет на вложение то идея удачная
13. x2z7yy 21.04.16 14:32 Сейчас в теме
(10), у меня обмен на веб-сервисах. И отдаю на мобилку сразу:

Возврат Новый ХранилищеЗначения(ЗакрытаяЗаписьXML, Новый СжатиеДанных(9));
14. SirStefan 53 22.04.16 04:53 Сейчас в теме
(13), не сильно нужно. 800 кб уменьшился при 1 до 160, а при 9 до 130. Разница невелика, но больший режим сжатия работает дольше.
15. x2z7yy 22.04.16 06:12 Сейчас в теме
(14) так в том то и дело, что оно вообще не сжимается толком, в (6) я описал.
16. flyer 231 22.04.16 10:06 Сейчас в теме
(15) x2z7yy, с 800 до 130 это хорошее сжатие.
18. SirStefan 53 24.04.16 17:16 Сейчас в теме
(15), у меня стойкое ощущение, что пытаешься сжать уже сжатое. Потому и не сжимается толком. Посмотри сам файл обмена получаемый и данные которые подсовываются для сжатия.
3. x2z7yy 17.03.16 11:53 Сейчас в теме
в хттп, есть какие-то встроенные методы архивации передаваемого трафика?
4. flyer 231 17.03.16 14:00 Сейчас в теме
(3) x2z7yy, степень сжатия в хранилище достаточно сжимает по сравнению с zip. вы может собираетесь передавать что то не сжимаемое? картинки видео то нет смысла. наверное организацию обмена пересмотрите.
dj_serega; +1 Ответить
6. x2z7yy 17.03.16 18:14 Сейчас в теме
(4) был проведен следующий эксперимент:
включен замер трафика на мобильном устройстве:
1. Обмен пустой - трафика 300 Кб: файл Центр_Моб и Моб_Центр по 1Кб. Тут понятно почему так, из-за программного обращение к веб-сервису, на получение его структуры требуется трафик.
2. Обмен "полный" - трафика 1900 Кб: файл Центр_Моб и Моб_Цент 1800Кб и 1Кб, соответственно.

Может я что-то не то делаю, но по тому что получилось я сделал вывод, что передача Хранилища со степенью сжатия (9) особо ничего не меняет.
Да, если этот файл 1800Кб сжать даже просто нормальной степерью схатия ВинРара, файл не больше 100Кб выходит (в ХМЛ абсолютно сжимаемые данные, там нет картинок и т.д.).
5. dj_serega 390 17.03.16 16:42 Сейчас в теме
(3) x2z7yy,
По сравнению с имеющимися в платформе SOAP web-сервисами, HTTP-сервисы имеют ряд преимуществ:

Простота программирования клиента таких сервисов;
Потенциально меньший объем передаваемых данных;
Потенциально меньшая вычислительная нагрузка;
HTTP-сервисы ориентированы на «ресурсы», в то время как SOAP сервисы ориентированы на «действия».


Источник
7. x2z7yy 28.03.16 07:49 Сейчас в теме
Куда еще можно капнуть?
9. flyer 231 14.04.16 12:42 Сейчас в теме
(7) x2z7yy, компоненту акоде попробуйте она сжимает. может через ЗапуститьПриложение что придумаете это если на андроиде
8. SirStefan 53 14.04.16 10:46 Сейчас в теме
12. SirStefan 53 15.04.16 18:00 Сейчас в теме
А что мешает строку разбить на несколько писем? Или передавать данные частями? Смартфон я думаю все равно не потянет обмены мегабайт по 100.
17. poyson 22.04.16 10:15 Сейчас в теме
может промежуточное сжатие данных через компоненту внешнюю использовать? Ну либо ВПН при обмене вроде бы сжимает данные
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)