• Главная
  • Курсы
  • События
  • Блог
  • Контакты
  • Магазин
    • Загрузки
  • Партнерка
  • Обо мне
Есть вопросы? Звоните:
+7 (917) 449 09 97
admin@nizamov.school
РегистрацияВход
nizamov.school
  • Главная
  • Курсы
  • События
  • Блог
  • Контакты
  • Магазин
    • Загрузки
  • Партнерка
  • Обо мне

Blog

  • Главная
  • Блог
  • Blog
  • XDTO. XML VS JSON ВЫБИРАЕМ ЧТО ЛУЧШЕ

XDTO. XML VS JSON ВЫБИРАЕМ ЧТО ЛУЧШЕ

  • Опубликовано Илья Низамов
  • Разделы Blog
  • Дата 03.07.2020
  • Комментарии Нет комментариев

Подписывайтесь в соц сетях. Там провожу конкурсы и публикую еще больше контента.

Vk Youtube Telegram Instagram Facebook Twitter

Привет программисты 1С. Сегодня я сделал небольшой тест чтобы выбрать лучшие методы передачи информации от 1С к 1С и сайтам.

Для проведения тестирования я написал конфигурацию 1С, которую вы можете скачать и посмотреть мою реализацию.

Скачать конфигурацию

Запишись на тренинг

НАУЧИСЬ РАБОТАТЬ С XDTO В 1С ЗА ОДНО ЗАНЯТИЕ
ЗАПИСАТЬСЯ

В конфигурации есть справочник номенклатура. Вот его мы и будем выгружать. Есть кнопка генерации номенклатуры, количество позиций вы можете задать в коде.

Перед каждым тестом я рекомендую перезапускать конфигурацию. Результаты всех тестов в миллисекундах.

Выгрузка загрузка JSON

После подготовки базы. Вы можете посмотреть скорость выгрузки просто в JSON. С помощью ЗаписьJSON и ЗаписатьJSON. Тут правда надо понимать, что данные для такой выгрузки надо предварительно корректно сформировать.

У меня на 10 000 позиций номенклатуры получился вот такой результат:

Выборка = 808
Формирование JSON = 41

Теперь сразу загрузим данный файл обратно.

Десериализация JSON = 53
Запись JSON = 13 401

Можно ускорить загрузку, загружая в транзакции. 

Десериализация JSON = 53
Запись JSON = 7 171

ФабрикаXDTO. Выгрузка загрузка XML

Теперь попробуем выгрузить тот же справочник с помощью ФабрикаXDTO. Используя данный метод, нам приходится тратить лишнее время на получение объектов из базы. Получается запрос в цикле. Но мы получаем очень простой и удобный код.

Результаты выгрузки в XML:

Выборка = 3 314
Формирование XDTO (XML) = 288

Загрузим файл обратно.

Десериализация XDTO (XML) = 3 187
Запись XDTO (XML) = 51 830

Ускорим загрузку в транзакции.

Десериализация XDTO (XML) = 3 238
Запись XDTO (XML) = 6 108

Результат в транзакции просто отличный.

СериализаторXDTO. Выгрузка загрузка JSON

Тоже самое, что и с фабрикой. Но мы получаем простой код, формат JSON и привязку к типам. Результаты выгрузки можете видеть ниже.

Выборка = 3 595
Формирование XDTO (JSON) = 97

И обратная загрузка.

Десериализация XDTO (JSON) = 3 158
Запись XDTO (JSON) = 50 986

И в транзакции.

Десериализация XDTO (JSON) = 3 069
Запись XDTO (JSON) = 6 231

Вывод

Самый быстрый режим оказался JSON, как по выгрузке, так и по загрузке. Его удобно применять при обмене с сайтом. Но подготовка данных и их обратная загрузка значительно увеличивает код.

Сериализация и десериализация объектов в XML и JSON в принципе сопоставимы. Удобно выгружать и загружать данные. Внутри файлов содержится информация о типах. И если при загрузке данных особой разницы не видно, то при сериализации в JSON мы видим кратное ускорение, плюс этот JSON вполне легко преобразовать на стороне сайта.

Выбор инструментов за вами, и не забываем режим загрузки в транзакции, что дает сильный прирост производительности.

author avatar
Илья Низамов

Предыдущая запись

XDTO. ФабрикаXDTO
03.07.2020

Следующая запись

XDTO ДЛЯ НАЧИНАЮЩИХ. БЛОК 1 ИЗ ПОЛНОГО ЗАНЯТИЯ
19.07.2020

Вам также может понравиться

gpt 1c
CHAT GPT 1C. МИКРОСЕРВИС PYTHON FASTAPI
17 сентября, 2023
Pyinstaller fastapi uvicorn small
PYINSTALLER FASTAPI UVICORN. УПАКОВЫВАЕМ В EXE ФАЙЛ
7 сентября, 2023
1с 8.3.23
1С 8.3.23 ЧТО НОВОГО
27 апреля, 2023

Оставьте ответ Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поиск

Рубрики

  • Blog

Ссылки

  • Политика конфиденциальности
  • Публичная оферта

Сайт создан в NIZAMOV.studio

Регистрация с помощью:

Войти Google Войти Twitter Войти Vkontakte

Вход через логин и пароль

Забыли пароль?

Нет аккаунта? Регистрируйся прямо сейчас

Register a new account

Are you a member? Login now