KR101382439B1 - Method and apparatus for providing multi-interface in wireless distributed system - Google Patents

Method and apparatus for providing multi-interface in wireless distributed system Download PDF

Info

Publication number
KR101382439B1
KR101382439B1 KR1020110134657A KR20110134657A KR101382439B1 KR 101382439 B1 KR101382439 B1 KR 101382439B1 KR 1020110134657 A KR1020110134657 A KR 1020110134657A KR 20110134657 A KR20110134657 A KR 20110134657A KR 101382439 B1 KR101382439 B1 KR 101382439B1
Authority
KR
South Korea
Prior art keywords
interface
service
providing
client
distributed system
Prior art date
Application number
KR1020110134657A
Other languages
Korean (ko)
Other versions
KR20130067761A (en
Inventor
정진엽
백롱민
황희
윤종활
유수영
위원량
박현철
제갈한철
Original Assignee
이지케어텍(주)
서울대학교병원 (분사무소)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이지케어텍(주), 서울대학교병원 (분사무소) filed Critical 이지케어텍(주)
Priority to KR1020110134657A priority Critical patent/KR101382439B1/en
Publication of KR20130067761A publication Critical patent/KR20130067761A/en
Application granted granted Critical
Publication of KR101382439B1 publication Critical patent/KR101382439B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 있어서, 네트워크를 통해 연결된 적어도 하나 이상의 클라이언트에서 서비스를 호출하는 과정과, 상기 클라이언트와 통신하거나 신호를 전달하기 위해 상기 서비스를 호출한 각 클라이언트에 최적화된 프로토콜을 노출하는 과정과, 상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩하는 과정과, 상기 각 클라이언트의 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환하는 과정을 포함함을 특징으로 한다.The present invention provides a method for providing a multi-interface service in a wireless distributed system, the method comprising: calling a service from at least one client connected through a network, and optimizing each client calling the service to communicate with or communicate with the client; Exposing the established protocol, dynamically loading a class file defined in the server using a class loader configured to execute a class file necessary for providing a service to the client, and The method includes converting an interface for hosting corresponding to an optimized protocol.

Description

무선 분산시스템에서 멀티 인터페이스 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING MULTI-INTERFACE IN WIRELESS DISTRIBUTED SYSTEM}METHOD AND APPARATUS FOR PROVIDING MULTI-INTERFACE IN WIRELESS DISTRIBUTED SYSTEM}

본 발명은 HSF(Healthcare Software Framework) SOA(Service Oriented Architecture)프레임워크에 구비된 무선 분산시스템에서 멀티 인터페이스 제공 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for providing a multi-interface in a wireless distributed system provided in a Healthcare Software Framework (HSF) Service Oriented Architecture (SOA) framework.

도 1은 다층의 클라이언트/서버 구조를 취하는 일반적인 분산 시스템에서 클라이언트와 서버간의 통신 프로토콜과 데이터 포맷을 보인 블록도이다.1 is a block diagram showing a communication protocol and a data format between a client and a server in a general distributed system having a multilayer client / server structure.

도 1을 참조하면, 네트워크 통신과 데이터 타입이 제어 가능한 무선 분산시스템에서의 고정된 HSF 데스크탑 클라이언트(110)일 경우 WCF(Windows Communication Foundation)를 이용하여 TCP 통신으로 .NET Well Known DataType을 사용하여 HSF 서비스를 사용하고, HSF 이동단말 클라이언트(112)일 경우 단말에서 가장 범용적으로 사용되는 HTTP 기반의 순수 XML 데이터 타입을 사용하여 서버와 통신을 하는 것을 기본으로 하나 이동단말 클라이언트에서 HTTP SOAP이 가능할 경우 이로 대체할 수 있다.Referring to FIG. 1, in the case of a fixed HSF desktop client 110 in a wireless distributed system in which network communication and data types are controllable, HSF using .NET Well Known DataType using TCP communication using WCF (Windows Communication Foundation). In case of using HSF mobile client client 112, it is basically based on communicating with server using HTTP-based pure XML data type that is most commonly used in terminal. This can be replaced.

그리고 HSF 외부 시스템(External System, 114) 클라이언트일 경우 내부 서비스 인터페이스는 외부 시스템을 위해 별도의 HTTP SOAP 프로토콜을 노출하며 외부 서비스 인터페이스는 Internal Service Facade를 통해 내부 서비스 인터페이스에 접근한다.In case of HSF External System (114) client, internal service interface exposes separate HTTP SOAP protocol for external system, and external service interface accesses internal service interface through Internal Service Facade.

