미들웨어

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

미들웨어(middleware)는 운영 체제로부터 이용 가능한 소프트웨어들과 독립적으로 응용 소프트웨어에 서비스를 제공하는 컴퓨터 소프트웨어이다. 소프트웨어는 유연하고 확장, 축소가 편리하여야 하며 이러한 장점을 충족하기에 개발자의 다른 기종 간 플랫폼을 다시 구축할 필요가 없어야 한다. 이를테면 데이터베이스 시스템, 전자 통신 소프트웨어, 메시지 및 쿼리 소프트웨어를 들 수 있다.

정의[편집]

미들웨어는 양 쪽을 연결하여 데이터를 주고 받을 수 있도록 중간에서 매개 역할을 하는 소프트웨어, 네트워크를 통해서 연결된 여러 개의 컴퓨터에 있는 많은 프로세스들에게 어떤 서비스를 사용할 수 있도록 연결해 주는 소프트웨어를 말한다. 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) — 메시지 기반으로 느슨한 결합형태의 표준 인터페이스 통신을 지원하는 미들웨어로 기업 안팎에 있는 모든 시스템 환경을 연동하는 미들웨어.

같이 보기[편집]