맨위로가기

객체 요청 브로커

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

객체 요청 브로커(ORB)는 네트워크를 통해 객체 간의 통신을 중개하는 소프트웨어 프레임워크이다. ORB는 원시 바이트 시퀀스와 프로세스 내 데이터 구조 간의 변환(마샬링 또는 직렬화)을 처리하며, 분산 트랜잭션, 디렉터리 서비스, 실시간 스케줄링과 같은 추가 기능을 제공하기도 한다. ORB는 원격 객체를 로컬 객체처럼 사용할 수 있게 해주는 프레임워크를 제공하며, 클라이언트 측 스텁 객체를 통해 원격 호출을 투명하게 처리한다. 주요 구현체로는 CORBA, ICE, .NET 리모팅, WCF, ORBexpress, Orbix, DCOM, RMI, ORBit, ACE ORB 등이 있다.

더 읽어볼만한 페이지

  • 미들웨어 - 마이크로소프트 비즈토크 서버
    마이크로소프트 비즈토크 서버는 다양한 시스템 통합 및 비즈니스 프로세스 자동화를 지원하는 서버 소프트웨어로, 여러 버전이 출시되었으며 어댑터, 가속기 등의 기능을 제공하고 대한민국 여러 산업 분야에서 활용되었으나 클라우드 기반 솔루션의 등장으로 입지가 변화하고 있다.
  • 미들웨어 - 프라우드넷
    프라우드넷은 게임 서버 및 네트워크 개발에 사용되는 미들웨어로, 클라이언트-서버 및 P2P 네트워킹 기능을 제공하며, 대규모 동시 접속을 지원하도록 성능, 안정성, 유연성에 초점을 맞춰 개발되었다.
  • 분산 컴퓨팅 - 클라우드 컴퓨팅
    클라우드 컴퓨팅은 인터넷을 통해 컴퓨팅 자원을 서비스 형태로 제공하는 모델로, 다양한 서비스 및 배치 모델을 가지며 비용 효율성과 확장성을 제공하지만 보안 및 의존성 문제도 존재하며 지속적으로 발전하고 있다.
  • 분산 컴퓨팅 - 그리드 컴퓨팅
    그리드 컴퓨팅은 지리적으로 분산된 컴퓨터 자원을 연결하여 가상 슈퍼컴퓨터를 구축하는 기술이며, 유휴 자원을 활용하고 과학 연구 등 다양한 분야에 활용된다.
객체 요청 브로커
명칭
명칭객체 요청 브로커
영어Object Request Broker
약자ORB
개요
역할분산 컴퓨팅 환경에서 객체들 간의 통신을 중개하는 소프트웨어
핵심 기능객체 위치 찾기
객체 활성화
요청 전달
응답 반환
보안 관리
주요 표준 및 기술
표준CORBA (Common Object Request Broker Architecture)
기술IIOP (Internet Inter-ORB Protocol)
RMI (Remote Method Invocation)
웹 서비스
동작 방식
클라이언트객체에 대한 요청 생성
ORB클라이언트 요청을 받아 대상 객체 위치 파악 및 요청 전달, 결과 반환
서버객체 호스팅 및 요청 처리 후 ORB를 통해 결과 반환
장점
분산 환경 지원다양한 플랫폼 및 언어 지원
유연성객체 위치 투명성 제공
재사용성객체 기반 개발 촉진
단점
복잡성개발 및 유지보수 어려움
성능네트워크 트래픽 증가 가능성
표준화다양한 ORB 구현 간의 호환성 문제 발생 가능성
활용 분야
엔터프라이즈 시스템분산 환경에서 데이터 처리 및 애플리케이션 통합
통신 시스템네트워크 서비스 및 통신 프로토콜 구현
금융 시스템분산 데이터베이스 및 트랜잭션 처리

2. 구현

객체 요청 브로커(ORB)는 분산 컴퓨팅 환경에서 객체 간의 통신을 중개하는 미들웨어이다. 다양한 ORB 구현체들이 존재하며, 이들은 각기 다른 특징과 장점을 가진다.

구현체설명
CORBA공통 객체 요청 브로커 아키텍처
ICE인터넷 통신 엔진
.NET 리모팅마이크로소프트의 .NET 프레임워크 내 객체 리모팅 라이브러리
WCF
ORBexpressObjective Interface Systems의 실시간 및 엔터프라이즈 ORB
OrbixIONA Technologies가 개발한 엔터프라이즈급 CORBA ORB
DCOM마이크로소프트의 분산 컴포넌트 객체 모델
RMI선 마이크로시스템즈의 원격 메소드 호출 프로토콜
ORBitGNOME용 미들웨어로 사용되는 오픈 소스 CORBA ORB
ACE ORB분산 객체 컴퓨팅(DOC) 그룹의 CORBA 구현


