TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Системный Аналитик

30 Aug 2023, 13:35

Открыть в Telegram Поделиться Пожаловаться

Типы интеграции систем. Преимущества и недостатки

Выделяют 4 основных типа интеграции:
1. Файловая интеграция
2. Общая база данных
3. Удалённый вызов процедур
4. Обмен сообщениями

1️⃣ Файловая интеграция. Cистема А передает файл системе Б в определенном формате (например, CSV или XML). Файл с данными размещается в хранилище (например, файловом сервере), откуда другие системы могут его считать.

🟢 Преимущества

▫️Универсальность. Файлы поддерживаются любой операционной системой и языком программирования

▫️Простота. Просто закинули данные в файлик и готово

🔴 Недостатки

▪️Скорость. Обмен данными через файлы может быть медленным и приводить к рассинхронизации данных.

▪️Ненадежность. Нет гарантии, что файл дойдет до целевой системы и будет корректно обработан.

2️⃣ Общая база данных. Система А размещает свои данные в общей БД, из которой система Б может спокойно читать.

🟢 Преимущества

▫️Высокая скорость. Нет нагрузки на сеть. Данные доступны для чтения сразу после их записи в общую БД

▫️Единый формат данных и их целостность

🔴 Недостатки

▪️Высокая связанность. Любое изменение в схеме общей базы данных требует согласования всех интегрируемых приложений.

▪️Сложность проектирования. БД общая, схема БД общая. Нужно учесть особенности всех систем, а это очень трудоёмко и долго.

▪️Точка отказа. Если БД выйдет из строя, то конец всему.

3️⃣ Удалённый вызов процедур, или интеграция через API. Система А удаленно вызывает метод системы Б, передавая туда нужные параметры. Самые популярные способы реализовать этот подход: REST, SOAP, GraphQL и gRPC и т.д.

🟢 Преимущества

▫️Гибкость. Разработка и развертывание сервисов может быть выполнена независимо и быстро, без влияния на другие сервисы.

▫️Инкапсуляция. Данные и логика их обработки скрыты внутри удаленной процедуры, что повышает безопасность и целостность данных.

▫️Масштабируемость. Каждый сервис может быть масштабирован по отдельности в зависимости от нагрузки и потребностей.

🔴 Недостатки

▪️Контракты. Вызывающая система должна знать контракт вызываемой системы, а также ее доступность и адрес. Любое изменение в API может потребовать изменения в вызывающей системе.

▪️Сложность интеграции и эксплуатации. Распределение логики и данных по нескольким сервисам может затруднить координацию и мониторинг интеграционного решения.

▪️Производительность. Вызов удаленной процедуры может быть менее эффективным, чем локальный вызов, из-за сетевых затрат и преобразования форматов данных.

4️⃣ Обмен сообщениями. Это асинхронный способ взаимодействия, при котором система А формирует сообщение и кладёт его в очередь. Система Б читает это сообщение и выполняет определённую логику. К этому способу относятся брокеры очередей сообщений (например, Kafka или RabbitMQ) и шины данных (ESB).

🟢 Преимущества

▫️Слабая связанность. Компоненты не нуждаются в знании друг о друге, они общаются только через брокер сообщений. Это повышает гибкость и масштабируемость

▫️Гарантированная доставка данных. Брокер сообщений может хранить и пересылать сообщения до тех пор, пока они не будут доставлены получателю. Это повышает надежность интеграционного решения.

▫️Масштабируемость. Сравнительно легко: просто добавляем больше ёмкости в наш брокер

▫️Асинхронность. Система А не должна ждать ответа от системы Б и может продолжать работу. Не требуется одновременной доступности обоих систем.

🔴 Недостатки

▪️Сложность интеграции и эксплуатации. Разработка и поддержка интеграционного решения требует знания и управления брокером сообщений, его коннекторами, форматами и правилами обмена сообщениями.

▪️Производительность. Обмен сообщениями может быть менее эффективным, чем прямой вызов, из-за сетевых затрат и дополнительной обработки сообщений брокером.

▪️Трудности согласования данных. Обмен сообщениями может приводить к рассинхронизации данных между системами из-за асинхронности.

В следующем посте поговорим о критериях выбора типа интеграции.

📎 Материалы по теме
1. Шаблоны интеграции корпоративных приложений — книга Хопа и Вульфа
2. Интеграции IT систем и при чем тут бар? — статья на Хабре

#интеграции

1.3k 0 61 30
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot