Взаимодействие приложений Flashcards

1
Q

Интеграция приложений

A

Взаимодействие независимых друг от друга приложений называют интеграцией. Главная задача интеграции — наладить обмен информацией между приложениями. Для решения этой задачи существует несколько стилей взаимодействия.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Стиль взаимодействия

A

Это общепринятый способ организации элементов архитектуры системы, направленный на решение определённой проблемы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Какие бывают режимы взаимодействия приложений

A

Синхронный и асинхронный

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Стиль взаимодействия приложений - Передача файлов (File Transfer)

A

Приложение создаёт файлы с данными, которые необходимы другим приложениям, и использует файлы, созданные другими приложениями.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Стиль взаимодействия приложений - Общая база данных (Shared Database)

A

Данные, необходимые разным приложениям, хранятся в одной базе данных.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Стиль взаимодействия приложения - Удалённый вызов процедур (Remote Procedure Invocation — RPI или Remote Procedure Call — RPC).

A

Каждое приложение описывает для других приложений процедуры, которые можно вызвать удалённо (например, с другого компьютера), чтобы обменяться данными или дать указания.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Процедура в стилях взаимодействия приложений

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Стиль взаимодействия приложения - Обмен сообщениями (Messaging)

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Message-oriented middleware — MOM

A

промежуточное ПО, которое обеспечивает обмен сообщениями между приложениями. Его также называют системой обмена сообщениями.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Зачем нужно message-oriented middleware — MOM во взаимодействии приложений

A

MOM решают проблему ненадёжности сети. Сбой в сети — это одна из самых распространённых причин утраты сообщения во время его доставки. MOM гарантирует доставку сообщения с компьютера отправителя на компьютер получателя вне зависимости от сбоев в сети. Чтобы сообщение было гарантировано доставлено, МОМ отправляет его снова и снова, пока оно не будет принято получателем.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Основные архитектурные элементы системы обмена сообщениями?

A

Сообщение (message).
Канал (channel).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Что такое сообщение в системе обмена сообщениями?

A

Это неделимая единица данных, которая может быть передана через канал. Может состоять из записей файлов, объектов, строк таблицы БД и проч.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Из чего состоит сообщение в системе обмена сообщениями?

A

Заголовок:
Содержит информацию, необходимую для доставки - адрес компьютера отправителя и адрес компьютера получателя.
Тело:
Содержит данные, важные приложению-получателю. Для процесса обмена сообщениями эта информация не важна.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Что такое канал в системе обмена сообщениями?

A

Каналы — это виртуальная труба, соединяющая отправителя и получателя, через которую доставляются сообщения.
Приложение-отправитель помещает сообщение не просто в систему обмена сообщениями, а в один из её каналов. Приложение-получатель извлекает сообщение не просто из системы обмена сообщениями, а из конкретного канала. Каналы делают однонаправленными - в одну сторону или отправка, или получение

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Из каких этапов состоит процесс доставки сообщения через канал в системе обмена сообщениями?

A

Создание
Отправка
Доставка
Получение
Обработка

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Типы каналов в процессе доставки сообщения через канал в системе обмена сообщениями?

A

Точка-точка (point-to-point).
Издание-подписка (publish-subscribe — Pub/Sub).

17
Q

Тип канала точка-точка (point-to-point)

A

Канал «точка-точка» работает по принципу «первым пришёл, первым ушёл» (first in, first out — FIFO). Сообщения становятся в очередь на доставку: сообщение первым пришло в канал и первым должно из него выйти. Первое сообщение в очереди будет доставлено первым, второе — вторым и так далее.
Канал «точка-точка» используют в тех случаях, когда на одно сообщение нужно отреагировать только единожды. Например, при пополнении банковского счёта или оформлении заказа.
Если одно сообщение должно быть доставлено не одному, а всем приложениям-получателям, то следует использовать канал «издание-подписка».

18
Q

Тип канала издание-подписка (publish-subscribe — Pub/Sub)

A

Обеспечивает доставку копий сообщения отправителя множеству получателей. Отправителя называют издателем (publisher), а получателей — подписчиками (subscribers). «Издание-подписка» представляет собой несколько каналов: один входящий канал, куда издатель помещает сообщение, и множество исходящих каналов, откуда подписчики извлекают копии сообщения. Каждому подписчику предоставляется отдельный исходящий канал — это обеспечивает доставку сообщения только один раз каждому из них.

19
Q

Архитектурный шаблон гарантированная доставка

A

Обеспечивает передачу сообщений, находящихся в системе обмена сообщениями на момент её отказа, после восстановления её работоспособности.
Отправитель может быть уверен, что сообщение будет доставлено получателю даже в случае отказа системы обмена сообщениями.
Гарантированная доставка обеспечивается хранением сообщений в постоянном хранилище данных — на жёстком диске компьютера.

20
Q

Архитектурный шаблон постоянный подписчик

A

Шаблон системы обмена сообщениями, который гарантирует, что получатель не пропустит ни одного сообщения, даже если он какое-то время был неактивен.
Процесс взаимодействия с использованием шаблона «постоянного подписчика» может выглядеть так:
Постоянный подписчик устанавливает соединение с каналом (становится активным).
Издатель помещает сообщения в канал.
Постоянный подписчик извлекает из канала сообщения издателя.
Постоянный подписчик закрывает соединение (становится неактивным).
Издатель помещает сообщения в канал.
Система обмена сообщениями сохраняет сообщения для постоянного подписчика.
Постоянный подписчик вновь становится активным.
Постоянный подписчик извлекает из канала сохранённые системой сообщения.

21
Q

Какие есть технологии разработки систем обмена сообщениями?

A

Самые популярные протоколы для обмена сообщениями это:
Веб-сокет (WebSocket)
Веб-сокет заменяет протокол HTTP. Он используется для реализации мессенджеров.
Передача последовательности сообщений с телеметрическими данными (Message Queuing Telemetry Transport — MQTT)
Используется для реализации систем Интернета вещей (Internet of Things — IoT). Примером системы Интернета вещей является умный дом.
Расширенный протокол управления очередью сообщений (Advanced Message Queuing Protocol — AMQP)
Может использовать защищённые SSL-соединения. Используется для внутренних систем предприятия, так как обеспечивает быструю и надёжную передачу сообщений.

22
Q
A