• Tidak ada hasil yang ditemukan

Network Programming

N/A
N/A
Protected

Academic year: 2023

Membagikan "Network Programming"

Copied!
18
0
0

Teks penuh

(1)

Part 5

확장된 확장된 Network Programming 기술 Network Programming 기술

1. 1. Remote Procedure Call Remote Procedure Call

2. 2. Remote Method Invocation Remote Method Invocation

3. 3. Object Request Broker Object Request Broker

(2)

3. Object Request Broker

(3)

ORB

ORG

– provide communication and management services – enables objects to communicate over networks

• request and receive responses – based on RPC and message queue – Two category

• OMG: CORBA

• Microsoft: DCOM (Distributed Component Object Model)

(4)

Services of ORB

Basic services

– hide network details from the object

• providing network transparency

– handle object request and the synchronization of the request and delivery of any response

– handle the exception to the requesting object

Extra services

– provide administration and development services

• to create and terminate objects

• to debug and test an application

• a form of directory service – provide extra run-time services

• multi-threading, security, load balancing, and transaction recovery

(5)

ORB 와 RPC

클라이언트

foofoo

호출 호출

서버 클라이언트

서버

자료자료 객체의

foo 호출

객체의 foo 호출

코드 코드

foofoo

자료 자료

foofoo

자료자료

객체 객체

foo의 실행

RPC

기법

ORB

(6)

Distributed environment with ORB

Remote Method Invocation

ORBORB

ORBORB

ORBORB

Clients

Server

Object

Implementations

Object Request Broker

Clients

(7)

Basic Concept of ORB (1)

Client

Client

Network

Object Object

Object Well Defined

Interface

Identification Encapsulation

Server

:

(8)

Basic Concept of ORB (2)

Well Defined Interface Operation

Signature

Parameters Results Exceptions Request

One way request Two way request

No response Expect a result

- synchronous mode

- deferred synchronous mode

(9)

Distributed environment

with ORB

(10)

CORBA-based ORBs Introduction to CORBA -2

• OMG(Object Management Group)

객체지향 표준을 제정하는 컨소시 엄

• OMA(Object Management Architecture) –

이종의 분산된 환경 하에서 응용 프

로그램들이 서로 통합하고

,

상호 연 동할 수 있도록 하는 표준 기술

• CORBA (Common Object Request Broker Architecture)

이종의 네트워크 시스템에서 객체 간의 통신을 가능하게 해주는 아키 텍처

• ORB(Object Request Broker)

객체간에 클라이언트

/

서버 환경을 구축해 주는 미들웨어

OMG

(Object Management Architecture)

ORB

(Object Request Broker) CORBA (Common Object Request Broker Architecture)

OMG (Object Management Group)

(11)

CORBA-based ORBs

Object Management Architecture

CORBA services

Naming Persistence ...

Lifecycle

Object Request Broker Vertical

CORBA facilities

Horizontal CORBA facilities

Healthcare Financial

...

User Interface

System Mgmt

Task Mgmt Info

Mgmt

Application Objects

Not Standardized

by OMG

(12)

CORBA-based application

Clients Object Implementations

Dynamic Invocation

Interface

Static IDL Stubs

Dynamic Skeleton Interfaces Static

IDL Skeletons ORB

Interface

Object Adapters

Object Request Broker

Interface Repository

Implementation Repository

(13)

CORBA 개요

• 객체 관리 그룹 (OMG : Object Management Group

)

– 객체지향기술과 이기종 분산환경에서 애플리케이션 개발에 필요한 하부구조의 기술규격 규정을 목적으로 하는 단체

• 객체 관리 아키텍처 ( OMA : Object Management Architecture)

• CORBA (Common Object Request Broker Architecture)

: ORB 의 표준화

(14)

CORBA 구조

• ORB Core

클라이언트

/

구현객체 통신의 기반이 되는 컴포넌트

• Interface Repository

구현객체의 함수 파라미터와 복귀값 등의 인터페이스 정보를 관리

• Implementation Repository

구현객체가 있는 위치와 저장방법을 관리

(15)

CORBA IDL

•IDL(Interface Definition Language)

: OMG에서 규정한 인터페이스 정의 언어 표준

Client와 Server 사이에 필요한 객체를 추출하고 인터페이스 정의

-사용되는 객체에 대한 인터페이스 정의

-속성값, 연산, 각 연산의 매개변수 값을 정의

(16)

CORBA 의 전체 구조

기본 프로 그래밍

구조

원격 구조 클라이언트

CORBA 라이 브러리 클라이언트

스텁(프록시) ORS(s) (orbixd)

구현 저장소

TCP TCP

소켓 소켓

ORBORB ORBORB

객체객체 서버

객체 스켈레톤 객체 어댑터(CORBA lib)

와이어 프로토콜

구조

클라이언트

클라이언트 컴퓨터컴퓨터 서버서버컴퓨터컴퓨터

(17)

Java & CORBA 모델

HTTP

서버

자바용 브라우저

인터넷/인트라넷

JDBC

RMI를 활용한 자바 서버 애플리케이션

객체지향 코바랩퍼 (Wrapper)

CORBA 서버 애플리케이션

자바, C++,도는 기타언어

메인 프레임 기초 애플리케이션

유닉스 기초 애플리게이션 기타 플랫폼

기초 애플리케이션

ODBC DBMS

특정 DBMS

특정 DBMS

특정 DBMS

특정 DBMS 서버 애플리케이션을

위한HTML문서와

자바 애플식 클라이언트

코바IIOP

코바IIOP 자바RMI

2-Tier클라이언트를

위한JDBC접근

=> RMI :

순수 자바 애플리케이션을 위한 뛰어난 분산 컴퓨팅 모델

=> Java

기존 애플리케이션

Interface( CORBA, OMA

가 매카니즘 제공

)

(18)

CORBA 를 이용한 Java application 의 아키텍처

클라이언트 애플릿

자바 바인드

ORB

스터브

HTTP

서버

ORB

스켈리튼

ODBC

또는

DBMS

서버 에들리 케이선 문서,이미지 자바 애플릿

데이터베이스 인터넷 또는

TCP/IP

인트라넷

HTTP

IIOP

클라이언트

자바용 브라우저

자바

VM

서버

Referensi

Dokumen terkait

Model pembelajaran Concept Sentence yang dimaksud dalam penelitian ini adalah model pembelajaran yang diterapkan dalam kegiatan pembelajaran menelaah struktur, kebahasaan dan

As there are two types of approaches namely surface approach and deep approach, it is needed to investigate which are students leaning towards to, including the supporting