MiddleWare (MQTT, ESB&EAI)

Ruah·2025년 2월 5일

theory

목록 보기
11/11

Middleware란?

이기종 시스템 (운영체제, 애플리케이션, 데이터베이스 등)간의 연결을 담당하는 소프트웨어 계층
운영체제와 애플리케이션 사이에서, 또는 서로 다른 애플리케이션 간의 데이터를 중계하는 역할을 한다.

대표적인 미들웨어 역할

  • 데이터 변환 및 연동 (예: 서로 다른 시스템 간의 데이터 형식 변환)
  • 메시지 브로커 역할 (예 : 데이터를 필요한 곳으로 전달)
  • 보안 및 인증 (예 : API 요청 인증, 접근 제어)
  • 트랜젝션 처리 및 동기화 ( 예 : DB와 애플리케이션 간 데이터 일관성 유지)

MQTT와 ESB/EAI의 미들웨어 내 위치

MQTT와 ESB/EAI는 모두 미들웨어의 한 종류이지만, 역할과 사용되는 계층이 다르다.

미들웨어 계층 구조

1️⃣ 애플리케이션 (Application Layer)   
└ 사용자 인터페이스(UI), 비즈니스 로직 실행   
----------------------------------------   
2️⃣ 미들웨어 (Middleware Layer)  
    ├ 메시지 브로커 (MQTT, Kafka, RabbitMQ)   🏠 [MQTT 위치]  
    ├ 서비스 통합 (EAI, ESB)                  🏢 [ESB/EAI 위치]  
    ├ API 게이트웨이 (Kong, Apigee, AWS API Gateway)  
    ├ 데이터베이스 미들웨어 (ODBC, JDBC, Redis)  
----------------------------------------   
3️⃣ 운영체제 (Operating System)   
    └ 하드웨어, 네트워크 관리 

1. MQTT | 미들웨어 내의 "메세지 브로커" 역할

  • MQTT 는 IoT 환경에서 데이터 통신을 중개하는 메시지 브로커 미들웨어이다.
  • 센서 → 서버, 서버 → 클라이언트 간의 데이터 전달 최적화 한다.
  • TCP/IP 기반의 경량 메시지 프로토콜을 제공한다.
 센서 데이터 → MQTT → Edge 서버로 전달 

2. ESB/EAI | 미들웨어 내의 "서비스 통합" 역할

  • ESB(Enterprise Service Bus) 와 EAI(Enterprise Application Integration)는 기업의 여러 애플리케이션을 연결하는 미들웨어이다.
  • 다양한 애플리케이션 (API, dB, 외부 시스템 등) 의 데이터를 변환하고 통합하는 기능을 한다.
  • 메세지 전달 외에도, 트랜잭션 관리, 프로세스 오케스트레이션, 보안 정책 적용 등의 역할을 수행한다.
 ERP → ESB → CRM 시스템으로 데이터 전송 

예제

 1️⃣ 센서 데이터 → MQTT (IoT 데이터 수집)   
 2️⃣ MQTT → ESB/EAI (데이터 변환 및 시스템 연계)   
 3️⃣ ESB/EAI → ERP/CRM 시스템으로 저장 및 처리 

💡 최종 요약

  1. MQTT와 ESB/EAI는 모두 미들웨어의 한 종류다.
    • MQTT → 메시지 브로커 미들웨어
    • ESB/EAI → 애플리케이션 통합 미들웨어
  2. MQTT는 IoT 환경에서 센서 데이터를 수집하고 전달하는 역할을 함.
  3. ESB/EAI는 기업 내부 시스템(API, DB, 애플리케이션 등)을 연결하는 역할을 함.
  4. 둘은 서로 다른 역할을 하지만, 함께 사용될 수도 있음.

👉 결론적으로 MQTT와 ESB/EAI는 각각 미들웨어 기술 중 하나이며, 미들웨어 내부에서 중요한 역할을 담당하는 구성 요소라고 볼 수 있다.

profile
집요한 주니어 개발자의 호되게 당했던 기록

0개의 댓글