미들웨어
보이기
미들웨어(영어: middleware)는 컴퓨터 제작 회사가 사용자의 특정한 요구대로 만들어 제공하는 프로그램으로, 운영 체제와 응용 소프트웨어의 중간에서 조정과 중개의 역할을 수행하는 소프트웨어이다. 응용 소프트웨어가 운영 체제로부터 제공받는 서비스 이외에 추가적으로 이용할 수 있는 서비스를 제공하는 컴퓨터 소프트웨어이다. "소프트웨어 글루"(software glue)로 이야기된다.[1] 응용 소프트웨어는 유연하고 확장, 축소가 편리하여야 하며 이러한 장점을 충족하기에 개발자의 다른 기종 간 플랫폼을 다시 구축할 필요가 없어야 한다. 이를테면 데이터베이스 시스템, 전자 통신 소프트웨어, 메시지 및 쿼리 처리 소프트웨어를 들 수 있다.
개요
[편집]미들웨어는 양 쪽을 연결하여 데이터를 주고 받을 수 있도록 중간에서 매개 역할을 하는 소프트웨어, 네트워크를 통해서 연결된 여러 개의 컴퓨터에 있는 많은 프로세스들에게 어떤 서비스를 사용할 수 있도록 연결해 주는 소프트웨어를 말한다. 3계층 클라이언트/서버 구조에서 미들웨어가 존재한다. 웹 브라우저에서 데이터베이스로부터 데이터를 저장하거나 읽어올 수 있게 중간에 미들웨어가 존재하게 된다.
예
[편집]- TP 모니터(TP Monitor: Transaction Processing Monitor)는 가장 대표적인 미들웨어라 할 수 있다. 이러한 미들웨어는 메인 프레임 소프트웨어에서 분산 컴퓨팅으로 전환되는 과정에서 나타나게 된다. 미들웨어를 이용하는 분산 컴퓨팅은 2-tier 형태를 벗어나서 3-tier와 N-tier 형태로 발전하게 된다. 대부분 3-tier 혹은 N-tier 분산 컴퓨팅에서 모든 비즈니스 로직은 서버 컴퓨터에 존재하게 되고, 개인용 컴퓨터는 오직 프레젠테이션을 위해서 사용된다.
이러한 방법은 여러 가지 장점들을 제공한다.
- 첫째로 모든 비즈니스 로직을 서버에서 관리하기 때문에 관리와 유지 보수가 간편해진다. 만약 변경 사항이 있는 경우에 오직 서버 측만 변경하기 때문에 유지 보수가 간편해지는 것이다.
- 둘째로 확장성이 좋아진다. 3-tier는 씬 클라이언트(thin-client) 형태를 사용하기 때문에 클라이언트 컴퓨터의 성능이 약간 떨어져도 프로그램을 실행시키는데 문제가 없다. 이러한 형태는 서버 측에 약간의 무리가 있을 수 있지만, 서버 측은 멀티프로세서 시스템이나 클러스터링(clustering)을 이용함으로써 문제를 해결할 수 있다.
이점
[편집]- 표준화된 인터페이스 제공 가능
- 다양한 환경 지원, 체계가 다른 업무와 상호 연동이 가능
- 분산된 업무를 동시에 처리 가능하여 자료의 일관성이 유지
- 부하의 분산이 가능
활용 방안
[편집]- 향후 5년 후에 새로운 e-business 애플리케이션 투자를 불러올 주요 트랜드 및 사건은 무엇인가?
- 차세대 e-business 아키텍처를 창조하는 데 있어서 패키지화된 애플리케이션 소프트웨어의 역할은 무엇인가?
- 기술의 발전과 비즈니스 변화는 e-business 애플리케이션을 시작하려는 결정에 어떤 영향을 미칠 것인가?
- 21세기의 경쟁에 필요한 이상적인 e-business 애플리케이션 아키텍처는 무엇인가?
- 어떻게 아키텍처를 통합하는 것이 정보관리 능력을 빠르게 향상시킬 것이며, 조직을 건실하게 운영할 수 있을 것인가?
- 이전에 없던 복잡성과 변화에도 불구하고 비즈니스 애플리케이션을 활용할 수 있는 경영구조를 어떻게 만들 수 있을까?
(참고: Oracle Korea Magazine)[모호한 표현]
종류
[편집]Hurwitz의 분류법 :
- 원격 프로시저 호출 (Remote Procedure Call, 약칭 RPC) — 클라이언트가 원격에서 동작하는 프로시저를 호출하는 시스템. 동기 또는 비동기 지원.
- 메시지 지향 미들웨어 (Message Oriented Middleware, 약칭 MOM) — 클라이언트가 생성한 메시지는 저장소에 요청할 때 저장하면서, 다른 업무를 지속할 수 있도록 하는 비동기식 미들웨어.
- ORB (Object Request Broker) — 객체지향 시스템에서 객체 및 서비스를 요청하고 전송할 수 있도록 지원하는 미들웨어.
- DB 접속 미들웨어 — 애플리케이션과 데이터베이스 서버를 연결해주는 미들웨어.
또다른 분류법 :
- TP 모니터 (Transaction Processing(TP) monitor) — 분산 시스템의 애플리케이션을 지원하는 미들웨어. 주로 C/S 시스템에 사용됨.
- 웹 애플리케이션 서버 (Web Application Server) — 웹 애플리케이션을 지원하는 미들웨어.
- 엔터프라이즈 서비스 버스 (Enterprise Service Bus) — 메시지 기반으로 느슨한 결합형태의 표준 인터페이스 통신을 지원하는 미들웨어로 기업 안팎에 있는 모든 시스템 환경을 연동하는 미들웨어.
같이 보기
[편집]각주
[편집]- ↑ “What is Middleware?”. 《Middleware.org》. Defining Technology. 2008. 2012년 6월 29일에 원본 문서에서 보존된 문서. 2013년 8월 11일에 확인함.