이때, 상기 분산시스템에서 서버(116)의 서비스 레이어에서 일반 클래스 파일로 작성된 서비스를 상기 각 클라이언트의 멀티 프로토콜로 노출하기 위해서는 개별 인터페이스별로 수작업을 해야 하고, .NET WCF 기반 서비스 개발의 경우 단일 소스로 멀티 인터페이스를 노출할 수 있으나 일반 서비스 클래스 파일에 대한 이완 결합(Loosely Coupling)를 유지할 수 없어 클라이언트 서비스 간에 의존성이 심화될 뿐만 아니라 어플리케이션의 규모가 크면 클수록 멀티 인터페이스 변환에 대한 개발과 수정 및 추가에 따른 많은 비용이 발생하는 문제점이 발생한다.In this case, in order to expose a service written as a general class file in the service layer of the server 116 in the multi-protocol of each client in the distributed system, manual operation is required for each interface, and in the case of .NET WCF-based service development as a single source. It can expose multiple interfaces, but can not maintain loose coupling to general service class files, which not only deepens dependencies among client services, but the larger the application size, the more development and modification and addition of multi interface conversion The costly problem arises.

본 발명은 멀티인터페이스에 대한 추가적인 지식을 보유하지 않고도 손쉽게 개발 및 관리가 가능하도록 하는 기술을 제공하고자 한다.The present invention seeks to provide a technology that enables easy development and management without having additional knowledge of multi-interfaces.

또한, 본 발명은 개발자의 프로젝트 환경에서 추가적인 코드라인이 발생하지 않으므로 개발 생산성 향상 및 유지보수 비용을 감소시키고, 개별, 일괄, 예약 변환이 가능하므로 대규모의 엔터프라이즈 어플리케이션(Enterprise Application)의 서비스 변환에 저비용 고효율 개발 및 관리가 용이한 기술을 제공하고자 한다.In addition, since the present invention does not generate additional code lines in the developer's project environment, the development productivity improvement and maintenance cost can be reduced, and individual, batch, and scheduled conversion are possible, thereby lowering the cost of service conversion of a large enterprise application. It aims to provide technology that is easy to develop and manage with high efficiency.

본 발명의 일 견지에 따르면, 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 있어서, 네트워크를 통해 연결된 적어도 하나 이상의 클라이언트에서 서비스를 호출하는 과정과, 상기 클라이언트와 통신하거나 신호를 전달하기 위해 상기 서비스를 호출한 각 클라이언트에 최적화된 프로토콜을 노출하는 과정과, 상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩하는 과정과, 상기 각 클라이언트의 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환하는 과정을 포함함을 특징으로 한다.According to an aspect of the present invention, in a method for providing a multi-interface service in a wireless distributed system, calling a service from at least one or more clients connected through a network, and calling the service to communicate with or transmit a signal to the client Exposing an optimized protocol to each client, dynamically loading a class file defined in the server using a class loader configured to execute a class file necessary to provide a service to the client, and And converting the interface according to the hosting corresponding to the optimized protocol of each client.

본 발명의 다른 견지에 따르면, 무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치에 있어서, 소정 언어를 이용하여 작성한 프레임워크를 소정 바이트코드(byte code)로 컴파일하여 운영하는 플랫폼과, 동일 호스트 내 서로 다른 프로토콜을 사용하는 원격의 미들웨어 응용 컴포넌트와 통신하는 인터페이스부와, 상기 프레임워크의 실행에 필요한 클래스 파일을 로드하여 저장하고, 상기 클래스 파일을 클래스 로더를 이용하여 동적으로 로딩하여 서비스 호출을 요구한 클라이언트의 프로토콜에 따라 변환하는 제어부를 포함함을 특징으로 한다.According to another aspect of the present invention, in a multi-interface service providing apparatus in a wireless distributed system, a platform for compiling and operating a framework written using a predetermined language into a predetermined byte code, and different protocols in the same host An interface unit for communicating with a remote middleware application component that uses a program, loads and stores a class file required for the execution of the framework, and dynamically loads the class file using a class loader to request a service call It characterized in that it comprises a control unit for converting according to the protocol.

본 발명은 무선 분산시스템에서 멀티 인터페이스를 제공하여 상기 멀티인터페이스에 대한 추가적인 지식을 보유하지 않고도 손쉽게 개발 및 관리가 가능하도록 하고, 개발자의 프로젝트 환경에서 추가적인 코드라인이 발생하지 않으므로 개발 생산성 향상 및 유지보수 비용이 감소할 뿐만 아니라 개별, 일괄, 예약 변환이 가능하므로 대규모의 엔터프라이즈 어플리케이션(Enterprise Application)의 서비스 변환에 저비용 고효율 개발 및 관리가 용이한 효과가 있다.The present invention provides a multi-interface in a wireless distributed system to enable easy development and management without having additional knowledge of the multi-interface, and does not generate additional code lines in the developer's project environment, improving development productivity and maintenance In addition to reducing costs, individual, batch, and scheduled conversions can be made, resulting in low-cost, high-efficiency development and management for transforming services in large-scale enterprise applications.

