Amazon EventBridge
Amazon EventBridge – это бессерверная шина событий, которая позволяет без труда объединять приложения, используя данные из ваших собственных приложений, интегрированных приложений SaaS (программное обеспечение как услуга) и сервисов AWS. EventBridge предоставляет поток данных в режиме реального времени из источников событий, например Zendesk, Datadog или Pagerduty, и направляет эти данные целевым адресатам, таким как AWS Lambda. EventBridge позволяет задавать правила пересылки, с помощью которых можно создавать архитектуры приложений, способные реагировать на информацию из любых указанных источников данных в режиме реального времени.
EventBridge упрощает создание событийно‑зависимых приложений, принимая на себя задачи по сбору и доставке данных, обеспечению безопасности, авторизации и обработке ошибок. Так как ваши приложения становятся все более связанными друг с другом через события, вам придется тратить все больше времени на поиск нужных событий и анализ их структуры для написания кода, реагирующего на эти события. Реестр схем Amazon EventBridge сохраняет структуру (схему) каждого события в совместно используемом централизованном хранилище и сопоставляет эти схемы с готовым кодом на Java, Python и Typescript, что позволяет легко добавить события в код в виде объектов. Для подключения к реестру схем и работы с ним можно использовать Консоль управления AWS, интерфейсы API и пакеты средств для Jetbrains или VS Code в формате SDK (Intellij, PyCharm, Webstorm, Rider).
Преимущества
Получение данных из приложений SaaS
EventBridge собирает данные из поддерживаемых приложений SaaS и перенаправляет их указанным сервисам AWS посредством нативной интеграции с Консолью управления AWS. Пользователи EventBridge могут использовать данные из своих SaaS‑приложений для инициации рабочих процессов, связанных с поддержкой клиентов, различными бизнес‑операциями и другими действиями. Подробнее об интегрированных партнерах SaaS.
Уменьшение объема кода
EventBridge позволяет с легкостью связывать приложения между собой, давая возможность собирать, фильтровать и доставлять события без написания собственного кода. В реестре схем EventBridge хранится коллекция схем событий, которые легко искать. Реестр дает возможность загружать привязки кода для этих схем в используемую вами интегрированную среду разработки, чтобы вы могли представить событие в качестве строго типизированного объекта в своем коде. Кроме того, в этот реестр можно легко добавлять схемы из шины событий, используя функцию обнаружения схем.
Простая разработка событийно‑зависимых архитектур
EventBridge упрощает процесс разработки событийно‑зависимых архитектур. События можно фильтровать и публиковать напрямую в EventBridge, что устраняет для целевых адресатов необходимость отслеживать источники этих событий. Организация этого процесса не требует какой‑либо настройки. Событийно‑зависимые архитектуры являются слабосвязанными и распределенными, что дает разработчикам дополнительную гибкость, а приложениям – стабильность.
Снижение операционных расходов
При использовании EventBridge не требуется распределять какие‑либо серверы, устанавливать на них исправления или управлять ими. Кроме того, отпадает необходимость в установке, обслуживании и использовании программного обеспечения. EventBridge автоматически масштабируется в соответствии с количеством полученных данных, и пользователи платят только за события, опубликованные приложениями AWS или SaaS. EventBridge обладает распределенной доступностью и отказоустойчивостью, встроенными в саму архитектуру шины.
Принцип работы
EventBridge соединяет приложения с помощью событий. Событием считается любой сигнал об изменении состояния системы, например об изменении статуса обращения в службу поддержки. Чтобы создать код реагирования на события, вам нужно знать схему этого события, в том числе заголовок события, его формат и правила проверки для каждого элемента данных в событии. В реестре схем EventBridge хранится коллекция схем событий, которые легко искать и которые создаются приложениями вашей организации, сервисами AWS и приложениями SaaS. Вы сможете скачать из реестра привязки кода для любой из сохраненных схем, что позволит представлять каждое событие в виде строго типизированного объекта.

Примеры использования
Поддержка клиентов
Пользователи сервиса могут направлять в EventBridge сигналы об изменении статуса обращений в клиентскую поддержку, инициируя автоматизированный рабочий процесс, или использовать машинное обучение для обучения и развертывания моделей анализа настроений. Например, можно использовать Amazon SageMaker для прикрепления оценки удовлетворенности клиента к исходному обращению в Zendesk.
Операции по обеспечению безопасности
События системы безопасности можно направлять в EventBridge для коммуникации с соответствующими группами пользователей через множество различных каналов. Например, можно включить события, связанные с обнаружением угроз, в рабочий процесс коммуникаций Whispir, или автоматизировать доставку отчетов системы безопасности с помощью событийных правил.
Бизнес‑операции
С помощью EventBridge можно организовать получение, обработку и доставку операционных данных от одной системы к другой. Например, с помощью EventBridge можно организовать передачу инцидентов PagerDuty в хранилище данных Amazon Redshift, что позволит анализировать скорость устранения возникающих проблем и среднюю операционную нагрузку на инженерные команды.
Мониторинг приложений
EventBridge позволяет собирать потоки различных метрик приложений в режиме реального времени, что дает возможность быстро реагировать на изменения в производительности этих приложений. Например, можно организовать передачу уведомлений об объемах нагрузки из Datadog в EventBridge, что позволит инициировать функцию AWS Lambda, которая масштабирует инстансы EC2 клиента, чтобы справиться с ожидаемым ростом нагрузки.
Регистрация каталогов
Регистрацию каталогов можно автоматизировать, организовав передачу пользовательской информации в EventBridge для инициации соответствующего рабочего процесса. Например, можно организовать пересылку событий создания новой учетной записи из OneLogin в EventBridge и связать их с функцией AWS Lambda, которая откроет только что нанятым инженерам доступ к необходимым техническим ресурсам.
Обновления данных клиентов
Изменения в данных клиентов, которые фиксируются в системах управления отношениями с клиентами (CRM), можно использовать для инициации рабочих процессов в других системах. Например, при смене статуса позиции в SugarCRM на Closed Won можно направлять соответствующее событие в EventBridge и инициировать рабочий процесс, который передаст необходимые для расчета данные в бухгалтерскую систему.