KR100587642B1 - Method of static binding in CORBA environment - Google Patents
Method of static binding in CORBA environment Download PDFInfo
- Publication number
- KR100587642B1 KR100587642B1 KR1019990060381A KR19990060381A KR100587642B1 KR 100587642 B1 KR100587642 B1 KR 100587642B1 KR 1019990060381 A KR1019990060381 A KR 1019990060381A KR 19990060381 A KR19990060381 A KR 19990060381A KR 100587642 B1 KR100587642 B1 KR 100587642B1
- Authority
- KR
- South Korea
- Prior art keywords
- server
- binding
- environment
- client
- program
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
본 발명은 코바(CORBA;Common Object Request Broker Architecture)환경에서 클라이언트 프로그램이 서버 프로그램을 호출할 필요가 생길때마다 해당하는 서버의 객체레퍼런스의 소유여부를 판단하여 그 소유시에는 기존의 객체레퍼런스를 이용하여 그 서버에 바인딩하도록 하도록 된 코바환경에서의 정적 바인딩방법에 관한 것으로, 클라이언트 프로그램이 서버 프로그램을 호출할 필요가 생길 때마다 해당 서버의 객체 컨퍼런스를 알고 있는지를 검사하여 알고 있는 경우에는 기존의 객체 컨퍼런스를 이용함으로써 불필요하게 다시 그 서버에 바인딩하지 않도록 하여 프로그램의 전체적인 성능을 높일 수 있도록 하는 한편, 소프트웨어의 구성관리를 용이하게 할 수 있게 된다.According to the present invention, whenever a client program needs to call a server program in a CORBA (Corba) Common Object Request Broker Architecture (CORBA) environment, it is determined whether an object reference of a corresponding server is owned and an existing object reference is used. The static binding method in COVA environment that is supposed to bind to the server. Whenever the client program needs to call the server program, it checks whether it knows the object conference of the server and if it knows the existing object, By using the conference, the overall performance of the program can be improved by unnecessarily binding to the server again, and the configuration management of the software can be facilitated.
Description
도 1은 전형적인 코바(CORBA)환경을 설명하기 위한 개념도,1 is a conceptual diagram illustrating a typical CORBA environment,
도 2는 본 발명의 대상으로 되는 정적 바인딩과 동적 바인딩 및 이름서버를 이용한 바인딩을 설명하기 위한 모식도,Figure 2 is a schematic diagram for explaining the binding using the static binding and dynamic binding and name server of the present invention,
도 3은 본 발명에 따른 코바환경에서의 정적 바인딩방법을 설명하기 위해 참조되는 도면,3 is a view referred to explain a static binding method in a COVA environment according to the present invention;
도 4는 본 발명에 따른 코바환경하에서의 정적 바인딩방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a static binding method in a COVA environment according to the present invention.
< 도면의 주요부분에 대한 부호의 설명 ><Description of Symbols for Major Parts of Drawings>
1: 클라이언트, 2: 서버,1: client, 2: server,
10: 클라이언트 프로그램, 20: 서버프로그램,10: client program, 20: server program,
30: 이름서버, 50: 인터페이스저장소,30: name server, 50: interface storage,
103: 클라이언트 스텁, 203: 서버 스텁.103: client stub, 203: server stub.
본 발명은 네트워크 컴퓨팅분야에 적용되는 코바(CORBA)환경에서의 정적 바인딩방법에 관한 것으로, 보다 상세하게는 소프트웨어의 개발 및 실행환경중의 분산객체환경인 OMG(Object Management Group)의 CORBA(Common Object Request Broker Architecture)를 기반으로 하는 조건에서 객체와 객체간의 통신을 위해 필요한 정적 바인딩이 필요한 경우에만 효율적으로 실시되도록 하기 위한 코바환경에서의 정적 바인딩방법에 관한 것이다.The present invention relates to a static binding method in a CORBA environment applied to the network computing field, and more particularly, to CORBA (Common Object) of OMG (Object Management Group), which is a distributed object environment in a software development and execution environment. The present invention relates to a static binding method in the COVA environment so that the static binding necessary for communication between objects in a condition based on the Request Broker Architecture) is performed efficiently.
주지된 바와 같이, 대규모의 소프트웨어 및 컴퓨터 환경이 메인 프레임으로부터 클라이언트/서버환경으로 변화됨에 따라 분산된 네트워크 컴퓨팅 분야에서 클라이언트/서버환경의 하부구조(Infrastructure)로서 OMG의 CORBA가 널리 이용되고 있다.As is well known, OMG's CORBA is widely used as the infrastructure of client / server environments in the distributed network computing field as the large software and computer environments change from mainframe to client / server environments.
그 CORBA구조는 소규모의 프로그램으로부터 대규모의 프로젝트의 구현을 위한 프로그램에 이르기까지 다양한 응용분야에 적용되고 있다.The CORBA architecture is being applied to a variety of applications, from small programs to programs for the implementation of large projects.
전형적인 코바환경을 설명하기 위해 도 1을 참조하면, 분산된 환경, 즉 상이한 컴퓨팅 노드에 설치된 클라이언트(1)와 서버(2)가 상호 정의된 인터페이스(IDL; Interface Definition Language)에 기초하여 통신을 실행하려는 경우, 양 객체(즉, 클라이언트(1)와 서버(2))의 사이에는 개발자에 대해 원격통신으로 인해 초래되는 복잡성들을 제거해주면서 양 객체 간에 연결을 완성시켜주는 역할을 수행하기 위한 ORB(Object Request Broker)(3)가 개재된다.Referring to FIG. 1 to explain a typical COVA environment, a client (1) and a server (2) installed in a distributed environment, that is, different computing nodes, perform communication based on an interface definition language (IDL). If you want to, ORB (Object (1) and server (2)) between the object to complete the connection between the two objects to remove the complexity caused by the telecommunications to the developer (Object) Request Broker) 3 is interposed.
여기서, 클라이언트(1)와 서버(2)가 메시지를 교환하기 위해서는 우선적으로 클라이언트(1)가 서버(2)에 바인딩(Binding)되어야만 되는 바, 그 서버(2)에 클라 이언트(1)의 바인딩을 위해서는 서버(2)의 등록이름과 그 설치위치(컴퓨팅노드의 닉네임 또는 IP주소)의 인지가 필요하게 되고, 그 서버(2)의 정보(등록이름, 설치위치 등)는 객체레퍼런스(Object Reference)를 통해 총체적으로 알 수 있게 되며, 클라이언트(2)측이 서버(2)의 정보를 알아내는 방법은 다양하게 알려져 있다.Here, in order for the
도 2는 클라이언트(1)가 서버(2)에 바인딩하기 위해 필요한 정보의 탐색과 그 탐색된 정보를 이용한 바인딩과정을 설명하기 위한 모식도로서, 동 도면에는 본 발명의 대상으로 되는 정적 바인딩(Static Binding)과, 동적 바인딩(Dynamic Binding) 및, 이름서버(Name server)를 이용한 정적 바인딩이 묘사되어 있다.FIG. 2 is a schematic diagram illustrating a search for information necessary for the
먼저, 정적 바인딩에 대해 설명하면 클라이언트 프로그램(10)이 서버프로그램(20; 실행환경에서는 프로세스)의 객체 레퍼런스를 정해진 방법에 따라 알아내고서 그 결과를 이용하여 클라이언트 응용함수(101;OP1)가 클라이언트 스텁(Stub; 103)을 통해 ORB(40)와 서버프로그램(20)의 서버 스텁(또는 Skeleton)(203)을 순차적으로 경유하여 서버의 원하는 오퍼레이션(201)을 호출하게 된다.First, the static binding will be described. When the
여기서, 객체 레퍼런스를 알아내기 위해 서버에 바인딩하는 방법에 따라 클라이언트 프로그램(10)에 직접 입력하거나 이름서버(30)를 이용하게 된다.In this case, the object reference is directly input to the
그에 대해, 동적 바인딩에 대해 설명하면 정의된 인터페이스(IDL)를 인터페이스저장소(IR; Interface Repository)(50)에 등록하고 클라이언트가 서버를 호출하는 경우에 클라이언트 스텁(103)을 이용하지 않고 인터페이스저장소(50)의 정보를 이용하여 직접 ORB(40)를 거쳐 서버를 호출하게 된다.On the other hand, when the dynamic binding is described, the defined interface (IDL) is registered in the Interface Repository (IR) 50, and the interface repository (not the client stub 103) is used when the client calls the server. The
그러한 동적 바인딩방법은 대상 응용의 환경이 빈번하게 변화하는 경우에 유 용하게 적용될 수 있지만, 그 방법은 응용 대상이 제한적이고 프로그래밍이 정적 바인딩방법에 비해 복잡할 뿐만 아니라, 현재로서는 실행환경에서 그 신뢰성이 완전히 검증되지 않은 상태이기 때문에 널리 이용되지 못하는 실정이다.Such a dynamic binding method may be useful when the environment of the target application changes frequently, but the method is not only limited in application scope and the programming is more complicated than the static binding method. It is not widely used because it is not fully verified.
그에 반해, 정적 바인딩방법은 프로그래밍이 비교적 간단할 뿐만 아니라 신뢰성이 있기 때문에 대부분의 응용에 이용되고 있기는 하지만, 클라이언트가 서버에 바인딩하는 시점에 따라 프로그램 자체의 성능 및 소프트웨어 구성관리에 상당한 영향을 받게 된다.In contrast, static binding methods are used for most applications because they are relatively simple and reliable to program, but they affect the performance of the program itself and software configuration management depending on when the client binds to the server. do.
또한, 정적 바인딩 중에서 이름서버(30)를 이용하는 방법도 널리 이용되기는 하지만 프로그램의 크기가 커질 뿐만 아니라 이름서버(30)와의 통신으로 인한 부담이 가중된다는 단점이 있다. In addition, although the method using the
본 발명은 상기한 사정을 감안하여 이루어진 것으로, 클라이언트로부터 서버로 통신을 행하는 경우에 필요한 경우에만 바인딩이 실행되도록 함으로써 바인딩의 회수를 최소화하여 응용 프로그램의 불필요한 부담을 경감시키도록 된 코바환경에서의 정적 바인딩방법을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and in a COVA environment in which a binding is executed only when necessary when communicating from a client to a server, thereby minimizing the number of bindings and reducing unnecessary burden on an application program. The purpose is to provide a binding method.
상기한 목적을 달성하기 위해, 본 발명의 바람직한 실시예에 따르면 분산객체환경으로서의 OMG의 CORBA를 기반으로하여 객체와 객체간 통신을 위해 필요한 바인딩을 행하는 방법에 있어서, 객체로서의 서버의 오퍼레이션을 호출할 필요에 따라 바인딩 대상의 서버를 확인하고, 그 확인된 서버의 객체레퍼런스의 소유 여부를 판단하며, 상기 판단결과에 따라 해당하는 서버와의 바인딩을 행하는 단계로 구성 된 코바환경에서의 정적 바인딩방법이 제공된다.In order to achieve the above object, according to a preferred embodiment of the present invention, based on OBA CORBA as a distributed object environment, in the method for performing the necessary binding for communication between objects, the operation of the server as an object is called. A method of static binding in a COVA environment comprising checking a server to be bound as necessary, determining whether the object reference is owned by the checked server, and binding with a corresponding server according to the determination result. Is provided.
바람직하게, 상기 객체레퍼런스의 소유여부는 그 객체레퍼런스가 널(NULL)인 경우에 비소유로 판단하고 그 객체레퍼런스가 널이 아니면 소유로 판단하게 된다.Preferably, the ownership of the object reference is determined to be non-owning when the object reference is null, and is determined to be owned when the object reference is not null.
상기 객체레퍼런스의 소유로 판단되면 그 객체레퍼런스를 기초로 해당하는 서버의 오퍼레이션을 호출하고 비소유로 판단되면 해당하는 서버와 바인드하여 객체레퍼런스를 얻어서 해당하는 서버의 오퍼레이션을 호출하게 된다.If it is determined that the object reference is owned, the operation of the corresponding server is called based on the object reference. If it is determined that the object is not owned, the operation of the corresponding server is called by obtaining an object reference by binding to the corresponding server.
상기한 바와 같이, 본 발명에 따른 코바환경에서의 정적 바인딩방법에 의하면 클라이언트 프로그램이 서버 프로그램을 호출할 필요가 생길때마다 해당하는 서버의 객체레퍼런스의 소유여부를 판단하여 그 소유시에는 기존의 객체레퍼런스를 이용하여 그 서버에 바인딩하도록 함으로써 프로그램의 전체적인 성능을 향상시키게 된다.As described above, according to the static binding method in the COVA environment according to the present invention, whenever a client program needs to call a server program, it is determined whether or not the object reference of the corresponding server is owned. By using references to bind to that server, you improve the overall performance of your program.
이하, 본 발명에 대해 첨부도면을 참조하여 상세하게 설명한다.Hereinafter, with reference to the accompanying drawings, the present invention will be described in detail.
도 3은 본 발명에 따른 코바(CORBA)환경에서의 정적 바인딩 방법을 설명하기 위한 모식도로서, 하나의 클라이언트(C1)가 5개의 서버(S1-S5)와 바인딩해야 하는 경우를 상정하면 필요시에만(즉, 해당 서버에 대한 호출이 필요할 때에만)그 서버와 바인딩여부를 확인하고 바인딩을 시도하도록 설계된다. 이는 다른 서버들에게도 동일하게 적용되어 하나의 서버(S1)가 다른 서버(S3)를 호출하는 경우(이 경우에는 S1이 클라이언트의 역할) S1이 S3의 객체 컨퍼런스를 갖고 있는지의 여부에 따라 바인딩을 하거나 하지 않아도 되게 된다. 3 is a schematic diagram for explaining a static binding method in a CORBA environment according to the present invention, assuming that the case where one client (C1) should bind to five servers (S1-S5) It is designed to check binding with the server and attempt to bind (ie only when a call to the server is needed). The same applies to other servers, where one server S1 calls another server S3 (in this case S1 acts as a client), depending on whether S1 has an object conference of S3 or not. You do or do not have to.
그 객체컨퍼런스의 보유 여부에 대해서는 객체 컨퍼런스가 널(NULL)이면 가지지 않는 것이고, 널이 아니면 객체 컨퍼런스를 갖고 있는 것으로 된다. 그러한 방법으로 서버 호출시마다 바인딩하는 방법에 비해 전체적인 프로그램의 효율을 높일 수 있으며, 각 클라이언트와 서버가 활성화(프로세스화)될 때마다 미리 필요한 서버에 모두 바인딩시켜 놓는 방법에 비해 소프트웨어 구성관리가 용이해지게 된다.Whether or not the object conference is held does not have an object conference if it is null, and if not, it has an object conference. In this way, the overall program efficiency can be improved compared to the method of binding every server call, and the software configuration management is easier than the method of binding all the necessary servers to each client and server each time it is activated (processed). You lose.
도 4는 본 발명에 따른 코바(CORBA)환경에서의 정적 바인딩 방법을 설명하는 흐름도로서, 분산환경에서 클라이언트 프로그램의 처리과정을 나타낸다.4 is a flowchart illustrating a static binding method in a CORBA environment according to the present invention, and illustrates a process of processing a client program in a distributed environment.
먼저, 서버의 오퍼레이션을 호출할 필요가 생기면(S101), 어떠한 서버와 바인딩해야 하는지를 확인하게 된다(S102). 그 후에, 단계 S102에서 확인된 서버의 객체 컨퍼런스를 자신(클라이언트)이 가지고 있는지를 판단하게 된다(S103). 객체 컨퍼런스를 가지고 있으면 그 컨퍼런스를 이용하여 바로 서버의 원하는 오퍼레이션을 호출하고(S105), 객체 컨퍼런스를 가지고 있지 않으면(바인딩되어 있지 않으면) 해당 서버와 바인드하여 객체 컨퍼런스를 얻어서(S104) 서버의 오퍼레이션을 호출하게 된다.First, if it is necessary to call the operation of the server (S101), it is checked with which server to bind (S102). After that, it is determined whether the client (client) has the object conference of the server identified in step S102 (S103). If you have an object conference, use the conference to call the desired operation of the server (S105). If you do not have an object conference (if it is not bound), bind to the server to obtain an object conference (S104) to perform the operation of the server. Will be called.
상기한 바와 같이, 본 발명을 통한 정적 서버 바인딩 방법에 의해 클라이언트 프로그램이 서버 프로그램을 호출할 필요가 생길 때마다 해당 서버의 객체 컨퍼런스를 알고 있는지를 검사하여 알고 있는 경우에는 기존의 객체 컨퍼런스를 이용함으로써 불필요하게 다시 그 서버에 바인딩하지 않도록 하여 프로그램의 전체적인 성능을 높일 수 있도록 하는 한편, 소프트웨어의 구성관리를 용이하게 할 수 있게 된다.As described above, whenever the client program needs to call the server program by the static server binding method according to the present invention, it checks whether the server knows the object conference of the server. By not binding to the server again unnecessarily, the overall performance of the program can be improved, and the configuration management of the software can be facilitated.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990060381A KR100587642B1 (en) | 1999-12-22 | 1999-12-22 | Method of static binding in CORBA environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990060381A KR100587642B1 (en) | 1999-12-22 | 1999-12-22 | Method of static binding in CORBA environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010057371A KR20010057371A (en) | 2001-07-04 |
KR100587642B1 true KR100587642B1 (en) | 2006-06-08 |
Family
ID=19628111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990060381A KR100587642B1 (en) | 1999-12-22 | 1999-12-22 | Method of static binding in CORBA environment |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100587642B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100402424B1 (en) * | 2001-12-27 | 2003-10-22 | 주식회사 케이티 | A System and Method for Operating the Availability Information of CORBA Binding by using shared memory |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09330223A (en) * | 1996-06-11 | 1997-12-22 | Nec Corp | Method and device for executing processing to event-driven type server by corba |
JPH1083307A (en) * | 1996-04-23 | 1998-03-31 | Sun Microsyst Inc | Method and device for interractively connecting decentralized object to graphic user interface |
US5864866A (en) * | 1997-03-26 | 1999-01-26 | International Business Machines Corporation | Apparatus and method for providing externalization in an object-oriented environment |
-
1999
- 1999-12-22 KR KR1019990060381A patent/KR100587642B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1083307A (en) * | 1996-04-23 | 1998-03-31 | Sun Microsyst Inc | Method and device for interractively connecting decentralized object to graphic user interface |
JPH09330223A (en) * | 1996-06-11 | 1997-12-22 | Nec Corp | Method and device for executing processing to event-driven type server by corba |
US5864866A (en) * | 1997-03-26 | 1999-01-26 | International Business Machines Corporation | Apparatus and method for providing externalization in an object-oriented environment |
Also Published As
Publication number | Publication date |
---|---|
KR20010057371A (en) | 2001-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8209213B2 (en) | Method for the construction and execution of a distributed workflow in a communication system | |
US5818448A (en) | Apparatus and method for identifying server computer aggregation topologies | |
US6115736A (en) | System and method for automatically localizing access to remote network components using implicit agent relocation | |
EP0817043B1 (en) | Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer | |
US8555242B2 (en) | Decentralized system services | |
CN109981716B (en) | Micro-service calling method and device | |
US7818752B2 (en) | Interface for application components | |
EP1027794A2 (en) | Method and system for facilitating distributed software development in a distribution unaware manner | |
US6643708B1 (en) | Systems, methods and computer program products for chaining Java servlets across networks | |
US20080263194A1 (en) | Method and system for optimal binding selection for service oriented architectures | |
US8589945B2 (en) | Method for locating, resolving and invoking software functions | |
JP3361663B2 (en) | Communication management method | |
KR100587642B1 (en) | Method of static binding in CORBA environment | |
CN100428166C (en) | Processing method for use in client terminal having an access to EJB through remote interface and device therefor | |
US7912922B2 (en) | Globally unique instance identification | |
US7185345B2 (en) | Data propagation in an activity service | |
US20030208605A1 (en) | System and method of communication between java components in different namespaces | |
Gomez-Martinez et al. | Performance analysis of mobile agents tracking | |
EP0813148A2 (en) | Method and apparatus for access to remote gateway servers | |
Schulze et al. | Migration transparency in agent systems | |
CN115988080B (en) | Micro-service resource calling method and system based on proxy middleware | |
KR100305981B1 (en) | System and method for automatically localozing access to remote network camponents using implicit agent relocation | |
US20040073633A1 (en) | Facilitating operation of a multi-processor system via a resolved symbolic constant | |
KR100240631B1 (en) | Method of input and outout arguments passing for proxy objects in remote objects method | |
Cheng | Mobile-C |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20100510 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |