본문 바로가기
PM으로 성장하기/개발 공부

미들웨어

by 고양이 고씨 2023. 6. 27.

미들웨어

미들웨어란 프로토콜, 시스템 운영체제, 데이터베이스, 애플리케이션 등의 통신을 쉽고 안전하게 할 수 있도록 돕는 소프트웨어를 말한다.

 

미들웨어의 종류

1. DB 미들웨어

DB 솔루션 업체에서 제공하는 애플리케이션으로, DB 간 통신을 지원한다. JDBC가 대표적인데, JDBC란 Java에서 데이터베이스에 접속할 수 있도록 하는 자바 API를 말한다. 

 

2. 원격 프로시저 호출

응용 프로그램의 프로시저를 사용하여 원격 프로시저를 로컬처럼 호출하는 방식의 미들웨어이다. 원격 프로시저 호출을 이용하면 프로그래머는 함수가 실행 프로그램에 로컬 위치에 있든 원격 위치에 있든 동일한 코드를 이용할 수 있다.

 

3. 메시지 지향 미들웨어

메시지 기반의 비동기형 메시지 전달 미들웨어를 말한다. 서로 다른 분산 DB 의 데이터 동기를 위하여 주로 사용된다. 메시지란 상호작용을 하기 위한 수단을 말하며, 비동기란 요청을 보내고 다른 작업을 하다가 데이터가 준비되었을 때 받아서 다시 처리하는 방식을 말한다. 메시지 지향 미들웨어는 메시지 라우팅을 관리하여 메시지가 항상 적절한 순서로 적절한 구성요소에 도달하도록 합니다 많은 메시지 지향 미들웨어는 메시지 큐, 메시지 브로커를 기반으로 한다.

 

4. 트랜잭션 처리 모니터

사용자가 많고 안정적이고 즉각적인 처리가 필요한 업무 프로그램에 많이 사용되는 솔루션으로, 분산 트랜잭션을 처리하고 감시하는 미들웨어를 말한다. TP 모니터라고 보통 불리는데, TP 모니터를 탑재한 컴퓨터가 호스트가 되고, 통신 회선을 경유하여 여러 단말이 접속된다. 단말로부터 얻은 트랜잭션 데이터를 호스트가 받아서 처리를 한 후 단말에 되돌려준다.

 

5. 레거시 웨어

기존의 애플리케이션, DB 기반에 새로운 기능을 붙이고자 할 때 사용된다. 

 

6. 객체 기반 미들웨어

다양한 기반으로 구축된 컴퓨터 간의 프로그램과 데이터의 교환 및 변환이 이루어질 수 있도록 지원한다. 분산 네트워크에 있는 한 애플리케이션 객체가 요청을 하고 다른 객체가 요청을 이행하는 과정에서 중개자 역할을 한다.

 

7. WAS

서버 계층에서 애플리케이션이 동작할 수 있는 환경을 제공하고 안정적인 트랜잭션 처리, 관리, 이기종 시스템과의 연동을 지원한다.

 

8. 애플리케이션 프로그래밍 인터페이스 미들웨어

개발자가 API를 생성, 노출, 관리하는 데 사용할 수 있는 툴을 제공하면 다른 개발자가 API에 연결한다. API 관리 플랫폼, API 게이트웨이, API 개발자 포털 등이 있다.

 

9. 비동기 데이터 스트리밍 미들웨어

중간 저장소에 데이터 스트림을 복제하여, 여러 애플리케이션 간의 공유를 지원한다. 아파치 카프카는 실시간 데이터 스트리밍을 제공하는 미들웨어이다.

 


참고자료

수제비 2023 정보처리기사필기

원격 프로시저 호출, 위키백과, https://ko.wikipedia.org/wiki/%EC%9B%90%EA%B2%A9_%ED%94%84%EB%A1%9C%EC%8B%9C%EC%A0%80_%ED%98%B8%EC%B6%9C

메시지 지향 미들웨어, 위키백과, https://ko.wikipedia.org/wiki/%EB%A9%94%EC%8B%9C%EC%A7%80_%EC%A7%80%ED%96%A5_%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4

트랜잭션 처리 모니터, TTA정보통신용어사전, http://terms.tta.or.kr/dictionary/dictionaryView.do?subject=%ED%8A%B8%EB%9E%9C%EC%9E%AD%EC%85%98+%EC%B2%98%EB%A6%AC+%EB%AA%A8%EB%8B%88%ED%84%B0 

미들웨어란?, IBM, https://www.ibm.com/kr-ko/topics/middleware

JDBC, 위키백과, https://ko.wikipedia.org/wiki/JDBC

728x90

댓글