Таблица форматов и протоколов передачи данных

Формат

Технология

Где используется

Плюсы

Минусы

JSON

Веб-API, мобильные приложения

Лёгкий, читаемый, везде поддерживается

Не самый компактный, нет строгой схемы

XML

Банки, гос-системы, старые SOAP-сервисы

Гибкость, строгие схемы (XSD)

Тяжёлый, многословный

YAML

Конфиги (Docker, Kubernetes, CI/CD)

Читаемость, простота

Не всегда удобен для парсинга, ошибки отступов

CSV

Импорт/экспорт таблиц, Excel, БД

Простота, поддержка везде

Нет вложенных структур

Protobuf

gRPC, микросервисы, высокие нагрузки

Компактность, скорость

Сложнее читать и отлаживать

Avro

Big Data (Kafka, Hadoop)

Схемы, совместимость

Специфичен, требует экосистемы

Thrift

Большие распределённые системы

Быстрый, поддержка многих языков

Сложность, редко применяется вне крупных компаний

Протокол

Технология

Где используется

Плюсы

Минусы

REST (HTTP/HTTPS)

Веб-API

Простота, универсальность

Избыточность запросов

GraphQL

Современные API (Facebook, GitHub)

Гибкость, клиент запрашивает только нужное

Более сложная настройка сервера

WebSocket

Чаты, биржи, игры (реальное время)

Двусторонняя связь, быстрый обмен

Нужно держать соединение

gRPC

Микросервисы, backend

Очень быстрый, бинарный

Требует Protobuf и поддержку HTTP/2

MQTT

IoT (умные устройства, датчики)

Лёгкий, оптимизирован для малых устройств

Не подходит для больших данных

AMQP (RabbitMQ, Kafka)

Очереди сообщений, асинхронные системы

Надёжность, масштабируемость

Сложная настройка