도 1은 종래 다층의 클라이언트/서버 구조를 취하는 일반적인 분산 시스템에서 클라이언트와 서버간의 통신 프로토콜과 데이터 포맷을 보인 블록도.
도 2는 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 대한 흐름도.
도 3은 비즈니스 컴포넌트를 손쉽게 서비스 가능한 웹 서비스로 변환할 수 있는 알고리즘의 화면 예시도.
도 4는 웹 서비스 변환기 클래스 다이어그램을 보인 화면 예시도.
도 5의 (a)는 본 발명의 일 실시 예에 따른 멀티 서비스로 변환되기 위한 원본 서비스에서 서비스 로직 클래스와 분리되어 있는 서비스 인터페이스 클래스를 보인 화면 예시도와, 서비스 인터페이스를 상속하고 있는 서비스 로직 클래스를 보인 화면 예시도.
도 6은 본 발명의 일 실시 예에 따른 WCF 서비스 모델 참조를 보인 화면 예시도.
도 7은 본 발명의 일 실시 예에 따른 변환 타겟 서비스의 규격을 보인 화면 예시도.
도 8의 (a)는 본 발명의 일 실시 예에 따른 web.config 파일의 예시이고, 도 8의 (b)는 서비스 인터페이스의 HSF 호출 로직 구성을 보인 예시도.
도 9는 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치에 대한 블록도.
1 is a block diagram showing a communication protocol and a data format between a client and a server in a general distributed system having a conventional multilayer client / server structure.
2 is a flowchart illustrating a multi-interface service providing method in a wireless distribution system according to an embodiment of the present invention.
3 is an exemplary screen view of an algorithm capable of converting a business component into a serviceable web service.
4 is an exemplary view showing a web service converter class diagram.
5A is a diagram illustrating a service interface class separated from a service logic class in an original service for converting to a multi-service according to an embodiment of the present invention, and a service logic class inheriting a service interface. Example screen shown.
6 is an exemplary view showing a WCF service model reference according to an embodiment of the present invention.
7 is an exemplary view showing a standard of a conversion target service according to an embodiment of the present invention.
8 (a) is an example of a web.config file according to an embodiment of the present invention, Figure 8 (b) is an illustration showing the configuration of the HSF call logic of the service interface.
9 is a block diagram of a multi-interface service providing apparatus in a wireless distribution system according to an embodiment of the present invention.

이하 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명에서는 구체적인 구성 소자 등과 같은 특정 사항들이 나타나고 있는데 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들이 본 발명의 범위 내에서 소정의 변형이나 혹은 변경이 이루어질 수 있음은 이 기술 분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. It will be appreciated that those skilled in the art will readily observe that certain changes in form and detail may be made therein without departing from the spirit and scope of the present invention as defined by the appended claims. To those of ordinary skill in the art.

본 발명은 HSF(Healthcare Software Framework) SOA(Service Oriented Architecture)프레임워크에 구비된 것으로, 더욱 상세하게는 네트워크를 통해 다층의 클라이언트/서버 구조를 취하는 무선 분산시스템에서 .NET 기반으로 작성된 클래스 파일에 대하여 일정 요건의 인터페이스 규격을 충족할 경우 멀티 인터페이스(웹 서비스-SOAP 기반, REST/JSON 서비스, HTTP 1.1 Basic)형식의 서비스로 자동변환 함으로써 상기 멀티인터페이스에 대한 추가적인 지식을 보유하지 않고도 손쉽게 개발 및 관리가 가능하도록 하고, 개발자의 프로젝트 환경에서 추가적인 코드라인이 발생하지 않으므로 개발 생산성 향상 및 유지보수 비용이 감소할 뿐만 아니라 개별, 일괄, 예약 변환이 가능하므로 대규모의 엔터프라이즈 어플리케이션(Enterprise Application)의 서비스 변환에 저비용 고효율 개발 및 관리가 용이한 기술을 제공하고자 한다.
The present invention is included in the Healthcare Software Framework (HSF) Service Oriented Architecture (SOA) framework, and more specifically, a class file written on the basis of .NET in a wireless distributed system that takes a multilayered client / server structure through a network. If the interface specification is met, the service can be automatically converted to a multi-interface (Web Service-SOAP-based, REST / JSON Service, HTTP 1.1 Basic) format service, so that the development and management can be easily performed without additional knowledge about the multi-interface. And additional code lines are not generated in the developer's project environment, reducing development productivity and maintenance costs, as well as enabling individual, batch, and scheduled conversions, resulting in low cost for service transformation of large enterprise applications. High efficiency development and management It is intended to provide an easy technique.

또한, 본 발명의 실시 예에 따른 상기 클라이언트는 디지털 방송 단말기, 개인 정보 단말기(PDA, Personal Digital Assistant), 스마트 폰(Smart Phone), 태블릿(Tablet) PC, 아이패드(Ipad), 3G 단말기 예를 들면 IMT-2000(International Mobile Telecommunication 2000)단말기, WCDMA(Wideband Code Division Multiple Access)단말기, GSM/GPRS(Global System For Mobile Communication Packet Radio Service) 및 UMTS(Universal Mobile Telecommunication Service) 단말기 등과 같은 모든 정보통신기기 및 멀티미디어 기기 등이 포함될 수 있다. 그러나, 본 명세서에서 기재된 실시예에 따른 구성은 휴대단말기에만 적용 가능한 경우를 제외하면, 디지털 TV, 데스크탑 컴퓨터 등과 같은 고정 단말기에도 적용될 수도 있음을 본 기술 분야의 당업자라면 쉽게 알 수 있을 것이다.
In addition, the client according to an embodiment of the present invention is an example of a digital broadcasting terminal, a personal digital assistant (PDA), a smart phone, a tablet PC, an iPad, a 3G terminal. For example, all information communication devices such as International Mobile Telecommunication 2000 (IMT-2000) terminals, Wideband Code Division Multiple Access (WCDMA) terminals, Global System For Mobile Communication Packet Radio Service (GSM / GPRS), and Universal Mobile Telecommunication Service (UMTS) terminals. And multimedia devices. However, it will be readily apparent to those skilled in the art that the configuration according to the embodiments described herein may also be applied to fixed terminals such as digital TVs, desktop computers, and the like, except when applicable only to portable terminals.

이하, 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 대해 도 2를 참조하여 자세히 살펴보기로 한다.Hereinafter, a multi-interface service providing method in a wireless distributed system according to an embodiment of the present invention will be described in detail with reference to FIG. 2.

도 2는 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 대한 흐름도이다.2 is a flowchart illustrating a method for providing a multi-interface service in a wireless distribution system according to an embodiment of the present invention.

도 2를 참조하면, 먼저 210 과정에서 네트워크를 통해 연결된 적어도 하나 이상의 클라이언트에서 서비스를 호출한다.Referring to FIG. 2, first, a service is called by at least one or more clients connected through a network in step 210.

여기서, 상기 클라이언트는 동일 호스트 내 서로 다른 프로토콜을 사용하는 원격의 미들웨어 응용 컴포넌트이다.Here, the client is a remote middleware application component using different protocols in the same host.

212 과정에서는 상기 클라이언트와 통신하거나 신호를 전달하기 위해 서비스를 호출한 각 클라이언트의 최적화된 프로토콜을 노출한다.In step 212, the client exposes an optimized protocol of each client that calls a service to communicate with or communicate with the client.

이때, 본 발명의 일 실시 예에 따른 HSF SOA 클라이언트와 HSF SOA 서버간의 통신 프로토콜은 우선 네트워크 통신과 데이터 타입이 제어 가능한 무선 분산시스템에서의 고정된 HSF 데스크탑 클라이언트일 경우 WCF(Windows Communication Foundation)를 이용하여 TCP 통신으로 .NET Well Known DataType을 사용하여 HSF 서비스를 사용한다.At this time, the communication protocol between the HSF SOA client and the HSF SOA server according to an embodiment of the present invention uses WCF (Windows Communication Foundation) when the fixed HSF desktop client in a wireless distributed system that can control network communication and data types. HSF service using .NET Well Known DataType as TCP communication.

또한, HSF 이동단말 클라이언트일 경우 단말에서 가장 범용적으로 사용되는 HTTP 기반의 순수 XML 데이터 타입을 사용하여 서버와 통신을 하는 것을 기본으로 하나 이동단말 클라이언트에서 HTTP SOAP이 가능할 경우 이로 대체할 수 있다.In addition, in case of HSF mobile terminal client, it is basically based on the HTTP-based pure XML data type that is widely used in the terminal to communicate with the server, but it can be replaced when HTTP SOAP is possible in the mobile terminal client.

그리고 HSF 외부 시스템(External System) 클라이언트일 경우 내부 서비스 인터페이스는 외부 시스템을 위해 별도의 HTTP SOAP 프로토콜을 노출하며 외부 서비스 인터페이스는 Internal Service Facade를 통해 내부 서비스 인터페이스에 접근한다.In the case of an HSF External System client, the internal service interface exposes a separate HTTP SOAP protocol for the external system, and the external service interface accesses the internal service interface through the Internal Service Facade.

이후 214 과정에서 상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩한다.Thereafter, in step 214, the class loader dynamically loads the class file defined in the server using a class loader configured to execute a class file necessary for providing a service to the client.

이때, 상기 동적 로딩은 이완 결합(Loosely Coupled)인 비즈니스 컴포넌트(Business Component)의 어셈블리에서 소정의 인터페이스를 추출하여 웹 서비스로 변환하는 것을 의미한다.In this case, the dynamic loading means extracting a predetermined interface from an assembly of loosely coupled business components and converting the interface into a web service.

여기서, 도 3의 (a) 및 (b)를 참조하면 도 3은 상기 비즈니스 컴포넌트를 손쉽게 서비스 가능한 웹 서비스로 변환할 수 있는 알고리즘의 화면 예시도로서, 도 3의 (a)는 어셈블리에서 ServiceContract 대상의 추출을 도시한 것이고, 도 3의 (b)는 어셈블리에서 DataContract 대상의 추출을 도시한 것이다Here, referring to (a) and (b) of FIG. 3, FIG. 3 is an exemplary view of an algorithm that can convert the business component into a web service that can be easily serviced. FIG. Figure 3 (b) shows the extraction of the DataContract object in the assembly is shown.

그리고 상기 웹 서비스 변환과정에서 클래스 다이어그램은 도 4와 같이 수행된다.In the web service conversion process, a class diagram is performed as shown in FIG. 4.

그리고 상기 변환 타겟 서비스는 상기 WCF에서 제공되는 HTTP SOAP와 REST 프로토콜을 지원하는 것으로 가장 범용성이 높은 WS-Basic Profile 1.2 이상을 지원하는 웹 서비스와 REST 프로토콜의 노출을 지원한다.The conversion target service supports the HTTP SOAP and REST protocol provided by the WCF, and supports the exposure of the web service and the REST protocol supporting the most general WS-Basic Profile 1.2 or higher.

도 7은 이러한 WCF에서 제공되는 바인딩 프로토콜(Binding Protocol) 중 HSF에서 변환이 가능한 2개의 프로토콜에 대한 설명을 보인 것이다.Figure 7 shows the description of two protocols that can be converted in the HSF of the binding protocol (Binding Protocol) provided by such a WCF.

이러한 WCF 변환에 필요한 Config 파일과 서비스 코드의 구성은 원본 서비스 인터페이스를 basicHttPBinding와 webHttpBinding으로 변환하기 위해 웹 서비스를 호스팅해 줄 WCF의 호스팅 서비스 파일을 생성한다.The configuration of the Config file and the service code required for this WCF conversion creates a WCF hosting service file that will host the web service to convert the original service interface to basicHttPBinding and webHttpBinding.

이때, 상기 호스팅 서비스 파일의 예시는 하기와 같다.In this case, an example of the hosting service file is as follows.

그리고 웹 Config의 구성은 노출할 서비스의 프로토콜의 종류와 관련 설정값을 지정하기 위한 web.config 파일을 구성하고, 상기 구성된 web.config 파일의 예시는 도 8의 (a)와 같다.The configuration of the web config configures a web.config file for designating a protocol type and a related setting value of a service to be exposed. An example of the configured web.config file is shown in FIG.

계속해서, 216 과정에서는 상기 각 클라이언트의 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환한다.Subsequently, in step 216, the interface is converted for hosting corresponding to the optimized protocol of each client.

이때, 상기 인터페이스 변환은 오퍼레이션(Operation), 데이터(Data) 및 호스팅(Hosting)에 관련된 코드를 자동 생성하여 수행되고, 서비스 로직과 서비스 인터페이스가 분리되어 상기 서비스 인터페이스만으로 구성된 파일을 대상으로 변환이 수행되는 것으로, 도 5의 (a) 및 (b)를 참조하면 도 5의 (a)는 상기 서비스 로직 클래스와 분리되어 있는 서비스 인터페이스 클래스의 알고리즘을 보인 화면 예시도이고, 도 5의 (b)는 상기 서비스 인터페이스를 상속하고 있는 서비스 로직 클래스의 알고리즘을 보인 화면 예시도이다.In this case, the interface conversion is performed by automatically generating codes related to operations, data, and hosting, and the service logic and the service interface are separated so that the conversion is performed on a file composed of the service interface only. 5A and 5B, FIG. 5A is a diagram illustrating an example of an algorithm of a service interface class separated from the service logic class, and FIG. An example of a screen showing an algorithm of a service logic class that inherits the service interface.

상기 HSF 서비스 인터페이스와 DTO 객체의 복제는 서비스 변환을 위해 HSF 서비스 인터페이스와 DataContract에 필요한 DTO 객체는 변환된 서비스에서도 동일하게 이용되므로 타겟 서비스의 머신에 동일한 클래스로 생성되고, 상기 서비스 인터페이스의 HSF 호출 로직 구성은 웹 서비스 또는 REST로 노출된 서비스는 HSF의 내부 서비스 로직을 호출하기 위하여 HSF에서 정의된 Facade 호출 자동 코드가 추가된다.The replication of the HSF service interface and the DTO object is generated in the same class on the machine of the target service because the DTO object required for the HSF service interface and the DataContract for the service conversion is used the same in the converted service, and the HSF call logic of the service interface The configuration is a web service or a service exposed as REST, which adds the Facade call auto code defined in HSF to call HSF's internal service logic.

도 8의 (b)는 상기 변환된 인터페이스 클래스의 비하인드 코드로서 HSF의 원본 서비스를 호출하는 로직이 추가됨을 보인 화면 예시도이다.FIG. 8B is an exemplary view showing that logic for calling the original service of the HSF is added as a behind code of the converted interface class.

본 발명의 실시 예에서는 상기 서비스 인터페이스는 .NET 프레임워크 4.0 WCF를 사용하였고, 상기 .NET 프레임워크 4.0 이하의 하위 버전도 변환이 가능하나 호환성의 완전한 보장을 위해 4.0 이상을 사용하여야 하는 것으로 이러한 WCF는 도 6을 참조하여 상기 WCF 서비스 모델의 참조를 보인 화면 예시도이다.According to an embodiment of the present invention, the service interface uses the .NET Framework 4.0 WCF, and the lower version of the .NET Framework 4.0 or lower can be converted, but the WCF should be used for the complete guarantee of compatibility. 6 illustrates an example of a screen showing a reference of the WCF service model with reference to FIG. 6.

상기 216 과정의 동작 수행 후 상기 클래스 파일을 변환 후에 XML(Extensible Markup Language)로 기술되는 웹 서비스 기술언어 또는 기술된 정의 파일인 WSDL(Web Services Description Language)의 링크를 제공하여 해당 클라이언트에 대응하는 프로토콜로의 변환 유무를 확인하여 이후 216 과정에서WSDL 링크를 제공한다.
After converting the class file after performing operation 216, a protocol corresponding to a corresponding client by providing a link of a web service description language described in XML (Extensible Markup Language) or a WSDL (Web Services Description Language) which is a described definition file. After the conversion, the WSDL link is provided.

이상 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 제공 방법에 대해 살펴보았다.In the above, the method for providing a multi interface in a wireless distributed system according to an embodiment of the present invention has been described.

이하에서는, 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 제공 장치에 관해 도 9를 참조하여 살펴보기로 한다.Hereinafter, a multi-interface providing apparatus in a wireless distributed system according to an embodiment of the present invention will be described with reference to FIG. 9.

도 9는 본 발명의 일 실시 예에 따른 무선 분산시스템에서 멀티 인터페이스 제공 장치의 개략적인 블록도이다.9 is a schematic block diagram of a multi-interface providing apparatus in a wireless distributed system according to an embodiment of the present invention.

도 9를 참조하면, 본 발명에 적용된 무선 분산시스템에서 멀티 인터페이스 제공 장치(900)는 다양한 프로토콜 즉, TCP(911), HTTP/XML(913), HTTP/SOAP(915) 및 REST/SOAP(917)와, 인터페이스부(918)와 비즈로직(Biz Logic)프로세서(919)를 포함하는 제어부(920)와, 파사드 매니저(Facade Manager, 921)를 포함한다.9, in the wireless distributed system applied to the present invention, the multi-interface providing apparatus 900 includes various protocols, that is, TCP 911, HTTP / XML 913, HTTP / SOAP 915, and REST / SOAP 917. ), A control unit 920 including an interface unit 918 and a Biz Logic processor 919, and a facade manager 921.

상기 다양한 프로토콜 즉, TCP(911), HTTP/XML(913), HTTP/SOAP(915) 및 REST/SOAP(917)은 제어부(920)의 제어 하에 해당 클라이언트 예컨대, 데스크탑(910), 웹(912), 모바일(914) 및 태블릿(916)와 서버(900)간의 통신 혹은 데이터 전달을 수행한다.The various protocols, that is, the TCP 911, the HTTP / XML 913, the HTTP / SOAP 915, and the REST / SOAP 917 are controlled by the control unit 920, for example, the desktop 910, the web 912. ), Performs communication or data transfer between the mobile 914 and the tablet 916 and the server 900.

상기 비즈로직 프로세서(919)는 정형화한 비즈 템플릿을 수행/저장/관리한다.The business logic processor 919 executes / stores / manages a formalized business template.

상기 인터페이스부(918)는 상기 제어부(920)의 제어 하에 비즈로직 프로세서(919)와 노출된 프로토콜간의 인터페이스를 담당한다.The interface unit 918 is responsible for the interface between the business logic processor 919 and the exposed protocol under the control of the controller 920.

상기 제어부(920)은 상기 비즈로직 프로세서(919) 및 인터페이스부(918)를 포함하되, 서비스를 호출한 각 클라이언트에 최적화된 적어도 하나 이상의 프로토콜을 노출하도록 하고, 상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩하도록 하고, 상기 인터페이스부(918)를 이용하여 각 클라이언트에 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환하여 제공하도록 제어한다.The controller 920 includes the business logic processor 919 and the interface unit 918, and exposes at least one or more protocols optimized for each client invoking a service, and is a class necessary for providing a service to the client. Dynamically loading into a class file defined in the server using a class loader set up for execution of the file, and using the interface unit 918 to interface to the host corresponding to the protocol optimized for each client Control to provide by converting.

또한, 상기 제어부(920)는 상기 인터페이스 제공 시, 오퍼레이션(Operation), 데이터(Data) 및 호스팅(Hosting)에 관련된 코드를 자동 생성하여 수행하도록 제어한다.In addition, the controller 920 controls to automatically generate and execute codes related to operations, data, and hosting when the interface is provided.

상기 파사드 매니저(921)은 상기 서버(900) 내 프레임워크의 내부 클래스 구조를 생성하도록 한다.
The facade manager 921 generates an internal class structure of a framework in the server 900.

상기와 같이 본 발명에 따른 무선 분산시스템에서 멀티 인터페이스 제공 방법 및 장치에 관한 동작이 이루어질 수 있으며, 한편 상기한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나 여러 가지 변형이 본 발명의 범위를 벗어나지 않고 실시될 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 청구범위와 청구범위의 균등한 것에 의하여 정하여져야 할 것이다.As described above, an operation related to a method and an apparatus for providing a multi-interface in a wireless distributed system according to the present invention can be performed. Meanwhile, the above-described description of the present invention has been described with reference to specific embodiments. It can be done without. Accordingly, the scope of the present invention should not be limited by the illustrated embodiments, but should be determined by equivalents of the claims and the claims.

918: 인터페이스부 919: 비즈로직 프로세서
920: 제어부 921: 파사드 매니저
918: interface unit 919: business logic processor
920: control unit 921: facade manager

Claims (11)

무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법에 있어서,
네트워크를 통해 연결된 적어도 하나 이상의 클라이언트에서 서비스를 호출하는 과정과,
상기 클라이언트와 통신하거나 신호를 전달하기 위해 상기 서비스를 호출한 각 클라이언트에 최적화된 프로토콜을 노출하는 과정과,
상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩하는 과정과,
상기 각 클라이언트의 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환하는 과정을 포함하고,
상기 클래스 파일은,
서비스 로직과 서비스 인터페이스가 분리되어 상기 서비스 인터페이스만으로 구성된 파일을 대상으로 변환이 수행됨을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법.
In the method of providing a multi-interface service in a wireless distributed system,
Calling a service from at least one client connected over a network;
Exposing an optimized protocol to each client invoking the service to communicate with or communicate with the client,
Dynamically loading a class file defined in a server by using a class loader configured to execute a class file necessary for providing a service to the client,
Converting an interface for hosting corresponding to the optimized protocol of each client,
The class file,
Method for providing a multi-interface service in a wireless distributed system, characterized in that the service logic and the service interface is separated and the conversion is performed on the file consisting of only the service interface.
제1항에 있어서, 상기 인터페이스를 변환하여 제공하는 과정은,
오퍼레이션(Operation), 데이터(Data) 및 호스팅(Hosting)에 관련된 코드를 자동 생성하여 수행됨을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법.
The process of claim 1, wherein the converting and providing the interface comprises:
Method for providing a multi-interface service in a wireless distributed system, characterized in that performed by automatically generating code related to the operation (Operation), data (Data) and hosting (Hosting).
삭제delete 제1항에 있어서, 상기 클라이언트는,
동일 호스트 내 서로 다른 프로토콜을 사용하는 원격의 미들웨어 응용 컴포넌트임을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법.
The method of claim 1, wherein the client,
A method for providing a multi-interface service in a wireless distributed system, which is a remote middleware application component using different protocols in the same host.
제1항에 있어서, 상기 동적 로딩은,
이완 결합(Loosely Coupled)인 비즈니스 컴포넌트(Business Component)의 어셈블리에서 소정의 인터페이스 클래스를 추출하여 웹 서비스로 변환함을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법.
The method of claim 1, wherein the dynamic loading,
A method for providing a multi-interface service in a wireless distributed system, comprising: extracting a predetermined interface class from an assembly of a loosely coupled business component and converting it into a web service.
제1항에 있어서, 상기 서버 및 클라이언트는,
WCF(Windows Communication Foundation)를 이용하여 TCP 혹은 HTTP 혹은 HTTP SOAP과 REST 프로토콜로 통신함을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 방법.
The method of claim 1, wherein the server and client,
A method for providing a multi-interface service in a wireless distributed system using WCF (Windows Communication Foundation) to communicate with TCP, HTTP, or HTTP SOAP and REST protocols.
제1항에 있어서,
상기 클래스 파일을 변환 후에 XML(Extensible Markup Language)로 기술되는 웹 서비스 기술언어 또는 기술된 정의 파일인 WSDL(Web Services Description Language)의 링크를 제공하여 해당 클라이언트에 대응하는 프로토콜로의 변환 유무를 확인하는 과정을 더 포함함을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 제공 방법.
The method of claim 1,
After converting the class file, a link of a web service description language (XML) described in XML (Extensible Markup Language) or web definition description file (WSDL), which is a described definition file, is provided to confirm whether or not conversion is performed to a protocol corresponding to the corresponding client. The multi-interface providing method in a wireless distributed system characterized in that it further comprises a process.
제1항에 있어서, 상기 인터페이스는,
상기 노출된 각 프로토콜의 기능에 적합한 인터페이스 변환 가능한 인터페이스임을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 제공 방법.
The method of claim 1, wherein the interface,
Method for providing a multi-interface in a wireless distributed system, characterized in that the interface convertible interface suitable for the function of each exposed protocol.
무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치에 있어서,
서버에서 수행할 비즈로직(Biz logic)을 정형화한 비즈 템플릿을 수행/저장/관리하는 비즈로직 프로세서와,
상기 비즈로직 프로세서와 노출된 프로토콜간의 인터페이스를 담당하는 인터페이스부와,
상기 비즈로직 프로세서 및 인터페이스부를 포함하되, 서비스를 호출한 각 클라이언트에 최적화된 적어도 하나 이상의 프로토콜을 노출하도록 하고, 상기 클라이언트로 서비스 제공을 위해 필요한 클래스 파일의 실행을 위해 설정된 클래스 로더(class loader)를 이용하여 서버에 정의된 클래스 파일에 동적으로 로딩하도록 하고, 상기 인터페이스부를 이용하여 각 클라이언트에 최적화된 프로토콜에 대응하는 호스팅에 맞게 인터페이스를 변환하여 제공하도록 제어하는 제어부를 포함하고,
상기 클래스 파일은,
서비스 로직과 서비스 인터페이스가 분리되어 상기 서비스 인터페이스만으로 구성된 파일을 대상으로 변환이 수행됨을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치.
In the multi-interface service providing apparatus in a wireless distributed system,
BizLogic processor that executes / stores / manages Biz template that formalizes Biz logic to be executed in server,
An interface unit in charge of an interface between the bizlogic processor and an exposed protocol;
A class loader including the business logic processor and an interface unit to expose at least one or more protocols optimized for each client invoking a service, and executing a class file necessary for providing a service to the client. And a controller configured to dynamically load the class file defined in the server, and to convert and provide an interface for hosting corresponding to a protocol optimized for each client by using the interface unit.
The class file,
Device for providing a multi-interface service in a wireless distributed system, characterized in that the service logic and the service interface is separated and the conversion is performed on the file consisting of only the service interface.
제9항에 있어서, 상기 제어부는,
상기 멀티 인터페이스 제공 시, 오퍼레이션(Operation), 데이터(Data) 및 호스팅(Hosting)에 관련된 코드를 자동 생성하여 수행하도록 제어함을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치.
10. The apparatus according to claim 9,
Apparatus for providing a multi-interface service in a wireless distributed system, characterized in that the control to automatically generate and execute the code associated with the operation (Operation), data (Data) and hosting (Host) when providing the multi-interface.
제9항에 있어서, 상기 서버 및 클라이언트는,
WCF(Windows Communication Foundation)를 이용하여 TCP 혹은 HTTP 혹은 HTTP SOAP과 REST 프로토콜로 통신함을 특징으로 하는 무선 분산시스템에서 멀티 인터페이스 서비스 제공 장치.
The method of claim 9, wherein the server and client,
Apparatus for providing a multi-interface service in a wireless distributed system using WCF (Windows Communication Foundation) to communicate with TCP or HTTP or HTTP SOAP and REST protocols.
KR1020110134657A 2011-12-14 2011-12-14 Method and apparatus for providing multi-interface in wireless distributed system KR101382439B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110134657A KR101382439B1 (en) 2011-12-14 2011-12-14 Method and apparatus for providing multi-interface in wireless distributed system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110134657A KR101382439B1 (en) 2011-12-14 2011-12-14 Method and apparatus for providing multi-interface in wireless distributed system

Publications (2)

Publication Number Publication Date
KR20130067761A KR20130067761A (en) 2013-06-25
KR101382439B1 true KR101382439B1 (en) 2014-04-09

Family

ID=48863528

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110134657A KR101382439B1 (en) 2011-12-14 2011-12-14 Method and apparatus for providing multi-interface in wireless distributed system

Country Status (1)

Country Link
KR (1) KR101382439B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020025519A (en) * 2000-09-29 2002-04-04 이상구 Gateway/server integration system for servicing an wap based mobile wireless internet service
KR20060005284A (en) * 2004-07-12 2006-01-17 삼성전자주식회사 Method and apparatus for searching rights objects stored in portable storage device using object location data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020025519A (en) * 2000-09-29 2002-04-04 이상구 Gateway/server integration system for servicing an wap based mobile wireless internet service
KR20060005284A (en) * 2004-07-12 2006-01-17 삼성전자주식회사 Method and apparatus for searching rights objects stored in portable storage device using object location data

Also Published As

Publication number Publication date
KR20130067761A (en) 2013-06-25

Similar Documents

Publication Publication Date Title
US11172042B2 (en) Platform-independent application publishing to a front-end interface by encapsulating published content in a web container
JP5241440B2 (en) System and method for creating and communicating with component-based wireless applications
JP5489807B2 (en) Information processing apparatus, form data creation method, and computer program
US8166476B2 (en) On-demand access to a virtual representation of a physical computer system
US10193960B2 (en) Mobile core client architecture
US20220060558A1 (en) Systems and Methods for Platform-Independent Application Publishing to a Front-End Interface
JP2006512694A (en) System and method for building and running a platform neutral generic service client application
WO2017041649A1 (en) Application deployment method and device
CN106445705A (en) Platform cascading method and system based on Rabbit MQ and Socket.io
CA2511916A1 (en) System and method of building wireless component applications
CN110764752B (en) System and method for realizing graphic service arrangement of Restful service
CN106412009A (en) Interface calling method and device
CN103297275A (en) Dynamic discovery and loading system and method for Web network management client module
CN103729425A (en) Operation response method, client, browser and operation response system
CN103701834A (en) Proxy based mobile cloud service access system and method
US11411812B2 (en) Dynamic service creation for microservice-based integration service
US20110040853A1 (en) KVM switch and KVM system
CN112558968A (en) Resource tree view generation method, device, equipment and storage medium
US8774599B2 (en) Method for transcoding and playing back video files based on grid technology in devices having limited computing power
KR101382439B1 (en) Method and apparatus for providing multi-interface in wireless distributed system
CN103677842A (en) Software tool configuration type integrated expansion calling method and system
JP2016081535A (en) Electronic device for internet protocol communications
CN113641641A (en) Switching method, switching system, equipment and storage medium of file storage service
JP2014229114A (en) OSGi SERVICE REGISTRATION DEVICE, REGISTRATION METHOD AND REGISTRATION PROGRAM
EP3872630B1 (en) Request processing method and apparatus, electronic device, and computer storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180411

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190328

Year of fee payment: 6