반응형

미들웨어(Middleware)란?
소프트웨어(Software)와 소프트웨어(Software)의 사이쯤?ㅋㅋ

미들웨어(Middleware)는 IT 시스템에서 굉장히 중요한 개념이지만, 처음 접하면 애매하게 느껴질 수 있어요.
한마디로 말하면:
✅ "서로 다른 소프트웨어(특히 클라이언트와 서버)를 연결해주는 중간 계층 소프트웨어"
✅ 미들웨어란?
클라이언트(또는 애플리케이션)와 백엔드(서버, DB 등) 사이에서 데이터를 중계, 통신을 지원, 서비스를 표준화하는 중간 소프트웨어 계층
✅ 미들웨어의 주요 역할
| 역할 | 설명 |
| 통신 중계 | 클라이언트 ↔ 서버 간 메시지 송수신 지원 (예: TCP/IP, HTTP 처리) |
| 포맷/프로토콜 변환 | 이기종 시스템 간 데이터 형식 통일 |
| 로드 밸런싱 | 요청을 여러 서버로 분산 |
| 트랜잭션 관리 | 여러 시스템 간 일괄 처리(Commit/Rollback) 관리 |
| 보안 및 인증 | 사용자 인증, 권한 처리 등 |
| 로깅/모니터링 | 요청 흐름 추적, 장애 분석 로그 생성 |

✅ 실무에서 자주 쓰는 미들웨어 종류
| 분류 | 예시 | 설명 |
| 웹 애플리케이션 서버(WAS) | Tomcat, WebLogic, JBoss | 웹 요청 처리 + Java Servlet 동작 |
| 메시지 브로커 | Kafka, RabbitMQ, ActiveMQ | 비동기 메시지 큐 기반 데이터 전송 |
| RPC/통신 미들웨어 | gRPC, CORBA, Thrift | 분산 시스템 간 호출 처리 |
| API Gateway | Kong, Amazon API Gateway | API 라우팅, 인증, 속도 제한 등 |
| DB 미들웨어 | MyBatis, Hibernate | DB와 애플리케이션 간 매핑/트랜잭션 처리 |
✅ 예시로 이해하기
[Client] → HTTP 요청 → [WAS (Tomcat)] → 비즈니스 로직 처리 → [DB]
↑
이 부분이 미들웨어
- Tomcat은 클라이언트와 DB 사이에서 데이터를 전달하고, 인증도 하고, 트랜잭션도 관리
✅ 미들웨어가 필요한 이유
| 이유 | 설명 |
| 시스템 간 연결성 확보 | 이기종 시스템 간 호환성 문제 해결 |
| 유지보수 편리성 | 공통 기능을 한 곳에서 관리 가능 |
| 보안 통제 강화 | 인증, 로깅, 필터링 등을 중앙 집중화 |
| 확장성 향상 | 로드 밸런싱, 큐잉 등으로 유연한 서비스 확장 가능 |
✅ 요약 정리
| 항목 | 내용 |
| 미들웨어란? | 클라이언트와 백엔드 시스템을 연결해주는 중간 소프트웨어 |
| 주 역할 | 통신, 트랜잭션, 인증, 로깅, 메시지 전송 등 |
| 주요 예시 | Tomcat, Kafka, RabbitMQ, gRPC, API Gateway 등 |
| 장점 | 확장성, 유지보수성, 시스템 연결성 향상 |

네트워크 이중화 프로토콜에 대해서 궁금하다면 아래 글을 참조해보세요!
https://eundunn.tistory.com/104
[네트워크] 이중화 프로토콜 VRRP 에 대해서
네트웍을 구성할 때, 안정적인 통신 환경을 구성하기 위해 1)부하 분산 or 2)Failover 의 목적으로 이중화를 구성한다. 그 중에서 2) Failover 는 장비의 장애 발생으로 인한 네트웍 불가 리스크를 최소
eundunn.tistory.com
오늘도 뚠뚠IT!
반응형
'IT 툴툴' 카테고리의 다른 글
| [네트워크] HTTP는 TCP 인데 Sessionless (stateless) 일까? TCP vs HTTP (5) | 2025.08.13 |
|---|---|
| [네트워크] CSP Connect : Hosted Connection VS Dedicated Connection (4) | 2025.07.12 |
| [네트워크] IT인프라 이야기 - 3-Tier vs 2-Tier (2) | 2025.07.10 |
| [네트워크] 라우팅 우선 순위 결정 기준 : AD vs Metric(Cost) (2) | 2025.07.06 |
| [네트워크] DNS Forwarding vs DNS Delegation 뭐였더라? (0) | 2025.07.05 |