KR102316868B1 - Method for operating different version of web applications, server and system - Google Patents

Method for operating different version of web applications, server and system Download PDF

Info

Publication number
KR102316868B1
KR102316868B1 KR1020150058763A KR20150058763A KR102316868B1 KR 102316868 B1 KR102316868 B1 KR 102316868B1 KR 1020150058763 A KR1020150058763 A KR 1020150058763A KR 20150058763 A KR20150058763 A KR 20150058763A KR 102316868 B1 KR102316868 B1 KR 102316868B1
Authority
KR
South Korea
Prior art keywords
command
web application
old version
server
version
Prior art date
Application number
KR1020150058763A
Other languages
Korean (ko)
Other versions
KR20160127407A (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 KR1020150058763A priority Critical patent/KR102316868B1/en
Publication of KR20160127407A publication Critical patent/KR20160127407A/en
Application granted granted Critical
Publication of KR102316868B1 publication Critical patent/KR102316868B1/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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser

Abstract

상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법은 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드(Command)를 수신하는 경우, 커맨드 해석 서버에게 구 버전의 커맨드의 해석을 요청하는 단계, 커맨드 해석 서버로부터 해석된 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버에게 해석된 구 버전의 커맨드의 처리를 요청하는 단계, 커맨드 실행 서버로부터 구 버전의 커맨드의 처리 결과를 수신하여, 구 버전의 웹 어플리케이션에게 전달하는 단계, 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 커맨드 실행 서버에게 신규 버전의 커맨드의 처리를 요청하는 단계 및 커맨드 실행 서버로부터 신규 버전의 커맨드의 처리 결과를 수신하여, 신규 버전의 웹 어플리케이션에게 전달하는 단계를 포함할 수 있다. The method of operating different versions of web applications in combination includes the steps of, when receiving a command of the old version from the old version of the web application, requesting the command interpretation server to interpret the old version of the command, and interpretation from the command interpretation server When receiving the old version of the command, requesting the command execution server to process the interpreted old version of the command, receiving the processing result of the old version command from the command execution server and delivering it to the old version of the web application Step, when receiving the new version of the command from the new version of the web application, requesting the command execution server to process the new version of the command, and receiving the processing result of the new version of the command from the command execution server, It may include the step of delivering to the web application.

Description

상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법, 서버 및 시스템{METHOD FOR OPERATING DIFFERENT VERSION OF WEB APPLICATIONS, SERVER AND SYSTEM}A method, server, and system for using and operating different versions of web applications in combination

본 발명은 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법, 서버 및 시스템에 관한 것이다. The present invention relates to a method, server and system for using and operating different versions of a web application together.

미들웨어(middleware) 응용 서비스는 미들웨어 상의 자원을 이용하여 응용 프로그램(예를 들어, MHP상의 Java, Web 미들웨어 상의 Javascript 등)을 구동시키는 서비스이다. 여기서, 미들웨어는 운영체제(OS) 역할을 하며, 응용 프로그램의 컴퓨팅(Computing)을 CPU 연산으로 해석하는 역할을 수행한다. The middleware application service is a service that runs an application program (eg, Java on MHP, Javascript on Web middleware, etc.) using resources on the middleware. Here, the middleware serves as an operating system (OS) and interprets the computing of an application program as a CPU operation.

PL 응용 서비스는 미들웨어가 추상화할 수 없는 서비스를 제공할 수 있다. PL 응용 서비스는 C언어로 구성된 네이티브 라이브러리(Native Libray)로서, 미들웨어 API를 통해서 통신을 수행한다. 이러한, PL 응용 서비스는 예를 들어, 카메라 모듈 응용, 클라우드 게임 등을 포함할 수 있다. PL application services can provide services that middleware cannot abstract. PL application service is a native library composed of C language and communicates through middleware API. Such a PL application service may include, for example, a camera module application, a cloud game, and the like.

한편, 미들웨어 응용 서비스와 PL 응용 서비스는 배포, 메커니즘, 주기 측면에서 차이가 존재한다. 구체적으로, PL 응용 서비스의 업데이트 주기는 연 2~3회 정도이나, 미들웨어 응용 서비스의 업데이트 주기는 실시간 업데이트가 가능하다. On the other hand, there is a difference between the middleware application service and the PL application service in terms of distribution, mechanism, and cycle. Specifically, the update cycle of the PL application service is about 2-3 times a year, but the update cycle of the middleware application service can be updated in real time.

기존에는 PL 응용 서비스 및 미들웨어 응용 서비스를 업데이트하는 과정 중에, 서비스가 중단되는 문제가 생기곤 하였다. 예를 들어, 셋톱박스에서 미들웨어 프로그램과 네이티브 프로그램을 업데이트하게 되면, 이 둘 사이의 업데이트 시간 간격 차이로 인해, 셋톱박스는 원활한 서비스를 제공하기 어려웠다. In the past, during the process of updating the PL application service and middleware application service, there was a problem that the service was stopped. For example, when a middleware program and a native program are updated in a set-top box, it is difficult for the set-top box to provide a smooth service due to a difference in the update time interval between the two.

한국공개특허 제2013-0000884호에는 자바의 클래스 로더를 이용하여 인터페이스 라이브러리를 로드하고, 클래스 로더를 이용하여 인터페이스 라이브러리에 대해 타겟 라이브러리의 언로드와 연관된 언로드 함수를 호출하고, 인터페이스 라이브러리를 통해 호출된 언로드 함수에 기초하여 타겟 라이브러리를 언로드하고, 타겟 라이브러리가 언로드되면, 타겟 라이브러리의 파일을 신규 파일로 교체하는 구성이 개시되어 있다. In Korea Patent Publication No. 2013-0000884, an interface library is loaded using a Java class loader, an unload function related to the unloading of a target library is called with respect to the interface library using the class loader, and unloading is called through the interface library. A configuration is disclosed in which a target library is unloaded based on a function, and when the target library is unloaded, a file in the target library is replaced with a new file.

구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드(Command)를 수신한 경우, 구 버전의 커맨드를 해석하여 처리한 후, 처리 결과를 구 버전의 웹 어플리케이션에게 전달하고자 한다. 또한, 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신한 경우에는, 신규 버전의 커맨드의 해석 없이, 신규 버전의 커맨드를 처리하고, 처리 결과를 신규 버전의 웹 어플리케이션에게 전달하고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. When a command of the old version is received from the old version of the web application, the old version of the command is interpreted and processed, and then the processing result is transmitted to the old version of the web application. In addition, when a new version of the command is received from the new version of the web application, the new version of the command is processed without interpretation of the new version of the command, and the processing result is transmitted to the new version of the web application. However, the technical problems to be achieved by the present embodiment are not limited to the technical problems described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법은 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드(Command)를 수신하는 경우, 커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 단계, 상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 커맨드의 처리를 요청하는 단계, 상기 커맨드 실행 서버로부터 상기 구 버전의 커맨드의 처리 결과를 수신하여, 상기 구 버전의 웹 어플리케이션에게 전달하는 단계, 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 커맨드의 처리를 요청하는 단계 및 상기 커맨드 실행 서버로부터 상기 신규 버전의 커맨드의 처리 결과를 수신하여, 상기 신규 버전의 웹 어플리케이션에게 전달하는 단계를 포함할 수 있다.As a technical means for achieving the above-described technical problem, the method for operating different versions of web applications in combination according to the first aspect of the present invention is when receiving an old version of a command from the old version of the web application, requesting a command interpretation server to interpret the old version of the command, and when receiving the interpreted old version of the command from the command interpretation server, requesting the command execution server to process the interpreted old version of the command , receiving the processing result of the old version of the command from the command execution server and transmitting the result to the old version of the web application; The method may include requesting processing of the new version of the command, and receiving the processing result of the new version of the command from the command execution server and transmitting the processing result to the new version of the web application.

또한, 본 발명의 제 2 측면에 따른 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 운용 서버는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 커맨드 수신부, 커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 커맨드 해석 요청부, 상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 커맨드의 처리를 요청하는 커맨드 처리 요청부 및 상기 커맨드 실행 서버로부터 상기 구 버전의 커맨드의 처리 결과를 수신하여, 상기 구 버전의 웹 어플리케이션에게 전달하는 처리 결과 송수신부를 포함하되, 상기 커맨드 처리 요청부는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 커맨드의 처리를 요청하고, 상기 처리 결과 송수신부는 상기 커맨드 실행 서버로부터 상기 신규 버전의 커맨드의 처리 결과를 수신하여, 상기 신규 버전의 웹 어플리케이션에게 전달할 수 있다. In addition, the operation server for operating by using different versions of the web application according to the second aspect of the present invention provides a command receiving unit for receiving the old version command from the old version web application, the command interpretation server to interpret the old version of the command a command interpretation requesting unit for requesting a command, a command processing requesting unit for requesting the command execution server to process the interpreted old version of the command when receiving the interpreted old version of the command from the command interpretation server, and the command execution server and a processing result transceiver for receiving the processing result of the old version of the command from and transmitting the processing result to the old version of the web application, wherein the command processing request unit receives the new version of the command from the new version of the web application. The command execution server may request the processing of the new version of the command, and the processing result transceiver may receive the processing result of the new version of the command from the command execution server and deliver it to the new version of the web application.

또한, 본 발명의 제 3 측면에 따른 상이한 버전의 웹 어플리케이션을 병용하여 운용 시스템은 셋탑박스로부터 구 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 커맨드 해석 서버에게 상기 구 버전의 웹 어플리케이션 커맨드의 해석을 요청하고, 상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 웹 어플리케이션 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 상기 커맨드 실행 서버로부터 상기 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하여, 상기 셋탑박스에게 전달하고, 상기 셋탑박스로부터 신규 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 상기 커맨드 실행 서버로부터 상기 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하여, 상기 셋탑박스에게 전달하는 운용 서버 및 상기 운용 서버에게 상기 구 버전의 웹 어플리케이션 커맨드를 전달하고, 상기 운용 서버로부터 상기 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하고, 상기 운용 서버에게 상기 신규 버전의 웹 어플리케이션 커맨드를 전달하고, 운용 서버로부터 상기 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하는 셋탑박스를 포함할 수 있다. In addition, when the operating system receives the web application command of the old version from the set-top box by using the web application of different versions according to the third aspect of the present invention, it requests the command interpretation server to interpret the web application command of the old version. and, upon receiving the web application command of the old version interpreted from the command interpretation server, request the command execution server to process the interpreted web application command of the old version, and send the command execution server to the web application of the old version. Receives the processing result of the application command, transmits it to the set-top box, and when receiving the new version of the web application command from the set-top box, requests the command execution server to process the new version of the web application command, Receives the processing result of the new version of the web application command from the command execution server, and transmits the old version of the web application command to the operation server and the operation server for delivering to the set-top box, and from the operation server of the old version It may include a set-top box that receives the processing result of the web application command, transmits the web application command of the new version to the operation server, and receives the processing result of the web application command of the new version from the operation server.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary, and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 운용 서버는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드(Command)를 수신한 경우, 구 버전의 커맨드를 해석하여 처리한 후, 처리 결과를 구 버전의 웹 어플리케이션에게 전달할 수 있다. 또한, 운용 서버는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신한 경우, 신규 버전의 커맨드의 해석 없이, 신규 버전의 커맨드를 처리하고, 처리 결과를 신규 버전의 웹 어플리케이션에게 전달할 수 있다. 이처럼, 운용 서버는 상이한 버전(구 버전 및 신규 버전)의 웹 어플리케이션을 병용하여 운용하기 때문에, 상이한 버전의 커맨드 처리 요청이 들어와도, 웹 어플리케이션 서비스를 중단 없이 제공할 수 있다. According to any one of the above-described problem solving means of the present invention, when the operation server receives the old version of the command from the old version of the web application, it interprets and processes the old version of the command, and then retrieves the processing result It can be passed to a version of the web application. In addition, when receiving the new version of the command from the new version of the web application, the operation server may process the new version of the command without interpreting the new version of the command and deliver the processing result to the new version of the web application. As such, since the operation server uses and operates web applications of different versions (old version and new version) in combination, even when a command processing request of a different version is received, the web application service can be provided without interruption.

도 1은 본 발명의 일 실시예에 따른, 웹 어플리케이션 운용 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 운용 서버의 세부 구성도이다.
도 3은 본 발명의 일 실시예에 따른, 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법의 일예를 도시한 순서도이다.
1 is a block diagram of a web application operating system according to an embodiment of the present invention.
Figure 2 is a detailed configuration diagram of the operation server shown in Figure 1, according to an embodiment of the present invention.
3 is a flowchart illustrating an example of a method of using and operating different versions of web applications in combination according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included, rather than excluding other components, unless otherwise stated.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.Some of the operations or functions described as being performed by the terminal or device in the present specification may be instead performed by a server connected to the terminal or device. Similarly, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다.Hereinafter, detailed contents for carrying out the present invention will be described with reference to the accompanying configuration diagram or process flow diagram.

도 1은 본 발명의 일 실시예에 따른, 웹 어플리케이션 운용 시스템의 구성도이다.1 is a block diagram of a web application operating system according to an embodiment of the present invention.

도 1을 참조하면, 웹 어플리케이션 운용 시스템은 셋탑박스(100), 운용 서버(110), 커맨드 해석 서버(120), 커맨드 실행 서버(130) 및 커맨드 통합 실행 서버(140)를 포함할 수 있다. 다만, 이러한 도 1의 웹 어플리케이션 운용 시스템은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다.Referring to FIG. 1 , the web application operating system may include a set-top box 100 , an operation server 110 , a command interpretation server 120 , a command execution server 130 , and an integrated command execution server 140 . However, since the web application operating system of FIG. 1 is only one embodiment of the present invention, the present invention is not limitedly interpreted through FIG. 1 , and may be configured differently from FIG. 1 according to various embodiments of the present invention. .

셋탑박스(100)는 셋탑박스(100)에 설치된 응용 프로그램의 실행과 관련한 커맨드(Command)를 운용 서버(110)에게 전달할 수 있다. 여기서, 커맨드는 예를 들어, 응용 프로그램의 Start(또는 End) 커맨드, 네이티브(Native) 응용의 버전 쿼리, HW 상태 쿼리가 될 수 있다. 만일, 카메라 응용의 경우, 커맨드는 카메라 자세 제어 등의 HW 제어 커맨드 등이 될 수 있다.The set-top box 100 may transmit a command related to the execution of an application program installed in the set-top box 100 to the operation server 110 . Here, the command may be, for example, a Start (or End) command of an application program, a version query of a native application, or a HW status query. In case of camera application, the command may be a HW control command such as camera posture control.

셋탑박스(100)는 카메라 장치가 탑재된 경우, 카메라 장치로부터 수신한 비동기 이벤트를 운용 서버(110)에게 전송할 수 있다. 또는, 셋탑박스(100)는 게임 어플리케이션이 가동되는 경우, 게임 콘트롤러로부터 수신한 게임 Start 이벤트 (또는 게임 End 이벤트, 게임 제어 이벤트 등)를 운용 서버(110)에게 전송할 수 있다. 여기서, 셋탑박스(100)는 미들웨어 어플리케이션 및 네이티브 어플리케이션 사이에 폴링(polling)을 이용하여 비동기 이벤트를 수신할 수 있다.The set-top box 100 may transmit an asynchronous event received from the camera device to the operation server 110 when the camera device is mounted. Alternatively, the set-top box 100 may transmit a game start event (or a game end event, a game control event, etc.) received from the game controller to the operation server 110 when the game application is operated. Here, the set-top box 100 may receive an asynchronous event by using polling between the middleware application and the native application.

구체적으로, 셋탑박스(100)는 웹 어플리케이션(셋탑박스(100)에 설치된 어플리케이션)이 업데이트되기 전에, 해당 웹 어플리케이션의 가동 요청이 들어오면, 운용 서버(110)에게 구 버전의 웹 어플리케이션 커맨드를 전달할 수 있다. 또한, 셋탑박스(100)는 운용 서버(110)로부터 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신할 수 있다.Specifically, the set-top box 100, before the web application (application installed in the set-top box 100) is updated, when the operation request of the corresponding web application comes in, to deliver the old version of the web application command to the operation server (110) can In addition, the set-top box 100 may receive the processing result of the web application command of the old version from the operation server (110).

셋탑박스(100)는 업데이트된 웹 어플리케이션에 대한 해당 웹 어플리케이션의 가동 요청이 들어오면, 운용 서버(110)에게 신규 버전의 웹 어플리케이션 커맨드를 전달할 수 있다. 또한, 셋탑박스(100)는 운용 서버(110)로부터 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신할 수 있다.The set-top box 100 may transmit a new version of the web application command to the operation server 110 when a request for operation of the corresponding web application for the updated web application is received. In addition, the set-top box 100 may receive the processing result of the web application command of the new version from the operation server (110).

운용 서버(110)는 셋탑박스(100)로부터 구 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 커맨드 해석 서버(120)를 통해, 해석된 구 버전의 웹 어플리케이션 커맨드를 수신할 수 있다. 또한, 운용 서버(110)는 커맨드 실행 서버(130)에게 해석된 구 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 커맨드 실행 서버(130)로부터 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신한 후, 셋탑박스(100)에게 전달할 수 있다.When receiving the old version of the web application command from the set-top box 100, the operation server 110 may receive the interpreted old version of the web application command through the command interpretation server 120 . In addition, the operation server 110 requests the command execution server 130 to process the interpreted web application command of the old version, and after receiving the processing result of the old version web application command from the command execution server 130 , It can be delivered to the set-top box (100).

운용 서버(110)는 셋탑박스(100)로부터 신규 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 커맨드 해석 없이, 커맨드 실행 서버(130)에게 신규 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 커맨드 실행 서버(130)로부터 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신한 후, 셋탑박스(100)에게 전달할 수 있다.When the operation server 110 receives the new version of the web application command from the set-top box 100, it requests the command execution server 130 to process the new version of the web application command without interpreting the command, and the command execution server ( After receiving the processing result of the web application command of the new version from 130 , it may be delivered to the set-top box 100 .

운용 서버(110)는 커맨드 실행 서버(130)가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 통합 실행 서버(140)에게 웹 어플리케이션 커맨드 처리를 요청하고, 커맨드 통합 실행 서버(140)로부터 웹 어플리케이션 커맨드 처리 결과를 수신할 수 있다. 예를 들어, 신규 버전의 커맨드 실행 서버(130)로 said@kt.com 형의 게임 수행 요청이 들어온 경우, 운용 서버(110)는 커맨드 실행 서버(130)가 업데이트 되었음을 감지하고, 커맨드 통합 실행 서버(140)에게 said@kt.com 형의 게임 수행을 위한 변환 배치 작업을 의뢰할 수 있다.When the command execution server 130 is changed from the old version to the new version, the operation server 110 requests the web application command processing from the command integrated execution server 140 , and processes the web application command from the command integrated execution server 140 . results can be received. For example, when a game execution request of the type said@kt.com is received to the command execution server 130 of the new version, the operation server 110 detects that the command execution server 130 has been updated, and the command execution server 130 is integrated. You can ask (140) to do a transformation arrangement for the said@kt.com type of game.

운용 서버(110)는 커맨드 해석 서버(120)에게 구 버전의 웹 어플리케이션 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 셋탑박스(100)에게 에러 발생 메시지(예를 들어, 에러 코드 메시지)를 전송할 수 있다. 이후, 셋탑박스(100)는 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션 커맨드를 운용 서버(110)에게 전송할 수 있다.When an error occurs in the process of requesting the command interpretation server 120 to interpret the old version of the web application command, the operation server 110 generates an error message to the set-top box 100 (eg, an error code message). can be transmitted. Thereafter, the set-top box 100 may transmit the web application command of the old version to the operation server 110 after a preset time.

운용 서버(110)는 셋탑박스로부터 구 버전의 웹 어플리케이션 커맨드를 수신하는 과정에서 에러가 발생한 경우, 셋탑박스(100)에게 에러 발생 메시지(예를 들어, 네트워크 에러 메시지)를 전송할 수 있다. 이 후, 셋탑박스(100)는 기 설정된 시간(예를 들어, 3분) 이후에, 구 버전의 웹 어플리케이션 커맨드를 운용 서버(110)에게 전송할 수 있다.When an error occurs in the process of receiving the web application command of the old version from the set-top box, the operation server 110 may transmit an error occurrence message (eg, a network error message) to the set-top box 100 . Thereafter, the set-top box 100 may transmit the web application command of the old version to the operation server 110 after a preset time (eg, 3 minutes).

운용 서버(110)는 셋탑박스(100)에서 발생한 이벤트(예를 들어, 셋탑박스(100)의 전원이 OFF 상태에서 ON 상태로 전환된 경우 등)를 이벤트 폴링(Event Polling) 방식으로 처리할 수 있다. 여기서, 이벤트 폴링은 비동기식으로 이벤트를 처리하는 방법이다. 예를 들어, 운용 서버(110)가 셋탑박스(100)로부터 http_get 커맨드를 수신한 경우, 운용 서버(110)은 해당 http_get 커맨드에 대한 처리 결과를 셋탑박스(100)에게 실시간으로 전송하는 것이 아니라, 처리 결과 전송 시점을 자체적으로 결정하여, 결정된 시점에 처리 결과를 셋탑박스(100)에게 전송할 수 있다. 커맨드 해석 서버(120)는 커맨드의 구 버전 및 신규 버전 모두를 관리하며, 구 버전의 웹 어플리케이션 커맨드를 구 버전의 웹 어플리케이션 커맨드에 대응하는 신규 버전의 웹 어플리케이션 커맨드로 해석할 수 있다. 예를 들어, 게임 서버에 커맨드 해석 서버(120)가 함께 구축되면, 게임 버전과 상관없이, 게임 커맨드를 수정하지 않아도, 커맨드 해석 서버(120)는 게임 커맨드를 게임 서버와의 연동에 필요한 게임 실행에 맞는 커맨드로 해석할 수 있다. The operation server 110 may process an event that occurs in the set-top box 100 (eg, when the power of the set-top box 100 is switched from an OFF state to an ON state, etc.) in an event polling method. have. Here, event polling is a method of processing events asynchronously. For example, when the operation server 110 receives the http_get command from the set-top box 100, the operation server 110 does not transmit the processing result for the corresponding http_get command to the set-top box 100 in real time, The processing result transmission time may be determined by itself, and the processing result may be transmitted to the set-top box 100 at the determined time point. The command interpretation server 120 manages both the old version and the new version of the command, and may interpret the old version of the web application command as a new version of the web application command corresponding to the old version of the web application command. For example, if the command interpretation server 120 is built together in the game server, regardless of the game version, even if the game command is not modified, the command interpretation server 120 executes the game required to link the game command with the game server. It can be interpreted as a command suitable for

커맨드 실행 서버(130)는 신규 버전(또는 해석된 구 버전)의 웹 어플리케이션 커맨드의 처리를 수행할 수 있다.The command execution server 130 may process the web application command of the new version (or the interpreted old version).

커맨드 통합 실행 서버(140)는 구 버전의 커맨드 실행 서버(130) 및 신규 버전의 커맨드 실행 서버(130) 각각에서 관리하는 데이터를 모두 저장하고 관리하고 있다. 예를 들어, 운용 서버(110)로부터 said@kt.com 형의 게임 수행을 위한 변환 배치 작업을 의뢰받게 되면, 커맨드 통합 실행 서버(140)는 프로파일 컨버팅(Profile Converting) 과정을 거쳐 신규 버전의 커맨드 실행 서버(130)에서 관리하고 있는 데이터에 기초하여, said@kt.com 형의 게임 수행을 위한 변환 배치 작업을 수행할 수 있다.The integrated command execution server 140 stores and manages all data managed by the command execution server 130 of the old version and the command execution server 130 of the new version, respectively. For example, when the operation server 110 receives a request for a conversion batch operation for performing the said@kt.com type game, the command integration execution server 140 goes through a profile converting process to convert the new version of the command Based on the data managed by the execution server 130, it is possible to perform a conversion batch operation for performing the said@kt.com type game.

일반적으로, 도 1의 웹 어플리케이션 운용 시스템의 각 구성요소들은 네트워크(150)를 통해 연결된다. 네트워크는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(network)의 일례에는 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 3G, 4G 등이 포함되나 이에 한정되지는 않는다.In general, each component of the web application operating system of FIG. 1 is connected through the network 150 . The network refers to a connection structure capable of exchanging information between each node, such as terminals and servers. Examples of such a network include 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), WIMAX ( World Interoperability for Microwave Access), Wi-Fi, 3G, 4G, and the like.

이하에서는 도 1의 웹 어플리케이션 운용 시스템의 각 구성요소의 동작에 대해 보다 구체적으로 설명한다.Hereinafter, the operation of each component of the web application operating system of FIG. 1 will be described in more detail.

도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 운용 서버(110)의 세부 구성도이다.Figure 2 is a detailed configuration diagram of the operation server 110 shown in Figure 1, according to an embodiment of the present invention.

도 2를 참조하면, 운용 서버(110)는 커맨드 수신부(200), 커맨드 해석 요청부(210), 커맨드 처리 요청부(220), 처리 결과 송수신부(230), 에러 메시지 전송부(240) 및 DB(250)를 포함할 수 있다. 다만, 도 2에 도시된 운용 서버(110)는 본 발명의 하나의 구현 예에 불과하며, 도 2에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다.Referring to FIG. 2 , the operation server 110 includes a command receiving unit 200 , a command interpretation requesting unit 210 , a command processing requesting unit 220 , a processing result transmitting and receiving unit 230 , an error message transmitting unit 240 and DB 250 may be included. However, the operation server 110 shown in FIG. 2 is only one implementation example of the present invention, and various modifications are possible based on the components shown in FIG. 2 .

커맨드 수신부(200)는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신할 수 있다.The command receiving unit 200 may receive the old version of the command from the old version of the web application.

만일, 커맨드 수신부(200)는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 다시 수신할 수 있다.If an error occurs in the process of receiving the old version command from the old version of the web application, the command receiving unit 200 may receive the old version of the command again from the old version of the web application after a preset time. .

만일, 커맨드 해석 요청부(210)가 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 커맨드 수신부(200)는 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 다시 수신할 수 있다.If an error occurs while the command interpretation requesting unit 210 requests the command interpretation server 120 to interpret the old version of the command, the command receiving unit 200 returns the old version of the web after a preset time. You can receive an older version of the command back from the application.

또한, 커맨드 수신부(200)는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신할 수 있다.Also, the command receiving unit 200 may receive the new version of the command from the new version of the web application.

만일, 커맨드 수신부(200)는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 기 설정된 시간 이후에, 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 다시 수신할 수 있다.If an error occurs in the process of receiving the new version of the command from the new version of the web application, the command receiving unit 200 may receive the new version of the command again from the new version of the web application after a preset time. .

커맨드 해석 요청부(210)는 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청할 수 있다. 여기서, 구 버전의 커맨드의 해석은 구 버전의 커맨드에 대응하는 신규 버전의 커맨드로 해석된 것일 수 있다. 여기서, 커맨드 해석 서버(120)는 커맨드의 구 버전 및 신규 버전 모두를 관리하고 있다. The command interpretation request unit 210 may request the command interpretation server 120 to interpret the old version of the command. Here, the interpretation of the old version of the command may be interpreted as the new version of the command corresponding to the old version of the command. Here, the command interpretation server 120 manages both the old version and the new version of the command.

커맨드 처리 요청부(220)는 해석된 구 버전의 커맨드를 커맨드 해석 서버(120)로부터 수신한 경우, 커맨드 실행 서버(130)에게, 해석된 구 버전의 커맨드의 처리를 요청할 수 있다. When the command processing request unit 220 receives the interpreted old version of the command from the command interpretation server 120 , the command processing request unit 220 may request the command execution server 130 to process the interpreted old version of the command.

만일, 커맨드 실행 서버(130)가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 처리 요청부(220)는 커맨드 통합 실행 서버(140)에게, 해석된 구 버전의 커맨드 처리를 요청할 수 있다.If the command execution server 130 is changed from the old version to the new version, the command processing request unit 220 may request the command integrated execution server 140 to process the interpreted old version of the command.

커맨드 처리 요청부(220)는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 커맨드의 해석 없이도, 바로 커맨드 실행 서버(130)에게 신규 버전의 커맨드의 처리를 요청할 수 있다.When receiving the new version of the command from the new version of the web application, the command processing request unit 220 may directly request the command execution server 130 to process the new version of the command without interpreting the command.

만일, 커맨드 실행 서버(130)가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 처리 요청부(220)는 커맨드 통합 실행 서버(140)에게, 신규 버전의 커맨드 처리를 요청할 수 있다. 여기서, 커맨드 통합 실행 서버(140)는 구 버전의 커맨드 실행 서버(130) 및 신규 버전의 커맨드 실행 서버(130) 각각에서 관리하는 데이터를 모두 저장하고 관리하고 있다.If the command execution server 130 is changed from the old version to the new version, the command processing request unit 220 may request the command integration execution server 140 to process the new version of the command. Here, the command integrated execution server 140 stores and manages all data managed by the command execution server 130 of the old version and the command execution server 130 of the new version, respectively.

처리 결과 송수신부(230)는 커맨드 실행 서버(130)로부터 구 버전의 커맨드의 처리 결과를 수신하여, 구 버전의 웹 어플리케이션에게 전달할 수 있다.The processing result transceiver 230 may receive the processing result of the old version of the command from the command execution server 130 and transmit it to the old version of the web application.

처리 결과 송수신부(230)는 커맨드 실행 서버(130)로부터 신규 버전의 커맨드의 처리 결과를 수신하여, 신규 버전의 웹 어플리케이션에게 전달할 수 있다.The processing result transceiver 230 may receive the processing result of the new version of the command from the command execution server 130 and deliver it to the new version of the web application.

만일, 커맨드 실행 서버(130)의 버전이 변경된 경우에는, 처리 결과 송수신부(230)는 커맨드 통합 실행 서버(140)로부터 구 버전(또는 신규 버전)의 커맨드의 처리 결과를 수신할 수 있다. If the version of the command execution server 130 is changed, the processing result transceiver 230 may receive the processing result of the command of the old version (or the new version) from the command integrated execution server 140 .

에러 메시지 전송부(240)는 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송할 수 있다.When an error occurs in the process of requesting the command interpretation server 120 to interpret the old version of the command, the error message transmitting unit 240 may transmit an error occurrence message to the old version of the web application.

에러 메시지 전송부(240)는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송할 수 있다.When an error occurs in the process of receiving the command of the old version from the old version of the web application, the error message transmitter 240 may transmit an error occurrence message to the old version of the web application.

에러 메시지 전송부(240)는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 신규 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송할 수 있다.When an error occurs in the process of receiving the new version of the command from the new version of the web application, the error message transmitting unit 240 may transmit an error occurrence message to the new version of the web application.

DB(250)는 운용 서버(110) 내부의 각 구성요소들 간에 입력 및 출력되는 데이터를 저장하고, 운용 서버(110)와 운용 서버(110) 외부의 구성요소들간에 입력 및 출력되는 데이터를 저장한다. 예를 들어, DB(250)는 구 버전(또는 신규 버전)의 웹 어플리케이션으로부터 수신된 구 버전(또는 신규 버전)의 커맨드를 저장할 수 있다. 또한, DB(250)는 커맨드 해석 서버(120)에 의해 해석된 구 버전의 커맨드를 저장할 수 있다. 또한, DB(250)는 커맨드 실행 서버(130) 또는 커맨드 통합 실행 서버(140)로부터 수신한 구 버전(또는 신규 버전)의 커맨드의 처리 결과를 저장할 수 있다. 이러한 DB(250)의 일 예에는 운용 서버(110) 내부 또는 외부에 존재하는 하드디스크드라이브, ROM(Read Only Memory), RAM(Random Access Memory), 플래쉬메모리 및 메모리카드 등이 포함된다. DB 250 stores data input and output between each component inside the operation server 110, and stores data input and output between the components outside the operation server 110 and operation server 110 do. For example, the DB 250 may store the old version (or new version) command received from the old version (or new version) web application. In addition, the DB 250 may store an old version of the command interpreted by the command interpretation server 120 . In addition, the DB 250 may store the processing result of the command of the old version (or new version) received from the command execution server 130 or the command integrated execution server 140 . An example of the DB 250 includes a hard disk drive, a read only memory (ROM), a random access memory (RAM), a flash memory and a memory card existing inside or outside the operation server 110 .

한편, 당업자라면, 커맨드 수신부(200), 커맨드 해석 요청부(210), 커맨드 처리 요청부(220), 처리 결과 송수신부(230), 에러 메시지 전송부(240) 및 DB(250) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. Meanwhile, for those skilled in the art, the command receiving unit 200 , the command interpretation requesting unit 210 , the command processing requesting unit 220 , the processing result transmitting and receiving unit 230 , the error message transmitting unit 240 , and the DB 250 are separated from each other. It will be fully understood that one or more of these may be implemented as a single unit.

도 3은 본 발명의 일 실시예에 따른, 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법의 일예를 도시한 순서도이다. 3 is a flowchart illustrating an example of a method of using and operating different versions of web applications in combination according to an embodiment of the present invention.

도 3에 도시된 실시예에 따른 상이한 버전의 웹 어플리케이션 병용 운용 방법은 도 1 내지 도 2에 도시된 실시예에 따른 셋탑박스(100) 및 운용 서버(110)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 1 내지 도 2의 셋탑박스(100) 및 운용 서버(110)에 관하여 기술된 내용은 도 3에 도시된 실시예에 따른 상이한 버전의 웹 어플리케이션 병용 운용 방법에도 적용될 수 있다. The method for concurrently operating different versions of web applications according to the embodiment shown in FIG. 3 includes steps processed in time series in the set-top box 100 and the operation server 110 according to the embodiment shown in FIGS. 1 to 2 . do. Therefore, even if omitted below, the contents described with respect to the set-top box 100 and the operation server 110 of FIGS. 1 to 2 are also applied to the method for concurrently operating different versions of the web application according to the embodiment shown in FIG. can

도 3을 참조하면, 단계 S301에서 운용 서버(110)는 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 경우, 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청할 수 있다. Referring to FIG. 3 , in step S301 , the operation server 110 may request the command interpretation server 120 to interpret the old version of the command when receiving the old version of the command from the old version of the web application.

단계 S303에서 운용 서버(110)는 커맨드 해석 서버(120)로부터 해석된 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버(130)에게 해석된 구 버전의 커맨드의 처리를 요청할 수 있다. In step S303 , the operation server 110 may request the command execution server 130 to process the interpreted old version of the command when it receives the command of the old version interpreted from the command interpretation server 120 .

단계 S305에서 운용 서버(110)는 커맨드 실행 서버(130)로부터 구 버전의 커맨드의 처리 결과를 수신하여, 구 버전의 웹 어플리케이션에게 전달할 수 있다. In step S305, the operation server 110 may receive the processing result of the old version of the command from the command execution server 130, and may deliver it to the old version of the web application.

단계 S307에서 운용 서버(110)는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 커맨드 실행 서버(130)에게 신규 버전의 커맨드의 처리를 요청할 수 있다. In step S307, when the new version of the command is received from the new version of the web application, the operation server 110 may request the command execution server 130 to process the new version of the command.

단계 S309에서 운용 서버(110)는 커맨드 실행 서버(130)로부터 신규 버전의 커맨드의 처리 결과를 수신하여, 신규 버전의 웹 어플리케이션에게 전달할 수 있다. In step S309, the operation server 110 may receive the processing result of the new version of the command from the command execution server 130, and may deliver it to the new version of the web application.

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S303) 이전에, 커맨드 해석 서버(120)로부터 신규 버전의 커맨드(구 버전의 커맨드에 대응하는 커맨드)로 해석된 구 버전의 커맨드를 수신하는 단계(미도시)를 더 포함할 수 있다. Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, the old version interpreted as a new version of a command (command corresponding to the old version of the command) from the command interpretation server 120 before step S303 . The method may further include receiving a command (not shown).

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S305) 이전에, 커맨드 실행 서버(130)가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 통합 실행 서버(140)에게 커맨드 처리를 요청하는 단계(미도시)를 더 포함할 수 있다. Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, before step S305 , when the command execution server 130 is changed from the old version to the new version, the command processing is performed to the command integrated execution server 140 . It may further include a requesting step (not shown).

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S305) 이전에, 커맨드 실행 서버(130)가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 통합 실행 서버(140)로부터 커맨드 처리 결과를 수신하는 단계(미도시)를 더 포함할 수 있다.Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, before step S305 , when the command execution server 130 is changed from the old version to the new version, the command processing result from the command integration execution server 140 . It may further include the step of receiving (not shown).

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S301)에서, 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하는 단계(미도시)를 더 포함할 수 있다.Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, when an error occurs in the process of requesting the command interpretation server 120 to interpret the old version of the command in step S301 , the old version of the web application The method may further include transmitting an error message to the application (not shown).

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S301)에서, 커맨드 해석 서버(120)에게 구 버전의 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 단계(미도시)를 더 포함할 수 있다.Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, when an error occurs in the process of requesting the command interpretation server 120 to interpret the old version of the command in step S301 , after a preset time The method may further include (not shown) receiving a command of the old version from the old version of the web application.

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S303) 이전에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하는 단계(미도시)를 더 포함할 수 있다.Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, when an error occurs in the process of receiving the command of the old version from the old version of the web application before step S303, an error occurs in the old version of the web application The method may further include transmitting a generated message (not shown).

도 3에는 도시되지 않았으나, 상이한 버전의 웹 어플리케이션 병용 운용 방법은 단계(S303) 이전에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 단계(미도시)를 더 포함할 수 있다.Although not shown in FIG. 3 , in the method for concurrently operating different versions of web applications, before step S303 , when an error occurs in the process of receiving the old version of the command from the old version of the web application, after a preset time, the old The method may further include receiving a command of the old version from the version of the web application (not shown).

상술한 설명에서, 단계 S301 내지 S309는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S301 to S309 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. An embodiment of the present invention may also be implemented in the form of a computer program stored in a medium executed by a computer or a recording medium including instructions executable by the computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism, and includes any information delivery media.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is indicated by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. .

100: 셋탑박스
110: 운용 서버
100: set-top box
110: production server

Claims (16)

운용 서버에 의해 수행되는 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법에 있어서,
구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드(Command)를 수신하는 경우, 커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 단계;
상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 커맨드의 처리를 요청하는 단계;
상기 커맨드 실행 서버로부터 상기 구 버전의 커맨드의 처리 결과를 수신하여, 상기 구 버전의 웹 어플리케이션에게 전달하는 단계;
신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 커맨드의 처리를 요청하는 단계; 및
상기 커맨드 실행 서버로부터 상기 신규 버전의 커맨드의 처리 결과를 수신하여, 상기 신규 버전의 웹 어플리케이션에게 전달하는 단계;
를 포함하는, 웹 애플리케이션의 병용 운용 방법.
In the method of operating together with different versions of web applications performed by the operation server,
when receiving a command of the old version from the old version of the web application, requesting the command interpretation server to interpret the old version of the command;
requesting a command execution server to process the interpreted old version of the command when receiving the interpreted old version of the command from the command interpretation server;
receiving the processing result of the old version of the command from the command execution server and transmitting the result to the old version of the web application;
when receiving the new version of the command from the new version of the web application, requesting the command execution server to process the new version of the command; and
receiving a processing result of the new version of the command from the command execution server and transmitting the result to the new version of the web application;
Concurrent operation method of a web application comprising a.
제 1 항에 있어서,
상기 구 버전의 커맨드의 해석은
상기 구 버전의 커맨드에 대응하는 신규 버전의 커맨드로 해석되는 것인, 웹 애플리케이션의 병용 운용 방법.
The method of claim 1,
The interpretation of the old version of the command is
A method for concurrently operating a web application that is interpreted as a command of a new version corresponding to the command of the old version.
제 1 항에 있어서,
상기 커맨드 실행 서버가 구 버전에서 신규 버전으로 변경된 경우,
커맨드 통합 실행 서버에게 상기 커맨드 처리를 요청하는 단계; 및
상기 커맨드 통합 실행 서버로부터 상기 커맨드 처리 결과를 수신하는 단계
를 더 포함하는 것인, 웹 애플리케이션의 병용 운용 방법.
The method of claim 1,
When the command execution server is changed from the old version to the new version,
requesting a command integration execution server to process the command; and
Receiving the command processing result from the command integration execution server
Which further comprises, the concurrent operation method of the web application.
제 1 항에 있어서,
상기 커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 단계에서 에러가 발생하는 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하는 단계; 및
기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 단계
를 더 포함하는 웹 애플리케이션의 병용 운용 방법.
The method of claim 1,
transmitting an error occurrence message to the web application of the old version when an error occurs in the step of requesting the command interpretation server to interpret the old version of the command; and
After a preset time, receiving the old version of the command from the old version of the web application
Concurrent operation method of the web application further comprising.
제 1 항에 있어서,
상기 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 단계에서 에러가 발생한 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하는 단계; 및
기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 단계
를 더 포함하는 웹 애플리케이션의 병용 운용 방법.
The method of claim 1,
transmitting an error occurrence message to the old version of the web application when an error occurs in the step of receiving the old version of the command from the old version of the web application; and
After a preset time, receiving the old version of the command from the old version of the web application
Concurrent operation method of the web application further comprising.
상이한 버전의 웹 어플리케이션을 병용하여 운용하는 운용 서버에 있어서,
구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 커맨드 수신부;
커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 커맨드 해석 요청부;
상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 커맨드의 처리를 요청하는 커맨드 처리 요청부; 및
상기 커맨드 실행 서버로부터 상기 구 버전의 커맨드의 처리 결과를 수신하여, 상기 구 버전의 웹 어플리케이션에게 전달하는 처리 결과 송수신부를 포함하되,
상기 커맨드 처리 요청부는 신규 버전의 웹 어플리케이션으로부터 신규 버전의 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 커맨드의 처리를 요청하고,
상기 처리 결과 송수신부는 상기 커맨드 실행 서버로부터 상기 신규 버전의 커맨드의 처리 결과를 수신하여, 상기 신규 버전의 웹 어플리케이션에게 전달하는 것인, 운용 서버.
In the operation server for operating together with different versions of web applications,
a command receiving unit for receiving a command of the old version from the old version of the web application;
a command interpretation request unit for requesting the command interpretation server to interpret the old version of the command;
a command processing request unit for requesting a command execution server to process the interpreted old version of the command when receiving the command of the old version interpreted from the command interpretation server; and
Comprising a processing result transceiver for receiving the processing result of the old version of the command from the command execution server, and transmitting the processing result to the old version of the web application,
When the new version of the command is received from the new version of the web application, the command processing request unit requests the command execution server to process the new version of the command,
The processing result transceiver unit receives the processing result of the new version of the command from the command execution server, and to deliver to the web application of the new version, the operation server.
제 6 항에 있어서,
상기 구 버전의 커맨드의 해석은
상기 구 버전의 커맨드에 대응하는 신규 버전의 커맨드로 해석되는 것인, 운용 서버.
7. The method of claim 6,
The interpretation of the old version of the command is
The operation server, which is interpreted as a new version of the command corresponding to the old version of the command.
제 6 항에 있어서,
상기 커맨드 처리 요청부는 상기 커맨드 실행 서버가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 통합 실행 서버에게 상기 커맨드 처리를 요청하고,
상기 처리 결과 송수신부는 상기 커맨드 통합 실행 서버로부터 상기 커맨드 처리 결과를 수신하는 것인, 운용 서버.
7. The method of claim 6,
The command processing request unit requests the command execution server to process the command when the command execution server is changed from the old version to the new version,
The processing result transceiver unit will receive the command processing result from the command integrated execution server, the operation server.
제 6 항에 있어서,
상기 커맨드 해석 서버에게 상기 구 버전의 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하는 에러 메시지 전송부를 더 포함하고,
상기 커맨드 수신부는 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 것인, 운용 서버.
7. The method of claim 6,
When an error occurs in the process of requesting the command interpretation server to interpret the outdated version of the command, the method further comprises an error message transmitting unit for transmitting an error message to the old version of the web application,
The command receiving unit will receive the old version of the command from the old version of the web application after a preset time, the operation server.
제 9 항에 있어서,
상기 에러 메시지 전송부는 상기 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 과정에서 에러가 발생한 경우, 구 버전의 웹 어플리케이션에게 에러 발생 메시지를 전송하고,
상기 커맨드 수신부는 기 설정된 시간 이후에, 구 버전의 웹 어플리케이션으로부터 구 버전의 커맨드를 수신하는 것인, 운용 서버.
10. The method of claim 9,
When an error occurs in the process of receiving the command of the old version from the old version of the web application, the error message transmitting unit transmits an error message to the old version of the web application,
The command receiving unit will receive the old version of the command from the old version of the web application after a preset time, the operation server.
상이한 버전의 웹 어플리케이션을 병용하여 운용 시스템에 있어서,
셋탑박스로부터 구 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 커맨드 해석 서버에게 상기 구 버전의 웹 어플리케이션 커맨드의 해석을 요청하고, 상기 커맨드 해석 서버로부터 해석된 상기 구 버전의 웹 어플리케이션 커맨드를 수신한 경우, 커맨드 실행 서버에게 상기 해석된 구 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 상기 커맨드 실행 서버로부터 상기 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하여, 상기 셋탑박스에게 전달하고, 상기 셋탑박스로부터 신규 버전의 웹 어플리케이션 커맨드를 수신하는 경우, 상기 커맨드 실행 서버에게 상기 신규 버전의 웹 어플리케이션 커맨드의 처리를 요청하고, 상기 커맨드 실행 서버로부터 상기 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하여, 상기 셋탑박스에게 전달하는 운용 서버; 및
상기 운용 서버에게 상기 구 버전의 웹 어플리케이션 커맨드를 전달하고, 상기 운용 서버로부터 상기 구 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하고, 상기 운용 서버에게 상기 신규 버전의 웹 어플리케이션 커맨드를 전달하고, 운용 서버로부터 상기 신규 버전의 웹 어플리케이션 커맨드의 처리 결과를 수신하는 셋탑박스
를 포함하는, 운용 시스템.
In the operating system by using different versions of the web application together,
When receiving the old version web application command from the set-top box, requesting the command interpretation server to interpret the old version web application command, and receiving the old version web application command interpreted from the command interpretation server, Requests the command execution server to process the interpreted old version of the web application command, receives the processing result of the old version of the web application command from the command execution server, delivers it to the set-top box, and receives a new version of the web application command from the set-top box When receiving the web application command of the version, requesting the command execution server to process the new version of the web application command, and receiving the processing result of the new version of the web application command from the command execution server, the set-top box Operation server to deliver to; and
The old version of the web application command is transmitted to the operation server, the processing result of the old version of the web application command is received from the operation server, and the web application command of the new version is transmitted to the operation server, and the operation server A set-top box for receiving the processing result of the new version of the web application command from
comprising, an operating system.
제 11 항에 있어서,
상기 커맨드 해석 서버는 상기 구 버전의 웹 어플리케이션 커맨드를 상기 구 버전의 웹 어플리케이션 커맨드에 대응하는 신규 버전의 웹 어플리케이션 커맨드로 해석하는 것인, 운용 시스템.
.
12. The method of claim 11,
The command interpretation server interprets the web application command of the old version as a web application command of a new version corresponding to the web application command of the old version, the operating system.
.
제 11 항에 있어서,
상기 커맨드 실행 서버는 상기 신규 버전의 웹 어플리케이션 커맨드의 처리를 수행하는 것인, 운용 시스템.
12. The method of claim 11,
The command execution server is to perform processing of the web application command of the new version, the operating system.
제 11 항에 있어서,
상기 운용 서버는 상기 커맨드 실행 서버가 구 버전에서 신규 버전으로 변경된 경우, 커맨드 통합 실행 서버에게 상기 웹 어플리케이션 커맨드 처리를 요청하고, 상기 커맨드 통합 실행 서버로부터 상기 웹 어플리케이션 커맨드 처리 결과를 수신하는 것인, 운용 시스템.
12. The method of claim 11,
When the command execution server is changed from the old version to the new version, the operation server requests the web application command processing from the command integrated execution server, and receives the web application command processing result from the command integrated execution server, operating system.
제 11 항에 있어서,
상기 운용 서버는 상기 커맨드 해석 서버에게 상기 구 버전의 웹 어플리케이션 커맨드의 해석을 요청하는 과정에서 에러가 발생하는 경우, 상기 셋탑박스에게 에러 발생 메시지를 전송하고,
상기 셋탑박스는 기 설정된 시간 이후에, 상기 구 버전의 웹 어플리케이션 커맨드를 상기 운용 서버에게 전송하는 것인, 운용 시스템.
12. The method of claim 11,
When an error occurs in the process of requesting the command interpretation server to interpret the old version of the web application command, the operation server transmits an error message to the set-top box,
The set-top box will transmit the web application command of the old version to the operation server after a preset time, the operating system.
제 11 항에 있어서,
상기 운용 서버는 상기 셋탑박스로부터 상기 구 버전의 웹 어플리케이션 커맨드를 수신하는 과정에서 에러가 발생한 경우, 상기 셋탑박스에게 에러 발생 메시지를 전송하고,
상기 셋탑박스는 기 설정된 시간 이후에, 상기 구 버전의 웹 어플리케이션 커맨드를 상기 운용 서버에게 전송하는 것인, 운용 시스템.
12. The method of claim 11,
When an error occurs in the process of receiving the web application command of the old version from the set-top box, the operation server transmits an error message to the set-top box,
The set-top box will transmit the web application command of the old version to the operation server after a preset time, the operating system.
KR1020150058763A 2015-04-27 2015-04-27 Method for operating different version of web applications, server and system KR102316868B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150058763A KR102316868B1 (en) 2015-04-27 2015-04-27 Method for operating different version of web applications, server and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150058763A KR102316868B1 (en) 2015-04-27 2015-04-27 Method for operating different version of web applications, server and system

Publications (2)

Publication Number Publication Date
KR20160127407A KR20160127407A (en) 2016-11-04
KR102316868B1 true KR102316868B1 (en) 2021-10-25

Family

ID=57530187

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150058763A KR102316868B1 (en) 2015-04-27 2015-04-27 Method for operating different version of web applications, server and system

Country Status (1)

Country Link
KR (1) KR102316868B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100319010A1 (en) 2009-06-12 2010-12-16 International Business Machines Corporation Systems and Methods for Operating System Identification and Web Application Execution

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818740B2 (en) * 2006-05-05 2010-10-19 Microsoft Corporation Techniques to perform gradual upgrades
KR20130068524A (en) * 2011-12-15 2013-06-26 주식회사 케이티 Method and apparatus for web runtime updating of terminal
KR102026637B1 (en) * 2012-12-20 2019-09-30 엘지전자 주식회사 Display device and method of controlling the same
KR101954208B1 (en) * 2015-10-05 2019-03-05 주식회사 케이티 Web application execution method, set-top box and system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100319010A1 (en) 2009-06-12 2010-12-16 International Business Machines Corporation Systems and Methods for Operating System Identification and Web Application Execution

Also Published As

Publication number Publication date
KR20160127407A (en) 2016-11-04

Similar Documents

Publication Publication Date Title
CN105765526B (en) It is guided by network from remote disk mirror image
US20210263714A1 (en) System and method for autowiring of a microservice architecture
US20200026545A1 (en) Container login method, apparatus, and storage medium
US10547667B1 (en) Heterogeneous cloud processing utilizing consumer devices
CN111159614B (en) Webpage resource acquisition method and device
US20140351807A1 (en) Method and communication device for updating web application
US10069942B2 (en) Method and apparatus for changing configurations
US20160041819A1 (en) Updating service applications
WO2020036879A1 (en) In situ triggered function as a service within a service mesh
US10983850B1 (en) Real-time application programming interface anomaly detection and mitigation
US20160150015A1 (en) Methods for integrating applications with a data storage network and devices thereof
US20130117440A1 (en) Service collaboration device, service collaboration method, and computer-readable recording medium
CN109104368B (en) Connection request method, device, server and computer readable storage medium
CN105474177A (en) Distributed processing system, distributed processing device, distributed processing method, and distributed processing program
JP6195465B2 (en) Remote card content management using synchronous server-side scripting
EP4030776A1 (en) Method and apparatus for triggering vomci function from olt to send omci messages
CN109343970B (en) Application program-based operation method and device, electronic equipment and computer medium
CN105450449A (en) File operation methods and devices
KR102316868B1 (en) Method for operating different version of web applications, server and system
US10904746B2 (en) Implementation method, apparatus and system for remote access
CA2823085A1 (en) Method and system of implementing data load protocols
US20160182605A1 (en) Dynamic Content Aggregation
US20220052902A1 (en) Method for managing remote device through management device
US9699026B2 (en) Distributed processing system
CN104010026A (en) Method, device and system for controlling household appliance

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