2. 1. 주요 구현체


  • CORBA - 공통 객체 요청 브로커 아키텍처
  • ICE - 인터넷 통신 엔진
  • .NET 리모팅 - 마이크로소프트의 .NET 프레임워크 내 객체 리모팅 라이브러리
  • WCF
  • ORBexpress - Objective Interface Systems의 실시간 및 엔터프라이즈 ORB
  • Orbix - IONA Technologies가 개발한 엔터프라이즈급 CORBA ORB
  • DCOM - 마이크로소프트의 분산 컴포넌트 객체 모델
  • RMI - 선 마이크로시스템즈의 원격 메소드 호출 프로토콜
  • ORBit - GNOME용 미들웨어로 사용되는 오픈 소스 CORBA ORB
  • ACE ORB - / 분산 객체 컴퓨팅(DOC) 그룹의 CORBA 구현

2. 2. 대한민국 내 활용 사례

(이전 출력이 없으므로, 수정할 내용이 없습니다. 원본 소스와 함께 이전 출력을 제공해주시면 수정 작업을 진행하겠습니다.)

3. 기술적 특징

객체 요청 브로커(ORB)는 마샬링 또는 직렬화 외에도 분산 트랜잭션, 디렉터리 서비스, 실시간 스케줄링 등 다양한 기능을 제공한다. CORBA와 같은 일부 ORB는 인터페이스 정의 언어를 사용하여 원격 호출 시 전송될 데이터를 기술한다.[1][2]

3. 1. 마샬링 (Marshalling)

객체 요청 브로커(ORB)는 네트워크를 통해 전송되는 원시 바이트 시퀀스와 프로세스 내 데이터 구조 간의 변환을 처리한다. 이는 마샬링 또는 직렬화라고 불린다.[1]

객체 지향 프로그래밍 언어 (예: 자바)에서 ORB는 원격 객체를 마치 로컬 객체이고 동일한 프로세스의 일부인 것처럼 네트워크를 통해 사용할 수 있게 해주는 프레임워크를 제공한다. 클라이언트 측에서는 '스텁' 객체가 생성되어 호출되며, 클라이언트 애플리케이션 내에서 보이는 유일한 부분이다. 스텁의 메서드가 호출되면 클라이언트 측 ORB가 호출 데이터의 마샬링을 수행하고 서버 측 ORB로 요청을 전달한다. 서버 측에서 ORB는 대상 객체를 찾아 요청된 작업을 실행하고 결과를 반환한다. 결과를 사용할 수 있게 되면 클라이언트의 ORB가 디마샬링을 수행하고 결과를 호출된 스텁으로 다시 전달하여 클라이언트 애플리케이션에서 사용할 수 있도록 한다. 전체 프로세스는 투명하며, 원격 객체가 로컬 객체처럼 보인다.[1]

3. 2. 객체 위치 투명성

객체 지향 프로그래밍 언어(예: 자바)에서 객체 요청 브로커(ORB)는 원격 객체를 마치 로컬 객체이고 동일한 프로세스의 일부인 것처럼 네트워크를 통해 사용할 수 있게 해주는 프레임워크를 제공한다. 클라이언트 측에서는 소위 '스텁' 객체가 생성되어 호출되며, 클라이언트 애플리케이션 내에서 보이고 사용되는 유일한 부분으로 사용된다. 스텁의 메서드가 호출되면, 클라이언트 측 ORB가 호출 데이터의 마샬링을 수행하고 서버 측 ORB로 요청을 전달한다. 서버 측에서 ORB는 대상 객체를 찾아 요청된 작업을 실행하고 결과를 반환한다. 결과를 사용할 수 있게 되면 클라이언트의 ORB가 디마샬링을 수행하고 결과를 호출된 스텁으로 다시 전달하여 클라이언트 애플리케이션에서 사용할 수 있도록 한다. 전체 프로세스는 투명하며 원격 객체가 로컬인 것처럼 보이게 한다.[1]

3. 3. 기타 기능

객체 요청 브로커(ORB)는 네트워크를 통해 전송되는 원시 바이트 시퀀스와 프로세스 내 데이터 구조 간의 변환을 처리하며, 이를 마샬링 또는 직렬화라고 부른다. ORB는 데이터 마샬링 외에도 분산 트랜잭션, 디렉터리 서비스, 실시간 스케줄링 등 다양한 기능을 제공한다. CORBA 호환 시스템과 같은 일부 ORB는 인터페이스 정의 언어를 사용하여 원격 호출 시 전송될 데이터를 기술한다.[1][2]

참조

[1] 웹사이트 Object Request Brokers http://pic.dhe.ibm.c[...] IBM 2013-12-22
[2] 웹사이트 Overview of CORBA http://www.cs.wustl.[...] wustl.edu 2013-12-22



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com