

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon EventBridge의 이벤트 버스 개념
<a name="eb-what-is-how-it-works-concepts"></a>

이벤트 버스에 구축된 이벤트 기반 아키텍처의 주요 구성 요소를 자세히 살펴보겠습니다.

## 이벤트 버스
<a name="eb-bus-concepts-buses"></a>

이벤트 버스는 [이벤트](eb-events.md)를 수신하여 0개 이상의 목적지 또는 *대상*에 전달하는 라우터입니다. 다양한 소스의 이벤트를 여러 대상으로 라우팅해야 할 때 이벤트 버스를 사용하며, 대상으로 전달하기 전에 선택적으로 이벤트를 변환할 수 있습니다.

계정에는 AWS 서비스에서 이벤트를 자동으로 수신하는 *기본 이벤트 버스*가 포함되어 있습니다. 다른 방법:
+ *사용자 지정 이벤트 버스*라고 하는 추가 이벤트 버스를 생성하고 수신할 이벤트를 지정합니다.
+ SaaS 파트너로부터 이벤트를 수신하는 *[파트너 이벤트 버스](eb-saas.md)*를 생성합니다.

이벤트 버스의 일반적인 사용 사례는 다음과 같습니다.
+ 이벤트 버스를 서로 다른 워크로드, 서비스 또는 시스템 간의 브로커로 사용합니다.
+ 애플리케이션에서 여러 이벤트 버스를 사용하여 이벤트 트래픽을 분할합니다. 예를 들어 개인 식별 정보(PII)가 포함된 이벤트를 처리하는 버스를 생성하고, 그렇지 않은 이벤트를 처리하는 또 다른 버스를 생성합니다.
+ 여러 이벤트 버스의 이벤트를 중앙 집중식 이벤트 버스로 전송하여 이벤트를 집계합니다. 이 중앙 집중식 버스는 다른 버스와 동일한 계정에 있을 수 있지만 다른 계정 또는 리전에 있을 수도 있습니다.

![\[AWS 서비스, 사용자 지정 앱 또는 파트너 소스에서 이벤트를 수신하는 다양한 이벤트 버스입니다.\]](http://docs.aws.amazon.com/ko_kr/eventbridge/latest/userguide/images/bus-overview-types_eventbridge_conceptual.svg)


## 이벤트
<a name="eb-bus-concepts-events"></a>

간단히 말해 EventBridge 이벤트는 이벤트 버스 또는 파이프로 전송되는 JSON 객체입니다.

이벤트 기반 아키텍처(EDA)의 맥락에서 이벤트는 주로 리소스 또는 환경의 변화를 나타내는 지표입니다.

자세한 내용은 [Amazon EventBridge의 이벤트](eb-events.md) 단원을 참조하십시오.

## 이벤트 소스
<a name="eb-bus-concepts-event-sources"></a>

EventBridge는 다음과 같은 이벤트 소스로부터 이벤트를 수신할 수 있습니다.
+ AWS 서비스
+ 사용자 정의 애플리케이션
+ 서비스형 소프트웨어(SaaS) 파트너

## 규칙
<a name="eb-bus-concepts-rules"></a>

규칙은 들어오는 이벤트를 수신하고 적절한 이벤트를 대상으로 전송하여 처리합니다. 다음 중 하나를 기반으로 각 규칙이 대상을 간접 호출하는 방법을 지정할 수 있습니다.
+ 이벤트와 일치하는 하나 이상의 필터가 포함된 [이벤트 패턴](eb-event-patterns.md)입니다. 이벤트 패턴에는 다음과 일치하는 필터가 포함될 수 있습니다.
  + **이벤트 메타데이터** - 이벤트 소스, 이벤트가 발생한 계정 또는 리전 등의 이벤트 *관련* 데이터입니다.
  + **이벤트 데이터** - 이벤트 자체의 속성입니다. 이러한 속성은 이벤트에 따라 달라집니다.
  + **이벤트 콘텐츠** - 이벤트 데이터의 실제 속성 *값*입니다.
+ 정기적으로 대상을 간접 호출하는 일정입니다.

  [예약된 규칙은 EventBridge 내에서](eb-create-rule-schedule.md) 또는 [EventBridge 스케줄러를 사용하여 지정](using-eventbridge-scheduler.md)할 수 있습니다.
**참고**  
예약된 규칙은 EventBridge의 레거시 기능입니다.  
EventBridge는 대규모로 예약된 작업을 중앙에서 생성, 실행 및 관리하는 보다 유연하고 강력한 방법인 EventBridge 스케줄러를 제공합니다. EventBridge 스케줄러를 사용하면 반복 패턴에 대해 cron 및 rate 표현식을 사용하여 일정을 만들거나 일회성 간접 호출을 구성할 수 있습니다. 전송을 위한 유연한 기간을 설정하고, 재시도 제한을 정의하고, 실패한 API 간접 호출의 최대 보존 시간을 설정할 수 있습니다.  
스케줄러는 사용자 지정이 가능하며 더 광범위한 대상 API 작업 및 AWS 서비스를 통해 예약된 규칙보다 향상된 확장성을 제공합니다. 스케줄러를 사용하여 일정에 따라 대상을 간접적으로 호출하는 것이 좋습니다.  
자세한 내용은 [일정 생성](using-eventbridge-scheduler.md#using-eventbridge-scheduler-create) 또는 *[EventBridge 스케줄러 사용 설명서를](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)* 참조하세요.

각 규칙은 특정 이벤트 버스에 대해 정의되며 해당 이벤트 버스의 이벤트에만 적용됩니다.

단일 규칙은 최대 5개의 대상에 이벤트를 보낼 수 있습니다.

기본적으로 이벤트 버스당 규칙을 최대 300개까지 구성할 수 있습니다. [Service Quotas 콘솔](https://console.aws.amazon.com/servicequotas/home)에서 이 할당량을 수천 개의 규칙으로 늘릴 수 있습니다. 규칙 제한은 각 버스에 적용되므로 더 많은 규칙이 필요한 경우 계정에서 사용자 지정 이벤트 버스를 추가로 생성할 수 있습니다.

서비스별로 권한이 다른 이벤트 버스를 생성하여 계정에서 이벤트가 수신되는 방식을 사용자 지정할 수 있습니다.

EventBridge가 대상으로 이벤트를 전달하기 전에 이벤트의 구조나 날짜를 사용자 지정하려면 이벤트가 대상으로 전송되기 전에 [입력 변환기](eb-transform-target-input.md)를 이용해 정보를 편집합니다.

자세한 내용은 [Amazon EventBridge의 규칙](eb-rules.md) 단원을 참조하십시오.

## 대상
<a name="eb-bus-concepts-targets"></a>

대상은 이벤트가 규칙에 정의된 이벤트 패턴과 일치할 때 EventBridge에서 이벤트를 보내는 리소스 또는 엔드포인트입니다.

대상은 여러 이벤트 버스에서 다양한 이벤트를 수신할 수 있습니다.

자세한 내용은 [Amazon EventBridge의 이벤트 버스 대상](eb-targets.md) 단원을 참조하십시오.

## 이벤트 버스의 고급 기능
<a name="eb-what-is-how-it-works-advanced"></a>

EventBridge에는 이벤트 버스 개발, 관리 및 사용에 도움이 되는 다음 기능이 포함됩니다.

**API 대상을 사용하여 서비스 간 REST API 직접 호출 활성화**

EventBridge *[API 대상](eb-api-destinations.md)*은 이벤트 데이터를 AWS 서비스 또는 리소스로 보내는 것과 동일한 방식으로 규칙의 대상으로 설정할 수 있는 HTTP 엔드포인트입니다. API 대상을 사용하면 API 직접 호출을 사용하여 AWS 서비스, 통합 SaaS 애플리케이션 및 AWS외부 애플리케이션 간에 이벤트를 라우팅할 수 있습니다. API 대상을 생성할 때 사용할 연결을 지정합니다. 각 연결에는 API 대상 엔드포인트에 권한을 부여하는 데 사용할 권한 부여 유형 및 파라미터에 대한 세부 정보가 포함됩니다.

**개발 및 재해 복구를 지원하기 위한 이벤트 보관 및 재생**

이벤트를 *[보관](eb-archive-event.md)*하거나 저장한 다음, 아카이브에서 나중에 [재생](eb-replay-archived-event.md)할 수 있습니다. 보관은 다음과 같은 경우에 유용합니다.
+ 새 이벤트를 기다릴 필요 없이 사용할 이벤트 스토어가 있으므로 애플리케이션을 테스트합니다.
+ 새 서비스를 처음 온라인에 제공할 때 하이드레이트합니다.
+ 이벤트 기반 애플리케이션에 내구성을 더합니다.

**스키마 레지스트리를 사용하여 빠르게 이벤트 패턴 생성 시작**

EventBridge를 사용하는 서버리스 애플리케이션을 구축할 때 이벤트를 생성하지 않고도 일반적인 이벤트의 구조를 파악하는 것이 유용할 수 있습니다. 이벤트 구조는 EventBridge의 AWS 서비스에서 생성된 모든 이벤트에 사용할 수 있는 [스키마](eb-schema.md)에 설명되어 있습니다.

 AWS 서비스에서 오지 않는 이벤트의 경우 다음을 수행할 수 있습니다.
+ 사용자 지정 스키마를 생성하거나 업로드합니다.
+ EventBridge가 이벤트 버스로 전송되는 이벤트에 대한 스키마를 자동으로 생성하도록 스키마 검색을 사용합니다.

이벤트에 대한 스키마가 있으면 인기 있는 프로그래밍 언어에 대한 코드 바인딩을 다운로드할 수 있습니다.

**정책을 통해 리소스 및 액세스 관리**

 AWS 리소스를 구성하거나 EventBridge의 비용을 추적하려면 리소스에 사용자 지정 레이블 또는 *[태그를](eb-tagging.md)* 할당할 AWS 수 있습니다. [태그 기반 정책](eb-tag-policies.md)을 사용하면 EventBridge 내에서 리소스가 수행 가능한 작업 및 수행 불가능한 작업을 제어할 수 있습니다.

EventBridge는 태그 기반 정책 외에도 EventBridge에 대한 액세스를 제어하는 [자격 증명 기반](eb-use-identity-based.md) 및 [리소스 기반](eb-use-resource-based.md) 정책을 지원합니다. 자격 증명 기반 정책을 사용하면 그룹, 역할 또는 사용자의 권한을 제어할 수 있습니다. 리소스 기반 정책을 사용하면 Lambda 함수 또는 Amazon SNS 주제와 같은 각 리소스에 특정 권한을 부여할 수 있습니다.