TGViewer
Записки системного архитектора Записки системного архитектора @sysarchthoughts · 269 subscribers
Post #173 290

Forwarded from Системный сдвиг

Я привез на Flow обновленную карту интеграций.

Обновлений много:

* Изменена структура: добавлены колонки "Семантика взаимодействия", "Стандарты", "Гарантии доставки"
* Добавлена семантика для REST: ресурсный стиль (REST уровня 2) и гипермедиа стиль (HATEOAS, REST уровня 3)
* Добавлены JSON:API, HAL, JSON-LD
* SOAP включен в асинхронные методы
* Добавлен WS-RM для SOAP — протокол гарантированной доставки
* Добавлены подходы к целостности транзакций: ACID и BASE
* Добавлено описание паттернов API Gateway и ESB
* Добавлено описание ETL-процесса
* Добавлена CAP-теорема
* Добавлено описание семантик гарантированной доставки
* Раздел "Особенности" объединен с разделом "Когда использовать"
* Исправлены опечатки

А самое главное — я, кажется, придумал шаблон для описания любой технологии интеграции!

Какие вопросы мы должны задать, когда смотрим на технологию?
1. Что это? Протокол, язык, набор принципов, конкретный продукт?
2. Какой верхнеуровневый паттерн? (по Грегору Хопу: файловый обмен, общая БД, удаленный вызов, сообщения)
3. Режим взаимодействия — синхронный или асинхронный? (скорость против пропускной способности)
4. Семантика запроса / интеграционный стиль: RPC, Query, ресурсный (REST 2 lvl — ресурсы и методы HTTP), гипермедиа (REST 3 lvl, HATEOAS), стриминг, публикация/подписка — в общем, как мы смотрим на интеграцию?
5. Протокол: опираемся на HTTP или используем что-то низкоуровневое? Если HTTP — то используем ли строку запроса и хедеры? То есть, получится ли подключить кэширование, маршрутизацию и все эти готовые штуки?
6. Формат сериализации: текстовый или бинарный? Есть ли схема? Обязательна ли она? Насколько строгая типизация? Есть ли сложные структуры: вложенные объекты, массивы, maps, множества?
7. Есть ли возможность определять и передавать кастомные ошибки?
8. Есть ли встроенные средства гарантированной доставки, и какие семантики поддерживаются?
9. Что с безопасностью? Шифрование, аутентификация, контроль прав.
10. Скорость сериализации / десериализации, размер сообщений
11. Есть ли инструменты преобразования данных?
12. Есть ли язык определения интерфейсов / спецификаций?
13. Статус стандартизации / распространенность / надежность / поддержка в разных языках и фреймворках
14. Какие особенные фишки есть у технологии?
15. С какими проблемами мы столкнемся?

Вот такие 15 вопросов, возможно ещё что-то появится. Но уже с этим можно оценивать и сравнивать разные технологии — насколько они близки, что будет стоить переход и имеет ли он смысл, как вообще об этом думать.

Ссылка на актуальную версию карты: https://disk.yandex.ru/i/k69r0Qr39_1P-w
Яндекс Диск Integrations Tech 1.1.0.pdf Посмотреть и скачать с Яндекс Диска
  • 👍 1
More from @sysarchthoughts
  1. Aug 4, 2026Мне жена как-то сказала, что только в зрелом возрасте осознала трагедию сказки о рыбаке и…
  2. Jul 2, 2026Я не давлю. Я пытаюсь опереться.
  3. Apr 2, 2026Пригласили меня тут в жюри школьного проектного конкурса, и вот что хочу сказать: мало кто…
  4. Mar 22, 2026Как технические границы делают все бизнес-критичным? Ключевой вопрос, которому посвящена э…
  5. Mar 22, 2026Неуловимо напоминает "основной закон органической химии". Если смешать бочку мёда и бочку…
  6. Mar 10, 2026(продолжение рассуждений про больницу) Что мне тут понравилось, что беру на заметку. 1. Че…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →