IoT(사물 인터넷) 솔루션에서 IoT 디바이스는 이벤트(알림, 승인, 원격 분석)를 애플리케이션에 전송하여 인사이트를 얻습니다. 애플리케이션에 다른 엔드포인트에서 처리나 스토리지에 대한 특정 이벤트 하위 집합이 필요할 수 있습니다. 이러한 이벤트는 추가 처리를 위해 다른 서비스로 라우팅해야 할 수도 있습니다. IoT 솔루션이 스케일 아웃되면 디바이스 수, 이벤트 볼륨, 이벤트 다양성 및 다른 서비스도 달라집니다. 이 패턴을 제공하려면 유연하고 확장 가능하고 일관되며 안정적인 이벤트 라우팅 방법이 필요합니다.
잠재적인 사용 사례
한 소매점에서 냉동 식품 섹션의 냉장고를 모니터링하고 있습니다.
- 냉장고의 온도가 미리 결정된 임계값을 초과하면 경고가 전송됩니다. 이러한 특정 이벤트를 경고 시스템으로 보내는 임계값 규칙을 사용하여 라우팅 규칙을 만들 수 있습니다.
- 데이터 과학 팀은 변칙 검색 모델을 구축하여 냉장고 문제를 파악한 후 분류합니다. 메시지 라우팅 규칙은 특히 데이터 과학 팀이 학습 및 모델링에 사용할 수 있도록 모든 원시 원격 분석 데이터를 스토리지 계정으로 보낼 수 있습니다.
이 시나리오는 소매, 에너지 및 환경 산업에 적용됩니다.
아키텍처
이 아키텍처의 Visio 파일을 다운로드합니다.
IoT 플랫폼에서 이벤트의 세분화된 라우팅을 위한 규칙을 만들 수 있습니다. IoT 플랫폼에서 하나 이상의 규칙을 구성할 수 있습니다. 규칙은 수신 이벤트에 적용되고 특정 엔드포인트로 라우팅됩니다.
특징
다음은 이 패턴을 사용할 때 고려해야 할 몇 가지 사항입니다.
엔드포인트 처리량: 이벤트를 수신하는 엔드포인트는 라우팅을 통해 전송된 이벤트 수신을 처리할 수 있어야 합니다. 엔드포인트 서비스에 데이터가 소비될 때까지 데이터를 수집하고 저장할 수 있는 용량이 있는지 확인합니다.
이벤트 형식: 라우팅이 확장 가능하고 유연하려면 이벤트에 프로토콜 간 상호 운용성을 보장하는 공통 형식이 있어야 합니다.
이벤트 처리: 이벤트가 동일한 엔드포인트를 가리키는 여러 경로와 일치하는 경우 해당 엔드포인트에 한 번만 전달해야 합니다. 이러한 상황에서 메시지 순서를 보장하는 것도 중요합니다.
이벤트 중복: 메시지 중복을 처리하려면 일반적으로 디바이스 또는 모듈인 원본 지점에 있는 메시지의 애플리케이션 속성에서 고유 식별자를 스탬핑하는 것이 좋습니다. 메시지를 사용하는 서비스는 이 식별자를 사용하여 중복 메시지를 처리할 수 있습니다.
대체 경로: 규칙과 일치하지 않는 이벤트는 적절하게 처리되고 이벤트가 손실되지 않도록 대체 경로에 도착해야 합니다.
비 원격 분석 이벤트: IoT 솔루션에는 디바이스 상태 변경 및 디바이스 수명 주기 이벤트와 같은 다양한 유형의 이벤트가 있습니다. 이벤트 경로는 자동화 및 모니터링을 가능하게 하기 위해 이러한 비 원격 분석 이벤트를 캡처하고 규칙을 적용할 수 있어야 합니다.
이 패턴을 사용해야 하는 경우:
디바이스 원격 분석 메시지, 디바이스 수명 주기 이벤트 또는 디바이스 쌍 변경 이벤트를 규칙에 따라 결정된 특정 엔드포인트로 보냅니다.
특정 규칙을 적용하여 이벤트를 필터링합니다.
이 패턴은 다음과 같은 경우에는 권장되지 않습니다.
- 시계열 데이터의 복잡한 실시간 데이터 분석을 기반으로 하는 라우팅. 예를 들어 15분 평균 원격 분석 데이터를 비교할 때입니다. 실시간 데이터 분석이 필요한 경우 핫 경로 데이터에 대한 실시간 분석 서비스를 사용합니다.