KR102537906B1 - Method for auto scalinig of managing server for consignment sales - Google Patents

Method for auto scalinig of managing server for consignment sales Download PDF

Info

Publication number
KR102537906B1
KR102537906B1 KR1020220002939A KR20220002939A KR102537906B1 KR 102537906 B1 KR102537906 B1 KR 102537906B1 KR 1020220002939 A KR1020220002939 A KR 1020220002939A KR 20220002939 A KR20220002939 A KR 20220002939A KR 102537906 B1 KR102537906 B1 KR 102537906B1
Authority
KR
South Korea
Prior art keywords
server
micro
operation target
target messages
processing
Prior art date
Application number
KR1020220002939A
Other languages
Korean (ko)
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 KR1020220002939A priority Critical patent/KR102537906B1/en
Application granted granted Critical
Publication of KR102537906B1 publication Critical patent/KR102537906B1/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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

위탁 판매를 위한 관리 서버의 오토 스케일링 방법이 개시된다. 일 실시예에 따른 마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버의 오토 스케일링 방법은, 연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하는 단계; 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계; 및 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계를 포함하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는, 상기 설정된 전체 서버 리소스에서, 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하는 단계를 포함할 수 있다.An auto scaling method of a management server for consignment sales is disclosed. An auto-scaling method of a management server that controls a plurality of micro-servers performing micro-services according to an embodiment includes the steps of checking the number of target messages and the message processing request speed at which the target messages are to be processed; setting total server resources for processing the computational target messages based on the number of computational target messages, the message processing request speed, and a processing resource function defining an improvement in processing performance according to an increase in the number of micro servers; and processing the operation target messages according to the entire server resources, wherein the processing of the operation target messages according to the overall server resources comprises a first one of the plurality of micro servers in the set overall server resources. When the micro server is configured to process the operation target messages, the first micro server processes the unprocessed operation target messages based on the number of unprocessed operation target messages and the resource of the first micro server at each predetermined period. Resetting entire server resources for processing.

Description

위탁 판매를 위한 관리 서버의 오토 스케일링 방법{METHOD FOR AUTO SCALINIG OF MANAGING SERVER FOR CONSIGNMENT SALES}Auto scaling method of management server for consignment sales {METHOD FOR AUTO SCALINIG OF MANAGING SERVER FOR CONSIGNMENT SALES}

아래의 실시예들은 위탁 판매를 위한 관리 서버의 오토 스케일링 방법에 관한 것이다.The following embodiments relate to an auto scaling method of a management server for consignment sales.

종래의 전자상거래 플랫폼은 판매자가 판매하기 위한 제품을 직접 상품 공급자로부터 구매하고, 오픈 마켓과 같은 온라인 마켓에 판매자 계정을 생성하여, 해당 판매자 계정을 통하여 제품을 판매하는 방식이다.In a conventional e-commerce platform, a seller directly purchases a product for sale from a product supplier, creates a seller account in an online market such as an open market, and sells the product through the seller account.

그러나, 종래의 전자상거래 플랫폼에서는 판매자가 온라인 마켓상에서 직접 마케팅 활동, 판매, 배송, 고객 관리 등을 해야 함에 따라, 판매자 입장에서는 판매를 위한 노력이 많이 들어가고, 구매자 입장에서는 판매에 대한 서비스를 제대로 못받는다는 문제점이 있었다.However, in the conventional e-commerce platform, as the seller has to conduct direct marketing activities, sales, delivery, customer management, etc. on the online market, the seller puts a lot of effort into selling, and the buyer cannot properly service the sale. I had a problem receiving it.

이에 따라, 최근에는 위탁판매 방식을 통한 전자상거래 플랫폼이 도입되는 추세이다. 위탁판매 방식은 위탁판매 관리자가 복수의 상품 공급자와 복수의 판매자 사이에서, 복수의 상품 공급자로부터 상품들을 공급하고, 복수의 판매자에게 공급된 상품을 등록하고, 등록된 상품이 복수의 판매자 계정에서 원활하게 판매되도록 복수의 판매자 계정을 직접 또는 간접적으로 관리하는 방식일 수 있다. Accordingly, in recent years, an e-commerce platform through a consignment sales method has been introduced. In the consignment sales method, the consignment sales manager supplies products from multiple product suppliers between multiple product suppliers and multiple sellers, registers the products supplied to multiple sellers, and registers the registered products smoothly in multiple seller accounts. It may be a method of directly or indirectly managing a plurality of seller accounts so that the goods are sold efficiently.

이러한 위탁판매 방식이 서버를 이용하여 온라인상에서 진행될 수 있다. 그러나, 위탁판매 방식의 특성상 일시적으로 서버에 과부하가 걸릴 수 있다. 예를 들어, 서버에 저장된 다수의 판매 데이터로부터, 서버가 최적의 상품을 선별해야 하고, 판매량이 저조한 상품에 대해서는 판매 중지를 시켜야 할 수 있다. 이러한 과정에서 서버에 일시적으로 과부하가 걸릴 수 있다.This consignment sales method may be conducted online using a server. However, due to the nature of the consignment sales method, the server may be temporarily overloaded. For example, the server may have to select an optimal product from a plurality of sales data stored in the server, and may have to stop sales of a product with low sales volume. During this process, the server may be temporarily overloaded.

서버에 과부하가 걸릴 경우 위탁판매가 일시적으로 진행되지 않을 수 있다는 문제점이 있다. 또한, 과부하를 방지하기 위하여 서버의 전체 리소스량을 증가시키기 되면, 서버의 전체 리소스량 증가에 따른 손실이 발생된다는 문제점이 있다. 최근에는 이러한 문제점을 해결하기 위하여 서버의 리소스를 효율적으로 관리하는 방법이 연구되고 있다.There is a problem that consignment sales may not proceed temporarily if the server is overloaded. In addition, if the total amount of resources of the server is increased to prevent overload, there is a problem that a loss occurs due to the increase in the total amount of resources of the server. Recently, in order to solve this problem, a method of efficiently managing server resources has been studied.

해결하고자 하는 일 과제는 서버가 처리해야할 요청이 많아질 경우에도 서버의 리소스를 효율적으로 관리하기 위한 서버의 오토 스케일링 방법을 제공하는 것이다.A task to be solved is to provide a server auto scaling method for efficiently managing server resources even when the server has many requests to process.

본 출원의 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved in the present application is not limited to the above-described problem, and problems not mentioned will be clearly understood by those skilled in the art from this specification and the accompanying drawings. .

본 발명의 일 양상에 따르면, 일 실시예에 따른 마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버의 오토 스케일링 방법은, 연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하는 단계; 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계; 및 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계를 포함하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는, 상기 설정된 전체 서버 리소스에서, 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하는 단계를 포함할 수 있다.According to an aspect of the present invention, an auto-scaling method of a management server that controls a plurality of micro-servers performing micro-services according to an embodiment includes the number of target messages and the message processing requirements for the target messages to be processed. checking the speed; Setting total server resources for processing the computational target messages based on a processing resource function defining an improvement in message processing performance according to an increase in the number of computational target messages, the message processing request speed, and the number of micro servers. ; and processing the operation target messages according to the entire server resources, wherein the processing of the operation target messages according to the overall server resources comprises a first one of the plurality of micro servers in the set overall server resources. When the micro server is configured to process the operation target messages, the first micro server processes the unprocessed operation target messages based on the number of unprocessed operation target messages and the resource of the first micro server at each predetermined period. Resetting entire server resources for processing.

본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The solutions to the problems of the present invention are not limited to the above-described solutions, and solutions not mentioned will be clearly understood by those skilled in the art from this specification and the accompanying drawings. You will be able to.

본 출원의 일 실시예에 의하면 서버가 처리해야할 요청이 많아질 경우에도 서버의 리소스를 효율적으로 관리할 수 있다.According to an embodiment of the present application, even when the number of requests to be processed by the server increases, server resources can be efficiently managed.

본 출원의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.The effects of the present application are not limited to the above-mentioned effects, and effects not mentioned will be clearly understood by those skilled in the art from this specification and the accompanying drawings.

도 1은 일 실시예에 따른 위탁 판매 시스템을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 관리 서버를 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 관리 서버 시스템을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 관리 서버의 오토 스케일링 방법을 설명하기 위한 동작 흐름도이다.
도 5는 일 실시예에 따른 처리 리소스 함수를 설명하기 위한 도면이다.
1 is a diagram for explaining a consignment sales system according to an exemplary embodiment.
2 is a diagram for explaining a management server according to an embodiment.
3 is a diagram for explaining a management server system according to an embodiment.
4 is an operation flowchart illustrating an auto scaling method of a management server according to an exemplary embodiment.
5 is a diagram for explaining a processing resource function according to an exemplary embodiment.

본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다. The foregoing objects, features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. However, the present invention can apply various changes and can have various embodiments. Hereinafter, specific embodiments will be illustrated in the drawings and described in detail.

도면들에 있어서, 층 및 영역들의 두께는 명확성을 기하기 위하여 과장되어진 것이며, 또한, 구성요소(element) 또는 층이 다른 구성요소 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 구성요소 또는 층의 바로 위 뿐만 아니라 중간에 다른 층 또는 다른 구성요소를 개재한 경우를 모두 포함한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.In the drawings, the thickness of layers and regions is exaggerated for clarity, and elements or layers may be "on" or "on" other elements or layers. What is referred to includes all cases where another layer or other component is intervened in the middle as well as immediately above another component or layer. Like reference numerals designate essentially like elements throughout the specification. In addition, components having the same function within the scope of the same idea appearing in the drawings of each embodiment are described using the same reference numerals.

본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.If it is determined that a detailed description of a known function or configuration related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, numbers (eg, first, second, etc.) used in the description process of this specification are only identifiers for distinguishing one component from another component.

또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. In addition, the suffixes "module" and "unit" for the components used in the following description are given or used together in consideration of ease of writing the specification, and do not have meanings or roles that are distinguished from each other by themselves.

또한, 본 명세서에서 상품이란 재화나 서비스를 포함하여 지칭하는 것으로 넓게 해석되어야 한다.In addition, in this specification, goods should be broadly interpreted as referring to goods or services.

일 실시예에 따른 마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버의 오토 스케일링 방법은, 연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하는 단계; 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계; 및 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계를 포함하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는, 상기 설정된 전체 서버 리소스에서, 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하는 단계를 포함할 수 있다.An auto-scaling method of a management server that controls a plurality of micro-servers performing micro-services according to an embodiment includes the steps of checking the number of target messages and the message processing request speed at which the target messages are to be processed; setting total server resources for processing the computational target messages based on the number of computational target messages, the message processing request speed, and a processing resource function defining an improvement in processing performance according to an increase in the number of micro servers; and processing the operation target messages according to the entire server resources, wherein the processing of the operation target messages according to the overall server resources comprises a first one of the plurality of micro servers in the set overall server resources. When the micro server is configured to process the operation target messages, the first micro server processes the unprocessed operation target messages based on the number of unprocessed operation target messages and the resource of the first micro server at each predetermined period. Resetting entire server resources for processing.

상기 전체 서버 리소스를 설정하는 단계는, 상기 연산 대상 메시지들의 종류에 따라 상기 연산 대상 메시지들 중 제1 연산 대상 메시지들이 제1 서브 메시지 큐에 저장되고, 상기 연산 대상 메시지들 중 제2 연산 대상 메시지들이 제2 서브 메시지 큐에 저장되고, 상기 제1 서브 메시지 큐에 저장된 제1 연산 대상 메시지들의 처리를 위해 제1 기능이 수행되고, 상기 제2 서브 메시지 큐에 저장된 상기 제2 연산 대상 메시지들의 처리를 위해 제2 기능이 수행되는 경우, 상기 제1 연산 대상 메시지들의 개수, 상기 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 제2 연산 대상 메시지들의 개수, 상기 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 복수의 마이크로 서버 중 상기 제1 기능이 수행되어야 하는 마이크로 서버 및 상기 제2 기능이 수행되어야 하는 마이크로 서버를 설정할 수 있다.The setting of the total server resources may include storing first operation target messages among the operation target messages in a first sub-message queue according to types of the operation target messages, and a second operation target message among the operation target messages. are stored in a second sub-message queue, a first function is performed to process first operation target messages stored in the first sub-message queue, and processing of the second operation target messages stored in the second sub-message queue When the second function is performed for , the number of first operation target messages, the first message processing request rate at which the first operation target message must be processed, the number of second operation target messages, and the second operation target message Based on the second message processing request rate at which messages must be processed and the processing resource function, a micro server for performing the first function and a micro server for performing the second function among the plurality of micro servers may be set. there is.

상기 처리 리소스 함수는, 마이크로 서버의 개수가 증가함에 따라 증가하는 메시지 처리 성능이 소정의 제1 처리 성능 증가 범위내로 증가하다가 제1 임계 처리 성능으로 수렴하는 제1 처리 리소스 함수 또는 마이크로 서버의 개수의 증가함에 따라 증가하는 상기 메시지 처리 성능이 소정의 제2 처리 성능 증가 범위내로 증가하다가 제2 임계 처리 성능으로 수렴하는 제2 처리 리소스 함수를 포함하고, 상기 메시지 처리 성능이 상기 제2 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수가 상기 메시지 처리 성능이 상기 제1 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수보다 많고, 상기 제2 임계 처리 성능이 상기 제1 임계 처리 성능보다 높을 수 있다.The processing resource function is the number of micro servers or a first processing resource function in which message processing performance, which increases as the number of micro servers increases, increases within a predetermined first processing performance increase range and then converges to a first threshold processing performance. and a second processing resource function in which the message processing performance, which increases as the message processing performance increases, increases within a predetermined second processing performance increasing range and then converges to a second threshold processing performance, wherein the message processing performance is within the second processing performance increasing range. The number of micro-servers in a section in which the message processing performance increases is greater than the number of micro-servers in a section in which the message processing performance increases to the first processing performance increase range, and the second threshold processing performance is greater than the first threshold processing performance. can be high

상기 전체 서버 리소스를 설정하는 단계는, 상기 연산 대상 메시지들의 개수를 기초로 상기 연산 대상 메시지들을 상기 제1 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제1 메시지 처리 속도를 확인하고, 상기 제1 메시지 처리 속도가 상기 메시지 처리 요구 속도 보다 적은 경우, 상기 연산 대상 메시지들을 상기 제1 마이크로 서버 및 제2 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제2 메시지 처리 속도를 확인하고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정할 수 있다.The setting of the total server resources may include setting a first message processing speed representing a speed at which the computational target messages are processed when the first micro-server processes the computational target messages based on the number of the computational target messages. and, when the first message processing speed is less than the required message processing speed, the first micro-server and the second micro-server process the operation target messages, indicating the speed at which the operation target messages are processed. 2. The message processing speed is checked, and if the second message processing speed is equal to or greater than the required message processing speed, the first micro server and the second micro server process the operation target messages so that the total server resources can be set. there is.

상기 전체 서버 리소스를 설정하는 단계는, 상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고, 상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정할 수 있다.The setting of the total server resources may include the second micro server together with the first micro server when the processing resource function is the first processing resource function and the second message processing rate is greater than or equal to the required message processing rate. It checks whether the message processing performance, which increases as the operation target messages are processed, increases within the first processing performance range, and if the message processing performance increases within the first processing performance range, the first micro server And the entire server resource may be configured by processing the operation target messages in the second micro server.

상기 전체 서버 리소스를 설정하는 단계는, 상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고, 상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하지 않는 경우, 상기 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하고, 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하지 않는 것으로 상기 전체 서버 리소스를 설정할 수 있다.The setting of the total server resources may include the second micro server together with the first micro server when the processing resource function is the first processing resource function and the second message processing rate is greater than or equal to the required message processing rate. checks whether message processing performance, which increases as the operation target messages are processed, increases within the first processing capability range, and if the message processing performance does not increase within the first processing capability range, the first microprocessor The entire server resource may be set by processing the computation target messages in the server and not processing the computation target messages in the second micro server.

상기 전체 서버 리소스를 설정하는 단계에서, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 상기 전체 서버 리소스가 설정된 경우, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는, 상기 소정 주기에 대응하는 시간 동안, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되도록 제어할 수 있다.In the step of setting the total server resources, if the total server resources are set such that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server, The processing of the operation target messages according to the total server resources may include performing the first function and the second function in the first micro server for a time corresponding to the predetermined period, and performing the second function in the second micro server. The first function may be controlled to be performed.

상기 전체 서버 리소스를 재설정하는 단계는, 상기 소정 주기에 대응하는 시간 이후에, 상기 제1 서브 메시지 큐에 포함된 미처리된 제1 연산 대상 메시지의 개수 및 상기 제1 서브 메시지 큐에 포함된 미처리된 제2 연산 대상 메시지의 개수를 확인하고, 상기 미처리된 제1 연산 대상 메시지들의 개수, 상기 미처리된 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 미처리된 제2 연산 대상 메시지들의 개수, 상기 미처리된 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되어야 하는지 여부를 결정하고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되어야 하는지 여부를 결정하여 상기 전체 서버 리소스를 재설정할 수 있다.The resetting of all server resources may include the number of unprocessed first operation target messages included in the first sub-message queue and unprocessed messages included in the first sub-message queue after a time corresponding to the predetermined period. The number of second operation target messages is checked, and the number of unprocessed first operation target messages, the first message processing request rate at which the unprocessed first operation target messages are to be processed, and the number of unprocessed second operation target messages Whether the first function and the second function are to be performed in the first micro-server is determined based on the number, the second message processing request rate at which the unprocessed second operation target message must be processed, and the processing resource function. and determining whether or not the first function should be performed in the second micro-server may reset all server resources.

상기 전체 서버 리소스를 재설정하는 단계는, 상기 미처리된 제1 연산 대상 메시지가 존재하고, 상기 미처리된 제2 연산 대상 메시지가 존재하지 않는 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 결정하고, 상기 제1 마이크로 서버에서 상기 제2 기능이 수행되지 않는 것으로 상기 전체 서버 리소스를 재설정할 수 있다.The resetting of all server resources may include, when the unprocessed first operation target message exists and the unprocessed second operation target message does not exist, the first micro server and the second micro server perform the second operation target message. It is determined that the first function is performed, and the entire server resources may be reset so that the second function is not performed in the first micro server.

상기 마이크로 서비스는, 위탁 판매를 위하여 상기 관리 서버에서 수행되는 복수의 단위업무 중 어느 하나일 수 있다.The microservice may be any one of a plurality of unit tasks performed in the management server for consignment sales.

일 실시예에 따른 마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버는, 제어부를 포함하고, 상기 제어부는, 연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하고, 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하되, 상기 전체 서버 리소스에 따라 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정할 수 있다.A management server that controls a plurality of micro servers that perform microservices according to an embodiment includes a control unit, and the control unit checks the number of operation target messages and the message processing request speed at which the operation target messages are to be processed. and setting total server resources for processing the computational target messages based on a processing resource function defining an improvement in message processing performance according to an increase in the number of computational target messages, the message processing request speed, and the number of micro servers. and processes the computational target messages according to the total server resources, but in the case where a first micro server among the plurality of micro servers processes the computational target messages according to the total server resources, unprocessed messages are processed every predetermined period. Based on the number of operation target messages and the resources of the first micro server, the first micro server may reset all server resources for processing the unprocessed operation target messages.

도 1은 일 실시예에 따른 위탁 판매 시스템을 설명하기 위한 도면이다.1 is a diagram for explaining a consignment sales system according to an exemplary embodiment.

도 1을 참고하면, 일 실시예에 따른 위탁 판매 시스템(1)은 제1 상품 공급 클라이언트(100), 제2 상품 공급 클라이언트(200), 관리 서버(300), 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500), 온라인 마켓 서버(600), 구매자 클라이언트(700) 및 관리 서버 시스템(800)을 포함할 수 있다.Referring to FIG. 1 , the consignment sales system 1 according to an embodiment includes a first product supply client 100, a second product supply client 200, a management server 300, a first seller client 400, It may include a second seller client 500 , an online market server 600 , a buyer client 700 and a management server system 800 .

제1 상품 공급 클라이언트(100) 및 제2 상품 공급 클라이언트(200)는 관리 서버(300)에 온라인 마켓에서 상품을 판매하기 위하여 관리 서버(300)에 상품에 대한 정보를 제공하는 상품 공급자들이 관리 서버(300)와 통신을 수행하기 위한 디바이스를 의미할 수 있다. 여기서, 제1 상품 공급 클라이언트(100) 및 제2 상품 공급 클라이언트(200)는 서로 다른 상품 공급자들의 디바이스를 의미할 수 있다. 또한, 설명의 편의상 도 1에서는 2개의 상품 공급 클라이언트들에 대해 기재를 하였지만, 관리 서버(300)에게 상품에 대한 정보를 제공하는 상품 공급 클라이언트들은 3개 이상일 수 있다.The first product supply client 100 and the second product supply client 200 are product suppliers that provide product information to the management server 300 to sell products in the online market to the management server 300 . It may mean a device for performing communication with 300. Here, the first product supply client 100 and the second product supply client 200 may refer to devices of different product suppliers. Also, for convenience of description, although two product supply clients are described in FIG. 1 , there may be three or more product supply clients providing product information to the management server 300 .

일 실시예에서, 제1 상품 공급 클라이언트(100) 및 제2 상품 공급 클라이언트(200)는 위탁 판매를 관리하는 위탁 판매 관리자의 관리 서버(300)에 위탁 판매를 요청하기 위한 상품의 상품정보를 제공할 수 있다. 예를 들어, 상품 정보는 상품 공급 클라이언트에 대한 정보, 상품의 상품 종류(혹은, 상품이 포함되는 카테고리), 상품의 수량, 상품의 공급 가격, 상품의 제조일자. 상품의 배송 가격, 상품의 배송 가능 지역, 상품의 대표 이미지, 상품의 상세 이미지, 상품의 제조국, 상품의 유통기한, 상품의 브랜드명, 상품의 원산지, 상품의 홍보문구, 상품의 재고 현황 정보, 상품의 인증정보 및 상품에 대한 키워드 정보 중 적어도 하나를 포함할 수 있다. In one embodiment, the first product supply client 100 and the second product supply client 200 provide product information of a product for requesting consignment sales to the management server 300 of the consignment sales manager managing consignment sales. can do. For example, product information includes information about a product supply client, product type of product (or category in which the product is included), quantity of product, supply price of product, and date of manufacture of product. Product shipping price, product delivery area, product representative image, product detailed image, product country of manufacture, product expiration date, product brand name, product country of origin, product promotional text, product stock status information, It may include at least one of authentication information of the product and keyword information about the product.

관리 서버(300)는 제1 상품 공급 클라이언트(100) 및 제2 상품 공급 클라이언트(200)로부터 각각 상품 정보를 획득할 수 있다. 이하에서는, 설명의 편의상 제1 상품 공급 클라이언트(100)가 판매를 위해 위탁 판매 관리자에게 상품 정보를 제공하는 상품을 제1 상품으로 설명하고, 제2 상품 공급 클라이언트(200)가 판매를 위해 위탁 판매 관리자에게 상품 정보를 제공하는 상품을 제2 상품으로 설명한다. 그러나, 제1 상품 공급 클라이언트(100) 및 제2 상품 공급 클라이언트(200)가 각각 하나의 상품만을 위탁 판매 관리자에게 위탁 판매 요청하는 것은 아니고, 각 클라이언트가 복수의 상품을 위탁 판매 요청할 수 있고, 이에 따라, 각 클라이언트가 복수의 상품 정보를 관리 서버(300)에 제공할 수 있다.The management server 300 may obtain product information from the first product supply client 100 and the second product supply client 200 , respectively. Hereinafter, for convenience of description, a product for which the first product supply client 100 provides product information to the consignment sales manager for sale is described as the first product, and the second product supply client 200 sells the consignment for sale. A product for providing product information to a manager will be described as a second product. However, the first product supply client 100 and the second product supply client 200 do not each request consignment sales of only one product to the consignment sales manager, and each client may request consignment sales of a plurality of products. Accordingly, each client may provide a plurality of product information to the management server 300 .

관리 서버(300)는 위탁 판매 관리자가 운영하는 서버로, 위탁 판매 시스템(1)의 전반적인 프로세스를 제어할 수 있다. 예컨대, 관리 서버(300)는 제1 상품 공급 클라이언트(100), 제2 상품 공급 클라이언트(200), 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500) 및 온라인 마켓 서버(600) 사이에서 통신을 수행할 수 있다. 일 실시예에서, 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500) 및 온라인 마켓 서버(600)는 관리 서버(300)를 통해서 통신을 할 수 있으나, 경우에 따라, 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500) 및 온라인 마켓 서버(600)가 상호간에 직접 통신을 수행할 수도 있다. 또한 실시예에 따라, 관리 서버(300)는 온라인 마켓 서버(600)와 직접 통신을 수행하지 않고, 제1 판매자 클라이언트(400) 및 제2 판매자 클라이언트(500)와 온라인 마켓 서버(600)가 직접 통신을 수행할 수 있다.The management server 300 is a server operated by a consignment sales manager and can control the overall process of the consignment sales system 1 . For example, the management server 300 operates between the first product supply client 100, the second product supply client 200, the first seller client 400, the second seller client 500 and the online market server 600. communication can be performed. In one embodiment, the first seller client 400, the second seller client 500, and the online market server 600 may communicate through the management server 300, but in some cases, the first seller client ( 400), the second seller client 500, and the online market server 600 may perform direct communication with each other. Also, according to an embodiment, the management server 300 does not directly communicate with the online market server 600, and the first seller client 400 and the second seller client 500 and the online market server 600 directly communicate with each other. communication can be performed.

관리 서버(300)는 제1 판매자 클라이언트(400) 및 제2 판매자 클라이언트(500)로부터 판매자에 대한 정보를 획득할 수 있다. 여기서, 제1 판매자 클라이언트(400) 및 제2 판매자 클라이언트(500)는 서로 다른 판매자들의 디바이스를 의미할 수 있다. 설명의 편의상 본 명세서에서는 2개의 판매자 클라이언트에 대해 기재를 하였지만, 판매자 클라이언트는 3개 이상일 수 있다. 관리 서버(300)는 제1 판매자 클라이언트(400) 및 제2 판매자 클라이언트(500)로부터 판매자에 대한 정보를 획득할 수 있다. 일 예로, 판매자에 대한 정보는 온라인 마켓 서버(600)상의 판매자 계정에 대한 정보, 온라인 마켓 서버(600)상에 판매자 계정을 생성하기 위해 필요한 정보, 위탁 판매를 수행하는 기간 정보, 선호하는 온라인 마켓 명칭 등을 포함할 수 있다. The management server 300 may obtain seller information from the first seller client 400 and the second seller client 500 . Here, the first seller client 400 and the second seller client 500 may mean devices of different sellers. For convenience of description, two seller clients are described in this specification, but there may be three or more seller clients. The management server 300 may obtain seller information from the first seller client 400 and the second seller client 500 . For example, information about a seller includes information about a seller account on the online market server 600, information required to create a seller account on the online market server 600, information on a period during which consignment sales are performed, and preferred online market name, etc.

일 실시예에서, 관리 서버(300)는 상품 운용 및 관리를 수행할 수 있다. 예를 들어, 관리 서버(300)는 상품 공급 클라이언트들(100, 200)로부터 위탁 판매 요청을 받은 상품들을 판매자 계정에 판매자 판매 상품으로 등록할 수 있다. 또한, 관리 서버(300)는 판매자 판매 상품을 판매자 계정에 등록하기 전에, 소정 기준에 따라 판매자 판매 상품을 결정하고, 결정된 판매자 판매 상품을 판매자 계정에 추천하고, 추천된 상품을 판매자 계정에 판매자 판매 상품으로 등록할 수 있다. 또한, 관리 서버(300)는 주기적 또는 비주기적으로 위탁 판매 요청을 받은 상품들을 판매자 계정에 판매자 판매 상품으로 재추천 또는 재등록할 수도 있다. 예컨대, 관리 서버(300)는 판매자 계정에 등록된 상품들을 판매자 판매 상품에서 삭제하고 새로운 상품을 판매자 판매 상품으로 재추천 내지 재등록할 수 있다.In one embodiment, the management server 300 may perform product operation and management. For example, the management server 300 may register products that have received consignment sales requests from the product supply clients 100 and 200 as seller-sold products in the seller's account. In addition, the management server 300 determines seller-sold products according to predetermined criteria before registering the seller-sold products in the seller account, recommends the determined seller-sold products to the seller account, and sells the recommended products to the seller account. It can be registered as a product. In addition, the management server 300 may periodically or non-periodically re-recommend or re-register products requested for consignment sales as seller-sold products in the seller's account. For example, the management server 300 may delete products registered in the seller's account from seller sales products and re-recommend or re-register new products as seller sales products.

또한, 관리 서버(300)는 위탁 판매 요청을 받은 상품들의 재고 상태를 파악하고, 재고 상태를 고려하여 위탁 판매 요청을 받은 상품들을 판매자 계정에 추천 내지 등록(또는, 재추천 내지 재등록) 할 수 있다. 또한, 관리 서버(300)는 판매자 계정상의 웹 페이지를 생성 및 관리할 수 있다. 예컨대, 관리 서버(300)는 상품의 마케팅에 도움이 되도록, 판매 페이지 상의 상품의 설명 또는 사진을 설정하거나, 가공할 수 있다. 또한, 관리 서버(300)는 구매자로부터의 문의사항을 처리하고, 반품 또는 기타 고객 서비스를 수행할 수 있다.In addition, the management server 300 may identify the inventory status of the products requested for consignment sales, and recommend or register (or re-recommend or re-register) the products requested for consignment sales in the seller account in consideration of the stock status. there is. In addition, the management server 300 may create and manage a web page on a seller's account. For example, the management server 300 may set or process a description or photo of a product on a sales page to help marketing of the product. In addition, the management server 300 may process inquiries from buyers and perform returns or other customer services.

또한, 본 명세서에서, 설명의 편의를 위하여, 관리 서버(300)가 하나의 서버인 실시예를 중심으로 설명하지만, 이에 한정되는 것은 아니고, 관리 서버(300)는 복수의 서버로 구성될 수도 있다. 예를 들어, 본 명세서에서 설명되는 관리 서버에 대한 사항들 중 일부는 특정 관리 서버에서, 다른 일부는 다른 관리 서버(또는, 다른 관리 서버들)에서 수행될 수 있다.In addition, in this specification, for convenience of description, the management server 300 is described centering on an embodiment in which one server, but is not limited thereto, and the management server 300 may be composed of a plurality of servers. . For example, some of the matters for the management server described in this specification may be performed in a specific management server, and others may be performed in another management server (or other management servers).

온라인 마켓 서버(600)는 온라인 상에서 구매자에게 상품을 판매하는 서버로서, 온라인 마켓 관리자에 의해 운용될 수 있다. 여기서 온라인 마켓은, 오픈마켓, 소셜 커머스, 중고거래 마켓, 온라인 종합몰, 온라인 전문몰 등 온라인에서 상품 거래가 가능한 모든 플랫폼을 포함할 수 있다. 또한, 위탁 판매 시스템(1)에 복수의 온라인 마켓 서버가 포함될 수 있지만, 설명의 편의를 위하여 하나의 온라인 마켓 서버(600)를 중심으로 발명을 설명한다.The online market server 600 is a server that sells products to buyers online and may be operated by an online market manager. Here, the online market may include all platforms capable of trading goods online, such as an open market, social commerce, a second-hand trading market, an online general mall, and an online specialized mall. In addition, although a plurality of online market servers may be included in the consignment sales system 1, the invention will be described focusing on one online market server 600 for convenience of description.

온라인 마켓 서버(600)에는 제1 판매자와 대응되는 제1 판매자 계정 및 제2 판매자와 대응되는 제2 판매자 계정 등 복수의 판매자에 대한 판매자 계정이 설정될 수 있다. 판매자 계정은 판매자 클라이언트(400, 500) 각각에 의해 설정될 수도 있고, 관리 서버(300)에 의해 설정될 수도 있다. 온라인 마켓 서버(600)는 판매자 계정을 통해 상품 거래를 운용할 수 있다. 또한, 제1 판매자 계정 및 제2 판매자 계정은 관리 서버(300)에 의해 관리될 수 있다. 이에 따라, 복수의 판매자 계정에 대한 일원화된 관리가 가능해짐으로서, 판매자 계정 관리의 효율성이 높아질 수 있다. 물론. 이에 한정되는 것은 아니고, 제1 판매자 계정 및 제2 판매자 계정은 각각 제1 판매자 및 제2 판매자에 의해 관리될 수도 있다.Seller accounts for a plurality of sellers, such as a first seller account corresponding to a first seller and a second seller account corresponding to a second seller, may be set in the online market server 600 . The seller account may be set by each of the seller clients 400 and 500 or may be set by the management server 300 . The online market server 600 may operate product transactions through a seller account. In addition, the first seller account and the second seller account may be managed by the management server 300 . Accordingly, since unified management of a plurality of seller accounts is possible, the efficiency of seller account management can be increased. of course. It is not limited thereto, and the first seller account and the second seller account may be managed by the first seller and the second seller, respectively.

구매자 클라이언트(700)는 상품을 구매하는 구매자의 디바이스로서, 온라인 상으로 온라인 마켓 서버(600)에 접속하여 판매자 계정을 통해, 판매자 계정에서 판매되는 상품을 구매할 수 있다.The buyer client 700 is a device of a buyer who purchases a product, and can access the online market server 600 online and purchase a product sold in the seller account through a seller account.

위탁 판매 프로세스에 대하여 예를 들어 설명하면, 관리 서버(300)는 제1 상품 공급 클라이언트(100)로부터 제1 상품에 대한 상품정보를 획득하고, 제2 상품 공급 클라이언트(200)로부터 제2 상품에 대한 상품정보를 획득할 수 있다. 관리 서버(300)는 제1 상품에 대한 정보 및 제2 상품에 대한 정보를 기초로 제1 판매자 계정을 통하여 온라인 마켓에서 판매되기 위한 판매자 관리 상품으로 제1 상품을 제1 판매자 계정에 등록하고, 제2 판매자 계정을 통하여 온라인 마켓에서 판매되기 위한 판매자 관리 상품으로 제2 상품을 제2 판매자 계정에 등록할 수 있다. 등록된 제1 상품 및 제2 상품은 각각 제1 판매자 계정 및 제2 판매자 계정에서 판매될 수 있다. 관리 서버(300)는 주기적 또는 비 주기적으로 제1, 2 판매자의 계정을 통해 상기 제1,2 상품에 대한 주문이 구매자 클라이언트(700)로부터 요청되었는지 여부를 확인할 수 있다. 구매자 클라이언트(700)가 온라인 마켓 서버(600)에 제1 판매자 계정을 통하여 제1 상품에 대한 구매 요청을 하는 경우, 관리 서버(300)는 제1 상품에 대한 주문정보를 제1 상품 공급 클라이언트(100)에게 제공할 수 있다. 여기서, 제1 상품에 대한 주문 정보는 구매자의 제1 상품의 구매수량, 구매자에 대한 정보, 상품 주문에 있어서 참고사항(구매자 요청사항 포함)을 포함할 수 있다. 제1 상품 공급 클라이언트(100) 및 관리 서버(300)는 제1 상품에 대한 주문정보를 기초로 제1 상품이 구매자에게 배송되게 하기 위한 절차를 수행할 수 있다. 또한, 관리 서버(300)는 판매자가 제1 상품의 판매에 따른 수익을 산정하기 위한 절차를 수행할 수 있다.Referring to the consignment sales process as an example, the management server 300 obtains product information on a first product from a first product supply client 100, and obtains product information on a second product from a second product supply client 200. product information can be obtained. The management server 300 registers the first product in the first seller account as a seller management product to be sold in the online market through the first seller account based on the information about the first product and the information about the second product, The second product may be registered in the second seller account as a seller managed product to be sold in the online market through the second seller account. The registered first product and second product may be sold in the first seller account and the second seller account, respectively. The management server 300 may periodically or non-periodically check whether an order for the first and second products has been requested from the buyer client 700 through the accounts of the first and second sellers. When the buyer client 700 makes a purchase request for the first product to the online market server 600 through the first seller account, the management server 300 transmits order information for the first product to the first product supply client ( 100) can be provided. Here, the order information for the first product may include a purchase quantity of the first product by the buyer, information about the buyer, and references (including buyer's requests) in ordering the product. The first product supply client 100 and the management server 300 may perform a procedure for delivering the first product to the buyer based on the order information for the first product. In addition, the management server 300 may perform a procedure for the seller to calculate profits according to the sale of the first product.

또한, 일 실시예에서, 제1 상품 공급 클라이언트(100), 제2 상품 공급 클라이언트(200), 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500) 및 구매자 클라이언트(700)와 같은 디바이스는 스마트폰, 태블릿 PC(Personal Computer), 노트북 PC, 휴대형 게임 단말기, 휴대형/동글형의 모바일 라우터 혹은 디지털 카메라 등의 모바일 단말기, M2M(Machine To Machine) 통신을 행하는 단말기로와 같이 다양한 디바이스로도 구현될 수 있다.In addition, in one embodiment, devices such as the first product supply client 100, the second product supply client 200, the first seller client 400, the second seller client 500 and the buyer client 700 It can be implemented with various devices such as smart phones, tablet PCs (Personal Computers), notebook PCs, portable game terminals, mobile terminals such as portable/dongle-type mobile routers or digital cameras, and terminals that perform M2M (Machine To Machine) communication. It can be.

또한, 관리 서버(300)는 관리 서버 시스템(800)를 이용하여 관리 서버(300)에게 할당된 업무를 처리할 수 있다. 예컨대, 관리 서버 시스템(800)은 복수의 마이크로 서버를 포함할 수 있다.In addition, the management server 300 may process tasks assigned to the management server 300 using the management server system 800 . For example, the management server system 800 may include a plurality of micro servers.

관리 서버(300)는 상품 공급 클라이언트들(100, 200), 판매자 클라이언트들(400, 500), 온라인 마켓 서버(600) 및/또는 구매자 클라이언트(700)로부터 요청을 받고, 관리 서버 시스템(800)의 마이크로 서버에 요청을 제공하고 관리 서버 시스템(800)의 복수의 마이크로 서버에서 요청을 처리할 수 있다. 관리 서버(300)는 관리 서버 시스템(800)을 제어할 수 있다. 예를 들어, 관리 서버(300)는 관리 서버 시스템(800)의 복수의 마이크로 서버의 리소스를 제어할 수 있다. 관리 서버 시스템(800)에 대해서는 도 3 내지 도 5에서 상세하게 설명한다.The management server 300 receives requests from the product supply clients 100 and 200, the seller clients 400 and 500, the online market server 600 and/or the buyer client 700, and the management server system 800 A request may be provided to the micro server of the management server system 800 and the request may be processed by a plurality of micro servers of the management server system 800 . The management server 300 may control the management server system 800 . For example, the management server 300 may control resources of a plurality of micro servers of the management server system 800 . The management server system 800 will be described in detail with reference to FIGS. 3 to 5 .

그러나, 관리 서버 시스템(800)의 마이크로 서버가 해당 요청을 처리함에 따라 복수의 마이크로 서버에는 부하가 걸릴 수 있다. 예를 들어, 일시적으로 상품 공급 클라이언트들(100, 200)로부터 다량의 위탁 판매 요청을 받음에 따라 복수의 마이크로 서버에서 과부하가 걸릴 수 있고, 이후에는 상품 공급 클라이언트들(100, 200)로부터 다량의 위탁 판매 요청이 적음에 따라 복수의 마이크로 서버에서 적은 양의 부하만이 걸릴 수 있다. 이와 같이, 일시적으로 복수의 마이크로 서버에서 과부하가 걸릴 경우, 과부하에 의하여 복수의 마이크로 서버가 요청을 처리하는 시간 동안 위탁 판매가 중단되는 등의 문제가 생길 수 있다. 이를 위해, 이하에서는 이러한 문제점을 해결하기 위한 관리 서버(300)의 오토 스케일링 방법에 대하여 설명한다.However, as the micro server of the management server system 800 processes the corresponding request, a load may be applied to the plurality of micro servers. For example, as a large number of consignment sales requests are temporarily received from the product supply clients 100 and 200, a plurality of micro servers may be overloaded, and then a large amount of consignment sales from the product supply clients 100 and 200 As consignment sales requests are small, only a small amount of load can be taken from a plurality of micro servers. In this way, when a plurality of micro servers are temporarily overloaded, consignment sales may be stopped while the plurality of micro servers process requests due to the overload. To this end, an auto scaling method of the management server 300 to solve this problem will be described below.

도 2는 일 실시예에 따른 관리 서버를 설명하기 위한 도면이다.2 is a diagram for explaining a management server according to an embodiment.

도 2를 참조하면, 관리 서버(300)는 제어부(310), 통신부(320) 및 저장부(330)를 포함할 수 있다.Referring to FIG. 2 , the management server 300 may include a control unit 310 , a communication unit 320 and a storage unit 330 .

제어부(310)는 관리 서버(300)의 각 구성을 제어하거나 각종 정보를 처리하고 연산할 수 있다. 예를 들어, 제어부(310)는 통신부(320) 및 저장부(330)간의 제어 흐름 및/또는 데이터 흐름을 관리할 수 있다. 또한, 제어부(310)는 통신부(320)를 통하여 도 1에서 전술한 관리 서버 시스템(800)과 통신을 수행하고, 관리 서버 시스템(800)과의 통신을 통하여 각종 정보를 처리하고 연산할 수 있다.The control unit 310 may control each component of the management server 300 or process and calculate various types of information. For example, the control unit 310 may manage control flow and/or data flow between the communication unit 320 and the storage unit 330 . In addition, the control unit 310 may communicate with the management server system 800 described above in FIG. 1 through the communication unit 320, and process and calculate various information through communication with the management server system 800. .

제어부(310)는 소프트웨어, 하드웨어 및 이들의 조합으로 구현될 수 있다. 예를 들어, 하드웨어적으로 제어부(310)는 FPGA((field programmable gate array)나 ASIC(Application Specific Integrated Circuit), 반도체 칩, 및 그 외의 다양한 형태의 전자 회로로 구현될 수 있다. 또한 예를 들어, 소프트웨어적으로 제어부(310)는 상술한 하드웨어에 따라 수행되는 논리 프로그램이나 각종 컴퓨터 언어 등으로 구현될 수 있다. 또한 제어부(310)는 마이크로프로세서, 마이크로컨트롤러, 디지털 신호 처리장치(DSP) 혹은 그 임의의 조합을 포함하는 임의의 유형일 수도 있지만, 이에 한정되는 것은 아니다.The control unit 310 may be implemented in software, hardware, or a combination thereof. For example, in terms of hardware, the control unit 310 may be implemented with a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a semiconductor chip, or other various types of electronic circuits. Also, for example, In terms of software, the control unit 310 may be implemented in a logic program executed according to the above-described hardware or various computer languages, etc. In addition, the control unit 310 may be a microprocessor, a microcontroller, a digital signal processing device (DSP) or the like. It may be of any type including, but not limited to, any combination.

통신부(320)는 관리 서버(300)가 전술한 제1 상품 공급 클라이언트(100), 제2 상품 공급 클라이언트(200), 제1 판매자 클라이언트(400), 제2 판매자 클라이언트(500), 온라인 마켓 서버(600), 구매자 클라이언트(700) 및/또는 관리 서버 시스템(800)와 직접 또는 간접적으로 통신을 수행하도록 구성될 수 있다. 예를 들어, 통신부(320)는 무선 통신 규격에 따라 통신이 수행되거나 BLE(Bluetooth Low Energy), 블루투스(Bluetooth), WLAN(Wireless LAN), WiFi(Wireless Fidelity), WiFi Direct, NFC(Near Field Communication), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wide Band), 지그비(Zigbee), 3G, 4G 또는 5G를 비롯한 이동 통신 모듈 및 그 외의 다양한 통신 규격을 통해 데이터를 송신하는 유무선 모듈을 포함할 수 있다.The communication unit 320 includes the first product supply client 100, the second product supply client 200, the first seller client 400, the second seller client 500, and the online market server. 600 , the purchaser client 700 and/or the management server system 800 may be configured to communicate directly or indirectly. For example, the communication unit 320 performs communication according to wireless communication standards, Bluetooth Low Energy (BLE), Bluetooth (Bluetooth), Wireless LAN (WLAN), Wireless Fidelity (WiFi), WiFi Direct, Near Field Communication (NFC) ), Infrared Data Association (IrDA), UWB (Ultra Wide Band), Zigbee, mobile communication modules including 3G, 4G or 5G, and wired/wireless modules that transmit data through various other communication standards can do.

저장부(330)는 위탁 판매 시스템(1)의 운용을 위해 필요한 정보를 포함할 수 있다. 일 실시예에서, 저장부(330)는 메모리는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 자기 메모리, 자기 디스크, 광디스크 등과 같은 다양한 타입의 저장매체를 포함할 수 있다. 또한, 저장부(330)는 일시적, 영구적 또는 반영구적으로 정보를 저장할 수 있으며, 내장형 또는 탈착형으로 제공될 수 있다. The storage unit 330 may include information necessary for the operation of the consignment sales system 1 . In one embodiment, the storage unit 330 includes a flash memory type, a hard disk type, a multimedia card micro type, and a card type memory (eg, SD or XD memory, etc.), RAM (Random Access Memory, RAM), SRAM (Static Random Access Memory), ROM (Read-Only Memory, ROM), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory) Only Memory) may include various types of storage media such as magnetic memory, magnetic disk, and optical disk. In addition, the storage unit 330 may temporarily, permanently or semi-permanently store information, and may be provided in a built-in or removable type.

관리 서버(300)는 반드시 상술한 구성을 모두 포함해야 하는 것은 아니며, 선택에 따라 일부 구성이 제외된 형태로 제공될 수 있다. 또한 관리 서버(300)는 선택에 따라 추가적인 기능 및 동작 등을 수행하기 위한 구성이 부가된 형태로 제공될 수 있다.The management server 300 does not necessarily have to include all of the above configurations, and may be provided in a form excluding some configurations according to selection. In addition, the management server 300 may be provided in the form of an added configuration for performing additional functions and operations according to selection.

도 3은 일 실시예에 따른 관리 서버 시스템을 설명하기 위한 도면이다.3 is a diagram for explaining a management server system according to an embodiment.

도 3을 참조하면, 관리 서버 시스템(800)는 메시지 큐 서비스(810), 복수의 마이크로 서비스(820) 및 데이터베이스(830)를 포함할 수 있다.Referring to FIG. 3 , a management server system 800 may include a message queue service 810, a plurality of microservices 820, and a database 830.

먼저, 복수의 마이크로 서비스(820)는 관리 서버가 수행하는 다양한 업무를 기준으로 구분될 수 있다. 예를 들어, 복수의 마이크로 서비스(820)는 8개의 마이크로 서비스로 구성될 수 있다. 일 예로, 제1 마이크로 서비스는 상품 공급 클라이언트들이 제공하는 상품에 대한 정보를 획득하는 기능을 수행할 수 있다. 또한, 제2 마이크로 서비스는 관리 서버 및 관리 서버 시스템(800)의 상태를 확인하고, 관리 서버 및 관리 서버 시스템에서 수행되는 연산을 전반적으로 제어하는 기능을 수행할 수 있다. 또한, 제3 마이크로 서비스는 상품에 대한 정보를 저장하고 가공하는 기능을 수행할 수 있다. 또한, 제4 마이크로 서비스는 등록할 상품을 미리 정해진 조건에 따라 선택하는 기능을 수행할 수 있다. 또한, 제5 마이크로 서비스는 이미 등록된 상품의 현재 상태를 파악하고, 이미 등록된 상품에 대한 정보를 수정하는 기능을 수행할 수 있다. 또한, 제6 마이크로 서비스는 이미 등록된 상품에 대한 정보를 관리하는 기능을 수행할 수 있다. 또한, 제7 마이크로 서비스는 온라인 마켓 서버에 제공하거나 제공받는 정보를 관리하는 기능을 수행하고, 예를 들어, 제7 마이크로 서비스는 온라인 마켓 서버에 상품을 등록하고, 온라인 마켓 서버에 등록된 상품을 수정하고, 온라인 마켓 서버에서의 상품 판매량 또는 상품 판매 속도를 조절하는 기능을 수행할 수 있다. 또한, 제8 마이크로 서비스는 상품 공급 클라이언트들, 판매자 클라이언트들, 온라인 마켓 서버 및/또는 구매자 클라이언트 사이에서 인터페이싱하는 기능을 수행하는 것으로, 예를 들어, 제8 마이크로 서비스는 상품 공급 클라이언트들, 판매자 클라이언트들, 온라인 마켓 서버 및/또는 구매자 클라이언트로부터 데이터를 획득하고, 획득된 데이터를 가공하고, 가공된 데이터를 상품 공급 클라이언트들, 판매자 클라이언트들, 온라인 마켓 서버 및/또는 구매자 클라이언트에 제공하는 기능을 수행할 수 있다.First, the plurality of microservices 820 may be classified based on various tasks performed by the management server. For example, the plurality of microservices 820 may consist of 8 microservices. For example, the first microservice may perform a function of acquiring information about products provided by product supply clients. In addition, the second microservice may perform a function of checking the status of the management server and the management server system 800 and overall controlling operations performed in the management server and the management server system. In addition, the third microservice may perform a function of storing and processing product information. In addition, the fourth microservice may perform a function of selecting a product to be registered according to a predetermined condition. In addition, the fifth microservice may perform a function of recognizing the current status of already registered products and correcting information on already registered products. In addition, the sixth microservice may perform a function of managing information on already registered products. In addition, the seventh microservice performs a function of managing information provided to or received from the online market server. For example, the seventh microservice registers products in the online market server and stores products registered in the online market server. It can perform a function of adjusting the product sales volume or product sales speed in the online market server. In addition, the eighth microservice performs a function of interfacing between product supply clients, seller clients, online market server, and/or buyer client. Acquire data from the online market server and/or buyer client, process the acquired data, and provide the processed data to product supply clients, seller clients, online market server and/or buyer client. can do.

또한, 복수의 마이크로 서비스(820) 각각은 복수의 마이크로 서버를 포함할 수 있다. 복수의 마이크로 서버 각각은 대응되는 마이크로 서비스를 처리할 수 있다. 예를 들어, 제1 마이크로 서비스에 포함되는 제1 마이크로 서버(821) 및 제2 마이크로 서버(822)는 제1 마이크로 서비스에 대한 연산을 수행하고, 제2 마이크로 서비스에 포함되는 제3 마이크로 서버(823) 및 제4 마이크로 서버(824)는 제2 마이크로 서비스에 대한 연산을 수행할 수 있다. 이러한 복수의 마이크로 서버는 각각이 물리적으로 독립된 서버일 수도 있고, 물리적으로 하나의 서버가 논리적으로 분리된 서버일 수도 있다.In addition, each of the plurality of micro services 820 may include a plurality of micro servers. Each of the plurality of micro servers may process a corresponding micro service. For example, the first micro server 821 and the second micro server 822 included in the first micro service perform operations on the first micro service, and the third micro server included in the second micro service ( 823) and the fourth micro server 824 may perform operations on the second micro service. Each of these micro servers may be a physically independent server, or a physically separate server may be a logically separated server.

메시지 큐 서비스(810)에는 전술한 상품 공급 클라이언트들, 판매자 클라이언트들, 온라인 마켓 서버 및/또는 구매자 클라이언트로부터 획득한 요청이 메시지의 형태로 저장될 수 있다. 또한, 복수의 마이크로 서비스(820)에 따라 구분될 수 있다. 예를 들어, 제1 메시지 큐(811)에는 제1 마이크로 서비스에 대한 요청이 메시지 형태로 저장될 수 있고, 제2 메시지 큐(812)에는 제2 마이크로 서비스에 대한 요청이 메시지 형태로 저장될 수 있다. 또한, 각 메시지 큐에는 관련 마이크로 서비스에 대한 요청이 획득된 순서에 따라 요청에 대한 메시지가 저장될 수 있다. 또한, 일 실시시예에서, 각 메시지 큐에 접근할 수 있는 마이크로 서버는 지정될 수 있다. 예를 들어, 제1 마이크로 서버(821)는 제1 마이크로 서비스에 대한 요청이 저장된 제1 메시지 큐(811)에 접근할 수 있으나, 제2 마이크로 서비스에 대한 요청이 저장된 제2 메시지 큐(812)에는 접근하지 못하도록 설정될 수 있다.Requests acquired from the aforementioned product supply clients, seller clients, online market server, and/or buyer client may be stored in the message queue service 810 in the form of a message. Also, it may be classified according to a plurality of microservices 820 . For example, the request for the first microservice may be stored in the form of a message in the first message queue 811, and the request for the second microservice may be stored in the form of a message in the second message queue 812. there is. Also, in each message queue, messages for requests may be stored according to the order in which requests for related microservices are obtained. Also, in one embodiment, a micro server that can access each message queue can be specified. For example, the first micro server 821 can access the first message queue 811 where the request for the first micro service is stored, but the second message queue 812 where the request for the second micro service is stored. can be configured to prevent access to

데이터베이스(830)에는 각 마이크로 서버의 처리 결과에 대한 정보가 저장될 수 있다. 예를 들어, 데이터베이스(830)는 복수의 테이블을 포함하고, 각 마이크로 서버는 대응하는 테이블에 처리 결과에 대한 정보를 저장할 수 있다. 일 예로, 제1 마이크로 서버(821)는 제1 메시지 큐(811)에 저장된 메시지를 기초로 연산을 수행하고, 연산 수행 결과를 제1 테이블(831)에 저장하고, 제2 마이크로 서버(822)는 제1 메시지 큐(811)에 저장된 메시지를 기초로 연산을 수행하고, 연산 수행 결과를 제1 테이블(831)에 저장할 수 있다. 또한, 경우에 따라, 각 마이크로 서버는 하나의 테이블에 처리 결과에 대한 정보를 저장할 수 있다. 예를 들어, 제1 마이크로 서버(821) 및 제2 마이크로 서버(822)는 제1 테이블(832)에 연산 처리 결과를 저장할 수 있다. 그러나, 서로 다른 마이크로 서비스에 포함된 마이크로 서버들은 데이터베이스(830)의 테이블을 공유할 수 없도록 설정될 수 있다. 예를 들어, 제3 마이크로 서버(823)는 제2 메시지 큐(812)에 저장된 메시지를 기초로 연산을 수행하고, 연산 수행 결과를 제3 테이블(833)에 저장할 수 있지만, 제3 마이크로 서버(823)과 다른 마이크로 서비스에 포함되는 제1 마이크로 서버(821) 및 제2 마이크로 서버(822)는 제3 테이블(833)에 연산 처리 결과를 저장할 수 없도록 설정될 수 있다. 이는 각 마이크로 서비스마다 데이터베이스(830)의 서로 다른 테이블을 사용함으로써, 관리 서버 시스템(800)의 병목현상을 방지하고, 성능을 향상시키기 위함일 수 있다.Information on processing results of each micro server may be stored in the database 830 . For example, the database 830 includes a plurality of tables, and each micro server may store information about a processing result in a corresponding table. For example, the first micro server 821 performs an operation based on the message stored in the first message queue 811, stores the operation result in the first table 831, and the second micro server 822 may perform an operation based on the message stored in the first message queue 811 and store the result of the operation in the first table 831. Also, depending on the case, each micro server may store information about processing results in one table. For example, the first micro server 821 and the second micro server 822 may store calculation processing results in the first table 832 . However, micro servers included in different micro services may be set so that tables of the database 830 cannot be shared. For example, the third micro server 823 may perform an operation based on the message stored in the second message queue 812 and store the operation result in the third table 833, but the third micro server ( 823), the first micro server 821 and the second micro server 822 included in other micro services may be configured not to store calculation processing results in the third table 833. This may be to prevent bottlenecks of the management server system 800 and improve performance by using different tables of the database 830 for each microservice.

또한, 마이크로 서버는 어플리케이션으로 표현될 수 있다. 예컨대, 제1 마이크로 서버가 상품 공급 클라이언트들로부터 제공된 상품을 분석하는 상품분석 기능을 수행하는 상품분석 기능을 수행하는 경우, 제1 마이크로 서버는 상품분석 어플리케이션으로 표현될 수 있다. 또한, 마이크로 서버 또는 어플리케이션은 적어도 하나의 기능을 수행할 수 있다. 예를 들어, 제1 마이크로 서버 또는 제1 어플리케이션은 제1 마이크로 서비스에서 수행되는 복수의 기능을 수행할 수 있다. 또한, 복수의 마이크로 서버 또는 복수의 어플리케이션이 서로 다른 기능을 수행할 수도 있고, 동일한 기능을 수행할 수도 있다.Also, the micro server can be expressed as an application. For example, when the first micro server performs a product analysis function of analyzing products provided from product supply clients, the first micro server may be expressed as a product analysis application. Also, the micro server or application may perform at least one function. For example, the first micro server or the first application may perform a plurality of functions performed in the first micro service. Also, a plurality of micro servers or a plurality of applications may perform different functions or may perform the same function.

또한, 메시지 큐 서비스(810)의 각각의 메시지 큐는 적어도 하나의 서브 메시지 큐를 포함할 수 있다. 예를 들어, 제1 메시지 큐(811)는 제1 서브 메시지 큐(813) 및 제2 서브 메시지 큐(814)를 포함할 수 있다. 상기 적어도 하나의 서브 메시지 큐에는 서로 다른 종류의 메시지가 저장될 수 있다. 예를 들어, 제1 서브 메시지 큐(813)에는 상품분석 기능에 의해 처리되는 메시지들이 저장되고, 제2 서브 메시지 큐(814)에는 상품분석 기능 외에 제1 마이크로 서비스에서 수행되는 다른 기능에 의해 처리되는 메시지들이 저장될 수 있다.Also, each message queue of the message queue service 810 may include at least one sub-message queue. For example, the first message queue 811 may include a first sub-message queue 813 and a second sub-message queue 814 . Different types of messages may be stored in the at least one sub-message queue. For example, messages processed by the product analysis function are stored in the first sub-message queue 813, and messages processed by other functions performed in the first microservice other than the product analysis function are stored in the second sub-message queue 814. messages can be stored.

물론, 실시예에 따라, 서브 메시지 큐가 정의되지 않고, 하나의 메시지 큐에 다양한 종류의 메시지가 저장될 수도 있고, 하나의 메시지 큐에 하나의 종류의 메시지가 저장될 수도 있다. 이하에서는, 설명의 편의를 위하여, 하나의 메시지 큐가 복수의 서브 메시지 큐를 포함하고, 각 서브 메시지 큐에 동일한 기능에 따라 처리되기 위한 메시지가 포함되는 실시예를 중심으로 설명을 진행하지만, 이에 한정되는 것은 아니다.Of course, depending on embodiments, sub-message queues may not be defined, and various types of messages may be stored in one message queue, or one type of message may be stored in one message queue. Hereinafter, for convenience of description, description will be made focusing on an embodiment in which one message queue includes a plurality of sub-message queues and messages to be processed according to the same function are included in each sub-message queue. It is not limited.

또한, 각 마이크로 서버는 대응하는 메시지 큐에 저장된 메시지의 종류 및 메시지의 수에 따라 해당 메시지를 처리하기 위한 기능을 유동적으로 수행할 수 있다. 예를 들어, 제1 서브 메시지 큐(813)에 상품 분석에 대한 메시지가 없는 경우 제1 마이크로 서버(821) 및 제2 마이크로 서버(822)는 상품 분석 기능을 수행하지 않고, 제1 서브 메시지 큐(813)에 상품 분석에 대한 메시지가 기준 개수 이하로 저장된 경우, 제1 마이크로 서버(821)에서만 상품 분석 기능을 수행할 수 있다. 왜냐하면, 제1 마이크로 서버(821)에서 충분히 처리 가능한 수량의 메시지가 존재하는 상황에서 제2 마이크로 서버(822)에서도 상품 분석 기능이 수행되는 경우 제2 마이크로 서버(822)의 연산에 따른 손실이 발생될 수 있기 때문이다.In addition, each micro server can flexibly perform a function for processing a corresponding message according to the type and number of messages stored in the corresponding message queue. For example, when there is no message about product analysis in the first sub-message queue 813, the first micro-server 821 and the second micro-server 822 do not perform a product analysis function, and the first sub-message queue 813 does not perform a product analysis function. When less than the standard number of messages for product analysis are stored in 813, the product analysis function can be performed only in the first micro server 821. This is because, when the product analysis function is performed in the second micro server 822 in a situation where there are a sufficient number of messages that can be sufficiently processed by the first micro server 821, loss occurs due to the operation of the second micro server 822. because it can be

또한, 제1 서브 메시지 큐(813)에 상품 분석에 대한 메시지가 기준 개수보다 많이 저장된 경우, 제1 마이크로 서버(821) 및 제2 마이크로 서버(822) 각각에서 상품 분석 기능을 수행할 수 있다. 왜냐하면, 제1 마이크로 서버(821)에서 처리하기 어려운 수량의 메시지가 존재하는 상황에서 제2 마이크로 서버(822)에서 상품 분석 기능이 수행되지 않는 경우, 제1 마이크로 서버(821)에 과부하가 발생하게 되고, 상품 분석 처리가 지연됨에 따라 위탁 판매 시스템 전반적으로 딜레이가 발생하는 등의 손실이 발생할 수 있기 때문이다.In addition, when more messages for product analysis are stored in the first sub-message queue 813 than the reference number, the first micro server 821 and the second micro server 822 may each perform a product analysis function. This is because, when the product analysis function is not performed in the second micro server 822 in a situation where there are a number of messages that are difficult to process in the first micro server 821, an overload occurs in the first micro server 821. This is because, as product analysis processing is delayed, losses such as delays may occur throughout the consignment sales system.

또한, 데이터베이스(830)의 테이블은 기능에 대응되게 지정될 수 있다. 예를 들어, 제1 마이크로 서버(821) 및 제2 마이크로 서버(822) 각각에서 상품 분석 기능을 수행하고, 상품 분석 기능에 따른 처리 결과가 제2 테이블(832)에 대응되도록 설정된 경우, 제1 마이크로 서버(821) 및 제2 마이크로 서버(822)는 상품 분석 기능에 대한 연산 처리 결과를 제2 테이블(832)에 저장할 수 있다.Also, a table of the database 830 may be designated to correspond to a function. For example, when a product analysis function is performed in each of the first micro server 821 and the second micro server 822, and the processing result according to the product analysis function is set to correspond to the second table 832, the first The micro server 821 and the second micro server 822 may store calculation processing results for product analysis functions in the second table 832 .

이와 같이, 본 명세서에서, 관리 서버가 각 마이크로 서버의 리소스를 자동적으로 제어하는 것, 예컨대, 관리 서버가 각 마이크로 서버의 구동 여부 및/또는 각 마이크로 서버에서 구동되는 기능을 자동적으로 제어하는 것을 오토 스케일링이라고 표현할 수 있다. 이하에서는, 이러한 관리 서버의 오토 스케일링에 대하여 상세하게 설명한다.As such, in the present specification, the management server automatically controls the resources of each micro server, for example, the management server automatically controls whether each micro server is running and/or automatically controls the functions running in each micro server. This can be referred to as scaling. Hereinafter, auto scaling of the management server will be described in detail.

도 4는 일 실시예에 따른 관리 서버의 오토 스케일링 방법을 설명하기 위한 동작 흐름도이다.4 is an operation flowchart illustrating an auto scaling method of a management server according to an exemplary embodiment.

도 4를 참조하면, 일 실시예에 따른 관리 서버의 오토 스케일링 방법은 연산 대상 메시지들의 종류, 연산 대상 메시지들의 개수 및 메시지 처리 요구 속도를 확인하는 단계(S100), 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계(S200) 및 설정된 전체 서버 리소스를 기초로 연산 대상 메시지들을 처리하되, 연산 대상 메시지들이 모두 처리될 때까지, 소정의 주기마다 전체 서버 리소스를 재설정하여 연산 대상 메시지들을 처리하는 단계(S300)를 포함할 수 있다.Referring to FIG. 4 , the auto-scaling method of the management server according to an embodiment includes the step of checking the type of calculation target messages, the number of calculation target messages, and the required message processing speed (S100), and the entire process for processing the calculation target messages. Setting server resources (S200) and processing target messages based on all set server resources, resetting all server resources at predetermined intervals until all target messages are processed to process target messages Step S300 may be included.

단계 S100에서, 관리 서버는 메시지 큐 및/또는 서브 메시지 큐에 포함된 메시지의 종류, 메시지의 개수 및 메시지 처리 요구 속도를 확인할 수 있다. 일 실시예에서, 관리 서버는 관리 서버 시스템의 메시지 큐 서비스에서 메시지가 저장된 메시지 큐를 확인하고, 메시지 큐에 저장된 메시지의 종류 및 메시지의 개수를 확인할 수 있다. 예를 들어, 관리 서버는 각 서브 메시지 큐에 저장된 메시지를 확인할 수 있다. 보다 구체적인 예로서, 관리 서버는 현재 시점에 제1 메시지 큐에 200개의 메시지가 저장되고, 이중 100개의 메시지는 제1 기능에 의해 처리되는 메시지로 제1 서브 메시지 큐에 저장되고, 나머지 100개의 메시지는 제2 기능에 의해 처리되는 메시지로서, 제2 서브 메시지 큐에 저장됨을 확인할 수 있다.In step S100, the management server may check the types of messages included in the message queue and/or the sub-message queue, the number of messages, and the requested message processing speed. In one embodiment, the management server may check a message queue in which messages are stored in the message queue service of the management server system, and check the type and number of messages stored in the message queue. For example, the management server can check messages stored in each sub-message queue. As a more specific example, the management server currently stores 200 messages in the first message queue, 100 of these messages are stored in the first sub-message queue as messages processed by the first function, and the remaining 100 messages are stored in the first message queue. is a message processed by the second function, and it can be confirmed that it is stored in the second sub-message queue.

관리 서버는 종류가 확인된 메시지들 중 연산을 수행하기 위한 연산 대상 메시지들을 선정할 수 있다. 상기 예에서, 관리 서버는 제1 기능에 의해 처리되는, 예를 들어, 제1 서브 메시지 큐에 저장된 100개의 메시지들을 연산 대상 메시지들로 선정할 수 있다. 일 예로, 관리 서버는 처리 우선순위가 높은 메시지들을 연산 대상 메시지들로 설정할 수 있다. 또한, 상기 처리 우선순위는 다양한 기준으로 설정될 수 있다. 예를 들어, 현재 시점에서 개수가 가장 많은 종류의 메시지들을 연산 대상 메시지들로 선정할 수도 있고, 메시지 큐에 가장 먼저 저장된 종류의 메시지들을 연산 대상 메시지들로 선정할 수도 있으며, 메시지의 종류에 따라 처리 우선순위가 미리 설정될 수도 있다. 또한, 사용자의 입력에 따라 처리 우선순위가 설정될 수도 있다.The management server may select calculation target messages for performing calculation among messages whose types are confirmed. In the above example, the management server may select 100 messages processed by the first function, eg, stored in the first sub-message queue, as operation target messages. For example, the management server may set messages having a high processing priority as operation target messages. Also, the processing priority may be set based on various criteria. For example, messages of the largest number at the current time may be selected as operation target messages, and messages of the type stored first in the message queue may be selected as operation target messages. Processing priorities may be set in advance. In addition, processing priorities may be set according to user input.

이하에서는, 설명의 편의를 위하여, 제1 메시지 큐의 제1 서브 메시지 큐에 저장된 메시지들 및 제1 메시지 큐의 제2 서브 메시지 큐에 저장된 메시지들이 연산 대상 메시지들로 선정되는 실시예를 중심으로 설명을 하지만, 이에 한정되는 것은 아니다.Hereinafter, for convenience of explanation, an embodiment in which messages stored in the first sub-message queue of the first message queue and messages stored in the second sub-message queue of the first message queue are selected as operation target messages will be focused on. description, but is not limited thereto.

또한, 관리 서버는 연산 대상 메시지들의 메시지 처리 요구 속도를 확인할 수 있다. 상기 예에서, 제1 기능에 의해 처리되는 100개의 메시지의 메시지 처리 요구 속도는 초당 10개일 수 있고, 제2 기능에 의해 처리되는 100개의 메시지의 메시지 처리 요구 속도는 초당 1개일 수 있다. 이러한 메시지 처리 요구 속도는 각 메시지의 종류에 따라 미리 설정될 수도 있고, 관리 서버의 사용자로부터 입력받을 수도 있다.In addition, the management server may check the message processing request speed of the operation target messages. In the above example, the message processing request rate of 100 messages processed by the first function may be 10 messages per second, and the message processing request rate of 100 messages processed by the second function may be 1 message processing request rate per second. Such a message processing request speed may be set in advance according to the type of each message or may be input from a user of the management server.

또한, 단계 S200에서, 관리 서버는 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정할 수 있다. 일 실시예에서, 관리 서버는 연산 대상 메시지들의 개수, 연산 대상 메시지들의 메시지 처리 요구 속도 및 처리 리소스 함수를 확인할 수 있다. 여기서, 처리 리소스 함수는 동일한 메시지를 처리하는 마이크로 서버, 예를 들어, 동일한 기능을 수행하는 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 함수를 의미할 수 있다. 처리 리소스 함수에 대해서는 도 5를 이용하여 설명한다.In addition, in step S200, the management server may set all server resources for processing operation target messages. In one embodiment, the management server may check the number of operation target messages, message processing request speed of the operation target messages, and a processing resource function. Here, the processing resource function may refer to a function defining an improvement in message processing performance according to an increase in the number of micro servers that process the same message, for example, micro servers that perform the same function. The processing resource function will be described using FIG. 5 .

도 5은 일 실시예에 따른 처리 리소스 함수를 설명하기 위한 도면이다.5 is a diagram for explaining a processing resource function according to an exemplary embodiment.

도 5를 참조하면, 그래프의 x축은 마이크로 서버의 개수를 의미하고, y축은 메시지 처리 성능을 의미할 수 있다. 처리 리소스 함수는 각 메시지 큐 또는 각 서브 메시지 큐에 쌓인 메시지의 개수가 무한하다고 가정할 때, 마이크로 서버의 개수의 증가에 따라 메시지를 처리할 수 있는 속도를 의미할 수 있다. 일반적으로, 마이크로 서버의 개수가 계속해서 증가할 경우에도, 메시지를 처리할 수 있는 속도는 정비율로 증가하지 않을 수 있다. 이는, 마이크로 서버 및/또는 데이터베이스의 메시지 처리 성능에 한계가 있기 때문일 수 있다. 이에 따라, 처리 리소스 함수는 도 5에서와 같은 제1 처리 리소스 함수(510) 및 제2 처리 리소스 함수(520)로 나타날 수 있다. Referring to FIG. 5 , the x-axis of the graph may mean the number of micro servers, and the y-axis may mean message processing performance. Assuming that the number of messages accumulated in each message queue or each sub-message queue is infinite, the processing resource function may mean a speed at which messages can be processed according to an increase in the number of micro servers. In general, even when the number of micro servers continues to increase, the speed at which messages can be processed may not increase at a maintenance rate. This may be because there is a limit to the message processing performance of the micro server and/or database. Accordingly, the processing resource function may appear as a first processing resource function 510 and a second processing resource function 520 as shown in FIG. 5 .

제1 처리 리소스 함수(510)는 마이크로 서버의 개수가 증가함에 따라 메시지 처리 성능이 소정의 제1 처리 성능 증가 범위내로 증가하다가, 마이크로 서버의 개수가 증가하더라도 메시지 처리 성능이 제1 임계 처리 성능(511)으로 수렴하는 형태일 수 있다. 예컨대, 제1 처리 리소스 함수(510)는 Exponential Decay Upward의 형태를 가질 수 있다.In the first processing resource function 510, as the number of micro servers increases, the message processing performance increases within a predetermined first processing capacity increase range, and even if the number of micro servers increases, the message processing performance increases to the first threshold processing performance ( 511) may be converged. For example, the first processing resource function 510 may have a form of Exponential Decay Upward.

또한 제2 처리 리소스 함수(520)는 마이크로 서버의 개수가 증가함에 따라 메시지 처리 성능이 소정의 제2 처리 성능 증가 범위내로 증가하다가 마이크로 서버의 개수가 증가하더라도 메시지 처리 성능이 제2 임계 처리 성능(521)으로 수렴하는 형태를 가질 수 있다. 예컨대, 제2 처리 리소스 함수(520)는 Logarithmic Increase의 형태를 가질 수 있다. 이 때, 도 5에서 도시된 바와 같이, 제2 처리 리소스 함수(520)에서 제2 처리 성능 증가 범위로 증가하는 구간(522)에서의 마이크로 서버의 개수가 제1 처리 리소스 함수(510)에서 제1 처리 성능 증가 범위로 증가하는 구간(512)에서의 마이크로 서버의 개수보다 많을 수 있다. 즉, 제1 처리 리소스 함수(510) 보다 제2 처리 리소스 함수(520)에서, 마이크로 서버의 개수가 증가함에 따라 메시지 처리 성능이 향상되는 구간(522)이 더 길 수 있다. 이에 따라, 제2 처리 리소스 함수(520)의 제2 임계 처리 성능(521)이 제1 처리 리소스 함수(510)의 제1 임계 처리 성능(511)보다 높을 수 있다.In addition, the second processing resource function 520 indicates that as the number of micro servers increases, the message processing performance increases within a predetermined second processing capacity increase range, and even if the number of micro servers increases, the message processing performance becomes the second threshold processing performance ( 521). For example, the second processing resource function 520 may have a form of Logarithmic Increase. At this time, as shown in FIG. 5, the number of micro servers in the section 522 in which the second processing resource function 520 increases to the second processing capacity increase range is the first processing resource function 510. It may be greater than the number of micro servers in the section 512 that increases by 1 processing performance increase range. That is, in the second processing resource function 520 than in the first processing resource function 510, the interval 522 in which message processing performance is improved as the number of micro servers increases may be longer. Accordingly, the second threshold processing performance 521 of the second processing resource function 520 may be higher than the first threshold processing performance 511 of the first processing resource function 510 .

다시 도 4를 참조하면, 단계 S200에서, 관리 서버는 연산 대상 메시지들의 개수, 연산 대상 메시지들의 메시지 처리 요구 속도 및 처리 리소스 함수를 기초로 처리하기 위한 전체 서버 리소스를 설정할 수 있다. Referring back to FIG. 4 , in step S200 , the management server may set the total server resources for processing based on the number of computational target messages, the required message processing speed of the computational target messages, and a processing resource function.

구체적으로, 관리 서버는 먼저 연산 대상 메시지들을 하나의 마이크로 서버가 처리할 경우의 메시지 처리 속도를 확인할 수 있다. 만약, 메시지 처리 속도가 메시지 처리 요구 속도보다 낮으면, 관리 서버는 마이크로 서버의 개수를 하나씩 증가시키면서, 증가된 마이크로 서버로 연산 대상 메시지를 처리할 경우의 메시지 처리 속도를 추정하고, 메시지 처리 속도가 메시지 처리 요구 속도 이상인지 여부를 판단할 수 있다. 만약, 증가된 마이크로 서버의 개수(예를 들어, 3개의 마이크로 서버)로 연산 대상 메시지를 처리할 경우의 메시지 처리 속도가 메시지 처리 요구 속도 이상인 경우, 증가된 마이크로 서버의 개수(예를 들어, 3개의 마이크로 서버)를 연산 대상 메시지를 처리하기 위한 전체 서버 리소스로 설정할 수 있다.Specifically, the management server can first check the message processing speed when one micro server processes the operation target messages. If the message processing speed is lower than the required message processing speed, the management server increases the number of micro servers by one, estimates the message processing speed when processing the operation target message with the increased micro server, and increases the message processing speed. It may be determined whether the message processing speed is higher than the required speed. If the message processing speed when processing the operation target message with the increased number of micro servers (eg, 3 micro servers) is greater than the required message processing speed, the increased number of micro servers (eg, 3 micro servers) 2 micro servers) can be set as the entire server resource to process the operation target message.

구체적인 예로서, 연산 대상 메시지들에 포함된 제1 서브 메시지 큐의 메시지들을 처리하기 위하여 제1 기능이 수행되고, 제2 서브 메시지 큐의 메시지들을 처리하기 위하여 제2 기능이 수행되고, 각 기능들이 각각 마이크로 서버마다 하나씩 구동 가능한 경우, 관리 서버는 먼저 제1 서브 메시지 큐의 메시지들을 처리하기 위하여 제1 기능이 수행되는 마이크로 서버의 개수를 설정할 수 있다. 예를 들어, 관리 서버는 제1 마이크로 서버가 제1 기능을 수행할 때의 메시지 처리 속도를 추정할 수 있다. 이 때, 메시지 처리 속도가 제1 서브 메시지 큐의 메시지들을 처리하기 위하여 요구되는 제1 메시지 요구 속도보다 낮은 경우, 관리 서버는 제1 기능이 수행되는 마이크로 서버를 증가시키기 위하여 제2 마이크로 서버에서도 제1 기능이 수행될 때의 메시지 처리 속도를 추정할 수 있다. 이 때, 메시지 처리 속도가 제1 메시지 요구 속도 이상인 경우, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버에서 각각 제1 기능을 수행하는 것으로 제1 서브 메시지 큐의 메시지들을 처리하기 위한 서버 리소스를 설정할 수 있다.As a specific example, a first function is performed to process messages of a first sub-message queue included in operation target messages, a second function is performed to process messages of a second sub-message queue, and each function is performed. If each micro server can run one by one, the management server can first set the number of micro servers where the first function is performed in order to process the messages of the first sub message queue. For example, the management server may estimate the message processing speed when the first micro server performs the first function. At this time, if the message processing speed is lower than the first message request speed required to process the messages of the first sub-message queue, the management server also provides a second micro-server to increase the number of micro-servers in which the first function is performed. The message processing speed when function 1 is performed can be estimated. At this time, when the message processing speed is higher than the first message request speed, the management server performs the first function in the first micro server and the second micro server, respectively, and uses server resources for processing messages in the first sub message queue. can be set

또한, 관리 서버는 제2 서브 메시지 큐의 메시지들을 처리하기 위하여 제2 기능이 수행되는 마이크로 서버의 개수를 설정할 수 있다. 이 때, 실시예에 따라, 관리 서버는 먼저 설정된 제1 기능이 수행되는 제1 및 제2 마이크로 서버가 아닌 다른 마이크로 서버에서 제2 기능이 수행되는 경우를 상정하여 제2 서브 메시지 큐의 메시지들을 처리하기 위한 서버 리소스를 설정할 수도 있다. 또한, 다른 실시예에서, 관리 서버는 먼저 설정된 제1 기능이 수행되는 제1 및 제2 마이크로 서버에서 중복하여 제2 기능이 수행되는 경우를 상정하여 제2 서브 메시지 큐의 메시지들을 처리하기 위한 서버 리소스를 설정할 수도 있다. 이하에서는, 설명의 편의를 위하여 먼저 설정된 제1 기능이 수행되는 제1 및 제2 마이크로 서버에서 중복하여 제2 기능이 수행되는 경우를 상정하여 설명을 진행하지만, 이에 한정되는 것은 아니다.In addition, the management server may set the number of micro servers performing the second function in order to process messages of the second sub message queue. At this time, according to the embodiment, the management server transfers the messages of the second sub-message queue assuming that the second function is performed in a micro server other than the first and second micro servers where the previously configured first function is performed. You can also set server resources for processing. Further, in another embodiment, the management server is a server for processing messages of the second sub-message queue assuming that the second function is performed overlappingly in the first and second micro servers where the first function previously set is performed. You can also set resources. Hereinafter, for convenience of description, a description will be made on the assumption that the second function is performed overlappingly in the first and second micro servers where the first function previously set is performed, but is not limited thereto.

이에 따라, 관리 서버는 제1 기능이 수행되는 것으로 설정된 제1 마이크로 서버가 제2 기능을 수행할 때의 메시지 처리 속도를 추정할 수 있다. 이 때, 메시지 처리 속도가 제2 서브 메시지 큐의 메시지들을 처리하기 위하여 요구되는 제2 메시지 요구 속도보다 낮은 경우, 관리 서버는 제2 마이크로 서버에서도 제2 기능이 수행될 때의 메시지 처리 속도를 추정할 수 있다. 이 때, 메시지 처리 속도가 제2 메시지 요구 속도 이상인 경우, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버에서 각각 제2 기능을 수행시키는 것으로 제2 서브 메시지 큐의 메시지들을 처리하기 위한 서버 리소스를 설정할 수 있다. 따라서, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버 각각에서 제1 기능 및 제2 기능을 수행하는 것으로, 제1 서브 메시지 큐 및 제2 서브 메시지 큐의 메시지들을 처리하기 위한 전체 서버 리소스를 설정할 수 있다.Accordingly, the management server may estimate the message processing speed when the first micro server, which is set to perform the first function, performs the second function. At this time, if the message processing speed is lower than the second message request speed required to process the messages of the second sub-message queue, the management server estimates the message processing speed when the second function is performed in the second micro server as well. can do. At this time, when the message processing speed is higher than the second message request speed, the management server executes the second function in the first micro server and the second micro server, respectively, and uses server resources for processing messages in the second sub-message queue. can be set Therefore, the management server performs the first function and the second function in the first micro server and the second micro server, respectively, and sets all server resources for processing messages of the first sub-message queue and the second sub-message queue. can

또한 일 실시예에서, 관리 서버는 처리 리소스 함수에 따른 메시지 처리 성능 증가 범위내에서의 마이크로 서버의 개수를 확인하고, 처리 성능 증가 범위 내에서의 마이크로 서버의 최대 개수 이하가 되도록 전체 서버 리소스를 설정할 수 있다. 이는, 처리 리소스 함수에 따른 메시지 처리 성능 증가 범위를 벗어나게 되면, 즉, 처리 리소스 함수에 따른 임계 처리 성능에 대응하는 개수의 마이크로 서버로 연산 대상 메시지를 처리하게 되면, 연산 대상 메시지들의 처리 효율이 떨어질 수 있기 때문일 수 있다.In addition, in one embodiment, the management server determines the number of micro servers within the range of increasing message processing performance according to the processing resource function, and sets the total server resources to be less than or equal to the maximum number of micro servers within the range of increasing processing performance. can This means that if the message processing performance increase range according to the processing resource function is exceeded, that is, if the number of micro servers corresponding to the critical processing performance according to the processing resource function is used to process the target message, the processing efficiency of the target message will decrease. It may be because it can.

구체적인 예로서, 관리 서버는 먼저 제1 서브 메시지 큐의 메시지들을 처리하기 위하여 제1 기능이 수행되는 마이크로 서버의 개수를 설정할 수 있다. 예를 들어, 관리 서버는 제1 마이크로 서버가 제1 기능을 수행할 때의 메시지 처리 속도를 추정할 수 있다. 그리고, 메시지 처리 속도가 제1 서브 메시지 큐의 메시지들을 처리하기 위하여 요구되는 제1 메시지 요구 속도보다 낮은 경우, 관리 서버는 제1 기능이 수행되는 마이크로 서버를 증가시키기 위하여 제2 마이크로 서버에서도 제1 기능이 수행될 때의 메시지 처리 속도를 추정할 수 있다. 그리고, 메시지 처리 속도가 제1 메시지 요구 속도 이상인 경우, 관리 서버는, 제2 마이크로 서버에서도 제1 기능이 수행될 경우에 증가되는 메시지 처리 성능이 처리 리소스 함수에 따른 처리 성능 증가 범위내인지 여부를 확인할 수 있다. 예를 들어, 메시지 처리 성능이 도 5의 제1 처리 리소스 함수(510)에 따를 경우, 관리 서버는 제2 마이크로 서버에서도 제1 기능이 수행될 경우에 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하는지 여부를 확인할 수 있다. 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하는 경우, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버에서 각각 제1 기능을 수행하는 것으로 제1 서브 메시지 큐의 메시지들을 처리하기 위한 서버 리소스를 설정할 수 있다.As a specific example, the management server may first set the number of micro servers where the first function is performed in order to process the messages of the first sub-message queue. For example, the management server may estimate the message processing speed when the first micro server performs the first function. And, when the message processing speed is lower than the first message request speed required to process the messages of the first sub-message queue, the management server also performs the first function in the second micro-server to increase the number of micro-servers in which the first function is performed. It is possible to estimate the message processing speed when the function is performed. And, when the message processing speed is equal to or greater than the first message request speed, the management server determines whether the increased message processing performance when the first function is performed in the second micro server is within the processing performance increase range according to the processing resource function. You can check. For example, if the message processing performance conforms to the first processing resource function 510 of FIG. 5, the management server increases the message processing performance when the first function is performed in the second micro server as well. You can check whether it increases within the range. When the message processing performance increases within the first processing performance increase range, the management server allocates server resources for processing messages in the first sub message queue by performing the first function in the first micro server and the second micro server, respectively. can be set

또한, 관리 서버는 제2 서브 메시지 큐의 메시지들을 처리하기 위하여 제2 기능이 수행되는 마이크로 서버의 개수를 설정할 수 있다. 관리 서버는 제1 기능이 수행되는 것으로 설정된 제1 마이크로 서버가 제2 기능을 수행할 때의 메시지 처리 속도를 추정할 수 있다. 또한, 관리 서버는 제1 마이크로 서버에서 제1 기능과 함께 제2 기능이 수행될 경우에 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하는지 여부를 추정할 수 있다. 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하고, 이 때, 메시지 처리 속도가 제2 서브 메시지 큐의 메시지들을 처리하기 위하여 요구되는 제2 메시지 요구 속도보다 낮은 경우, 관리 서버는 제2 마이크로 서버에서도 제2 기능이 수행될 때의 메시지 처리 속도를 추정할 수 있다. 또한, 관리 서버는 제2 마이크로 서버에서 제1 기능과 함께 제2 기능이 수행될 경우에 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하는지 여부를 추정할 수 있다. 이 때, 메시지 처리 속도가 제2 메시지 요구 속도 이상이지만, 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하지 않는 경우, 관리 서버는 제1 마이크로 서버에서는 제1 기능 및 제2 기능이 수행되지만 제2 마이크로 서버에서는 제1 기능만 구동되고 제2 기능이 수행되지 않는 것으로, 제1 서브 메시지 큐 및 제2 서브 메시지 큐의 메시지들을 처리하기 위한 전체 서버 리소스를 설정할 수 있다.In addition, the management server may set the number of micro servers performing the second function in order to process messages of the second sub message queue. The management server may estimate a message processing speed when the first micro-server, which is set to perform the first function, performs the second function. In addition, the management server may estimate whether the increased message processing performance increases within the first processing performance increase range when the second function is performed together with the first function in the first micro server. When the message processing performance increases within the first processing performance increase range, and at this time, the message processing rate is lower than the second message request rate required to process the messages of the second sub-message queue, the management server determines the second micro server. Also, the message processing speed when the second function is performed can be estimated. In addition, the management server may estimate whether the increased message processing performance increases within the first processing performance increase range when the second function is performed together with the first function in the second micro server. At this time, if the message processing speed is equal to or greater than the second requested message speed, but the message processing performance does not increase within the first processing performance increase range, the management server performs the first function and the second function in the first micro server, but the second function is performed. In the 2 micro server, only the first function is operated and the second function is not performed, so that all server resources for processing messages of the first sub-message queue and the second sub-message queue can be configured.

또한, 관리 서버는 설정된 전체 서버 리소스에 따라 설정된 마이크로 서버가 연산 대상 메시지를 처리할 경우, 메시지 처리 속도가 메시지 처리 요구 속도 이상인지 여부를 확인하고, 메시지 처리 속도가 메시지 처리 요구 속도보다 낮은 경우, 메시지 처리 속도가 메시지 처리 요구 속도보다 낮다는 것을 알릴 수 있다.In addition, the management server checks whether the message processing speed is higher than the required message processing speed when the set micro server processes the operation target message according to the set total server resources, and if the message processing speed is lower than the required message processing speed, It can indicate that the message processing rate is lower than the message processing required rate.

또한, 관리 서버는 연산 대상 메시지 각각마다 처리량이 다를 수 있고, 각 마이크로 서버마다 성능이 다를 수 있다. 이에 따라, 관리 서버는 연산 대상 메시지 각각의 처리량 및 각 마이크로 서버의 성능을 고려하여, 전체 서버 리소스를 설정할 수 있다. 예를 들어, 연산 대상 메시지가 100개이고, 전체 서버 리소스로 설정된 마이크로 서버의 개수가 2개이며, 제1 연산 대상 메시지 내지 제10 연산 대상 메시지 각각의 처리량이 많고, 제11 연산 대상 메시지 내지 제100 연산 대상 메시지 각각의 처리량이 적을 경우, 관리 서버는 제1 연산 대상 메시지 내지 제10 연산 대상 메시지에 대하여 제1 마이크로 서버가 처리하도록 설정하고, 제11 연산 대상 메시지 내지 제100 연산 대상 메시지에 대하여 제2 마이크로 서버가 처리하도록 설정할 수 있다.In addition, the management server may have different processing capacity for each operation target message, and each micro server may have different performance. Accordingly, the management server may set the entire server resource by considering the throughput of each operation target message and the performance of each micro server. For example, if the number of calculation target messages is 100, the number of micro servers set as the total server resources is 2, the throughput of each of the 1st calculation target message to the 10th calculation target message is large, and the 11th calculation target message to the 100th When the throughput of each operation target message is small, the management server configures the first micro server to process the 1st operation target message to the 10th operation target message, and processes the 11th operation target message to the 100th operation target message. 2 Micro Server can be set to process.

또한, 관리 서버는 연산 대상 메시지 각각의 처리량 및 각 마이크로 서버의 성능을 고려하여, 각 마이크로 서버가 대응하는 연산 대상 메시지들을 처리할 경우, 메시지 처리 요구 속도가 만족될 수 있는지 여부를 추정하고, 메시지 처리 요구 속도가 만족되지 않는 경우, 전체 서버 리소스를 재설정할 수 있다. 예를 들어, 메시지 처리 요구 속도가 초당 10개이고, 전체 서버 리소스로 설정된 마이크로 서버의 개수가 2개이며, 제1 마이크로 서버 및 제2 마이크로 서버가 각각 50개의 연산 대상 메시지를 처리하도록 설정된 경우, 제1 마이크로 서버 및 제2 마이크로 서버 각각에서 50개의 연산 대상 메시지를 5초 이내로 처리할 수 있는지 여부를 추정할 수 있다. 만약, 제1 마이크로 서버에서는 50개의 연산 대상 메시지를 4초에 처리하고, 제2 마이크로 서버에서는 50개의 연산 대상 메시지를 6초에 처리하는 것으로 추정된 경우, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버에 할당된 연산 대상 메시지의 개수를 조정할 수 있다.In addition, the management server estimates whether the required message processing speed can be satisfied when each micro server processes the corresponding operation target messages in consideration of the throughput of each operation target message and the performance of each micro server. If the processing request rate is not satisfied, the entire server resource can be reset. For example, if the message processing request rate is 10 per second, the number of micro servers set as the total server resources is 2, and the first micro server and the second micro server are set to process 50 operation target messages respectively, It may be estimated whether each of the 1 micro server and the 2 micro server can process 50 computation target messages within 5 seconds. If it is estimated that the 1st micro server processes 50 calculation target messages in 4 seconds and the 2nd micro server processes 50 calculation target messages in 6 seconds, the management server is the first micro server and the second micro server. You can adjust the number of operation target messages allocated to the micro server.

또한, 단계 S300에서, 관리 서버는 설정된 전체 서버 리소스를 기초로 연산 대상 메시지들을 처리하되, 연산 대상 메시지들이 모두 처리될 때까지, 소정의 주기마다 전체 서버 리소스를 재설정하여 연산 대상 메시지들을 처리할 수 있다. 즉, 단계 S200은 연산 대상 메시지들을 처리하기 위하여 전체 서버 리소스를 예측 및 설정하는 단계이고, 단계 S300은 전체 서버 리소스를 기초로 연산 대상 메시지들을 실제로 처리하는 단계일 수 있다.In addition, in step S300, the management server processes the operation target messages based on the entire set server resources, but resets the entire server resources at predetermined intervals until all the operation target messages are processed to process the operation target messages. there is. That is, step S200 may be a step of estimating and setting all server resources to process operation target messages, and step S300 may be a step of actually processing operation target messages based on all server resources.

관리 서버는 단계 S200에서 예측된 전체 서버 리소스에 따라 연산 대상 메시지들을 처리할 수 있다. 전술한 구체적인 예에서, 단계 S200에서 제1 메시지 큐의 메시지들을 처리하기 위하여 제1 기능이 제1 마이크로 서버 및 제2 마이크로 서버에서 구동되고, 제2 메시지 큐의 메시지들을 처리하기 위하여 제2 기능이 제1 마이크로 서버에서 구동되는 것으로 전체 서버 리소스가 설정될 수 있다. 관리 서버는 각 마이크로 서버에 할당된 연산 대상 메시지 및 각 마이크로 서버의 리소스를 확인하고, 전체 서버 리소스에 따라 각 마이크로 서버에서 기능을 수행하여 연산 대상 메시지를 처리할 수 있다.The management server may process operation target messages according to the total server resources predicted in step S200. In the above-described specific example, in step S200, the first function is driven in the first micro-server and the second micro-server to process the messages of the first message queue, and the second function is operated to process the messages of the second message queue. All server resources can be configured as being driven in the first micro server. The management server may check the operation target message assigned to each micro server and the resource of each micro server, and may process the operation target message by performing a function in each micro server according to the total server resources.

또한, 관리 서버는 소정 주기마다 전체 서버 리소스를 재설정할 수 있다. 예컨대, 소정 주기에 해당하는 시간 동안, 각 마이크로 서버에서는 연산 대상 메시지들을 처리할 수 있다. 관리 서버는 소정 주기에 해당하는 시간 이후에 각 마이크로 서버에 할당되었지만 미처리된 연산 대상 메시지들 및 각 마이크로 서버의 리소스를 확인하고, 확인된 정보를 기초로 전체 서버 리소스를 재설정할 수 있다.In addition, the management server may reset all server resources at predetermined intervals. For example, during a period of time corresponding to a predetermined period, each micro server may process computation target messages. After a time corresponding to a predetermined period, the management server may check the operation target messages assigned to each micro server but not processed and the resources of each micro server, and reset all server resources based on the checked information.

전술한 구체적인 예에서, 제1 마이크로 서버에서 제1 기능 및 제2 기능이 수행되고, 제2 마이크로 서버에서 제1 기능이 수행된 이후, 소정 주기에 해당하는 시간 이후, 관리 서버는 제1 서브 메시지 큐 및 제2 서브 메시지 큐에 잔존하는 메시지의 수를 확인하고, 제1 마이크로 서버 및 제2 마이크로 서버의 리소스를 확인할 수 있다. 또한, 관리 서버는 제1 기능이 제1 마이크로 서버 및 제2 마이크로 서버에서 함께 수행되고 제2 기능이 제1 마이크로 서버에서 제1 기능과 함께 수행됨에 따라 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가되는지 여부 및 메시지 처리 속도가 제1 서브 메시지 큐 제2 서브 메시지 큐의 메시지 처리 요구 속도에 부합하는지 여부도 함께 확인할 수 있다. 이 때, 아직 제1 서브 메시지 큐 및 제2 서브 메시지 큐에서 메시지들이 잔존하고, 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위 내로 증가하고, 메시지 처리 속도가 메시지 처리 요구 속도에 부합하는 경우, 관리 서버는 계속하여 제1 마이크로 서버에서 제1 기능 및 제2 기능을 수행되도록 제어하고, 제2 마이크로 서버에서 제1 기능이 수행되도록 전체 서버 리소스를 재설정하고 재설정된 전체 서버 리소스에 따라 제1 마이크로 서버 및 제2 마이크로 서버에서 메시지가 처리되도록 제어할 수 있다. 이후, 소정 주기에 해당하는 시간 이후, 관리 서버는 다시 제1 서브 메시지 큐 및 제2 서브 메시지 큐에 잔존하는 메시지의 수, 제1 마이크로 서버 및 제2 마이크로 서버의 리소스, 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위로 증가되는지 여부 및 메시지 처리 속도가 메시지 처리 요구 속도에 부합하는지 여부를 확인할 수 있다. 이 때, 제2 서브 메시지 큐에 잔존하는 메시지가 없고, 제1 서브 메시지 큐에 잔존하는 메시지만이 존재하는 경우, 관리 서버는 제1 마이크로 서버에서 제2 기능의 수행을 중단하고, 제1 마이크로 서버 및 제2 마이크로 서버에서 제1 기능이 수행되도록 전체 서버 리소스를 재설정하고, 재설정된 전체 서버 리소스에 따라 제1 마이크로 서버 및 제2 마이크로 서버에서 제1 서브 메시지 큐에 포함된 메시지가 처리되도록 제어할 수 있다. 이후, 소정 주기에 해당하는 시간 이후, 관리 서버는 다시 제1 서브 메시지 큐 및 제2 서브 메시지 큐에 잔존하는 메시지의 수, 제1 마이크로 서버 및 제2 마이크로 서버의 리소스, 증가되는 메시지 처리 성능이 제1 처리 성능 증가 범위로 증가되는지 여부 및 메시지 처리 속도가 메시지 처리 요구 속도에 부합하는지 여부를 확인할 수 있다. 이 때, 제1 서브 메시지 큐에 잔존하는 메시지가 없는 경우, 관리 서버는 제1 마이크로 서버 및 제2 마이크로 서버에서 제1 기능의 수행이 중단되도록 전체 서버 리소스를 재설정하고, 제1 마이크로 서버 및 제2 마이크로 서버에서 제1 기능이 수행되지 않도록 제어할 수 있다.In the above specific example, after the first function and the second function are performed in the first micro server and the first function is performed in the second micro server, after a time corresponding to a predetermined period, the management server sends the first sub-message. The number of messages remaining in the queue and the second sub-message queue may be checked, and resources of the first micro server and the second micro server may be checked. In addition, in the management server, as the first function is performed together in the first micro server and the second micro server, and the second function is performed together with the first function in the first micro server, the increased message processing performance increases the first processing performance. It can also be checked whether the increase is within the range and whether the message processing speed meets the required message processing speed of the first sub-message queue and the second sub-message queue. At this time, if messages still remain in the first sub-message queue and the second sub-message queue, the increased message processing performance increases within the first processing performance increase range, and the message processing rate meets the required message processing rate, The management server continuously controls the first micro server to perform the first function and the second function, resets all server resources so that the second micro server performs the first function, and resets all server resources to the first micro server according to the reset server resources. It is possible to control messages to be processed in the server and the second micro server. Thereafter, after a time corresponding to a predetermined period, the management server determines the number of messages remaining in the first sub-message queue and the second sub-message queue, the resources of the first micro-server and the second micro-server, and the increased message processing performance. It may be checked whether the processing performance is increased within the first increasing range and whether the message processing speed meets the required message processing speed. At this time, if there is no message remaining in the second sub-message queue and there are only messages remaining in the first sub-message queue, the management server stops performing the second function in the first micro-server, and the first micro-server stops performing the second function. All server resources are reset so that the first function is performed in the server and the second micro server, and messages included in the first sub message queue are processed in the first micro server and the second micro server according to the reset total server resources. can do. Thereafter, after a time corresponding to a predetermined period, the management server determines the number of messages remaining in the first sub-message queue and the second sub-message queue, the resources of the first micro-server and the second micro-server, and the increased message processing performance. It may be checked whether the processing performance is increased within the first increasing range and whether the message processing speed meets the required message processing speed. At this time, if there is no message remaining in the first sub-message queue, the management server resets all server resources so that the first micro server and the second micro server stop performing the first function, and the first micro server and the second micro server reset all server resources. 2 It is possible to control the first function not to be performed in the micro server.

이에 따라, 관리 서버는 연산 대상 메시지의 수, 증가되는 메시지 처리 성능이 소정 처리 성능 증가 범위로 증가되는지 여부 및 메시지 처리 속도가 메시지 처리 요구 속도에 부합하는지 여부를 고려하여, 기능이 수행되는 마이크로 서버를 설정하고, 기능의 수행 여부를 제어함으로써, 보다 효율적으로 연산 대상 메시지를 처리할 수 있다.Accordingly, the management server considers whether the number of messages to be operated, whether the increased message processing performance is increased to a predetermined processing performance increase range, and whether the message processing speed meets the required message processing speed, the micro server where the function is performed. By setting and controlling whether the function is performed, the operation target message can be processed more efficiently.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.

Claims (22)

마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버의 오토 스케일링 방법에 있어서,
연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하는 단계;
상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계; 및
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계
를 포함하고,
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는,
상기 설정된 전체 서버 리소스에서, 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하는 단계
를 포함하고,
상기 처리 리소스 함수는,
마이크로 서버의 개수가 증가함에 따라 증가하는 메시지 처리 성능이 소정의 제1 처리 성능 증가 범위내로 증가하다가 제1 임계 처리 성능으로 수렴하는 제1 처리 리소스 함수 또는 마이크로 서버의 개수가 증가함에 따라 증가하는 상기 메시지 처리 성능이 소정의 제2 처리 성능 증가 범위내로 증가하다가 제2 임계 처리 성능으로 수렴하는 제2 처리 리소스 함수를 포함하고,
상기 메시지 처리 성능이 상기 제2 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수가 상기 메시지 처리 성능이 상기 제1 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수보다 많고,
상기 제2 임계 처리 성능이 상기 제1 임계 처리 성능보다 높고,
상기 전체 서버 리소스를 설정하는 단계는,
상기 연산 대상 메시지들의 개수를 기초로 상기 연산 대상 메시지들을 상기 제1 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제1 메시지 처리 속도를 확인하고,
상기 제1 메시지 처리 속도가 상기 메시지 처리 요구 속도 보다 적은 경우, 상기 연산 대상 메시지들을 상기 제1 마이크로 서버 및 제2 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제2 메시지 처리 속도를 확인하고,
상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
In the auto scaling method of a management server that controls a plurality of micro servers that perform micro services,
checking the number of operation target messages and the message processing request speed at which the operation target messages are to be processed;
Setting total server resources for processing the computational target messages based on a processing resource function defining an improvement in message processing performance according to an increase in the number of computational target messages, the message processing request speed, and the number of micro servers. ; and
processing the operation target messages according to the total server resources;
including,
The step of processing the operation target messages according to the total server resources,
In the set total server resources, if it is set that the first micro-server among the plurality of micro-servers processes the computational target messages, based on the number of unprocessed computational target messages and the resources of the first micro-server per predetermined period , resetting all server resources for processing the unprocessed operation target messages in the first micro server.
including,
The processing resource function,
As the number of micro servers increases, the message processing performance increases within a predetermined first processing performance increase range and then converges to a first threshold processing performance. A second processing resource function in which message processing performance increases within a predetermined second processing capability increase range and then converges to a second threshold processing capability;
The number of micro servers in a section where the message processing performance increases to the second processing performance increase range is greater than the number of micro servers in a section where the message processing performance increases to the first processing performance increase range,
the second threshold processing performance is higher than the first threshold processing performance;
The step of setting the entire server resource,
Checking a first message processing speed indicating a speed at which the computational target messages are processed when the first micro-server processes the computational target messages based on the number of the computational target messages;
When the first message processing speed is less than the required message processing speed, the second message processing indicates the speed at which the operation target messages are processed when the first micro server and the second micro server process the operation target messages. check the speed,
Setting the total server resources by processing the operation target messages in the first micro server and the second micro server when the second message processing speed is equal to or greater than the required message processing speed.
Auto scaling method of management server.
제1항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 연산 대상 메시지들의 종류에 따라 상기 연산 대상 메시지들 중 제1 연산 대상 메시지들이 제1 서브 메시지 큐에 저장되고, 상기 연산 대상 메시지들 중 제2 연산 대상 메시지들이 제2 서브 메시지 큐에 저장되고, 상기 제1 서브 메시지 큐에 저장된 제1 연산 대상 메시지들의 처리를 위해 제1 기능이 수행되고, 상기 제2 서브 메시지 큐에 저장된 상기 제2 연산 대상 메시지들의 처리를 위해 제2 기능이 수행되는 경우,
상기 제1 연산 대상 메시지들의 개수, 상기 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 제2 연산 대상 메시지들의 개수, 상기 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 복수의 마이크로 서버 중 상기 제1 기능이 수행되어야 하는 마이크로 서버 및 상기 제2 기능이 수행되어야 하는 마이크로 서버를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 1,
The step of setting the entire server resource,
According to the type of the operation target messages, first operation target messages among the operation target messages are stored in a first sub-message queue, and second operation target messages among the operation target messages are stored in a second sub-message queue; When a first function is performed to process the first operation target messages stored in the first sub-message queue and a second function is performed to process the second operation target messages stored in the second sub-message queue;
The number of first operation target messages, the first message processing request rate at which the first operation target message should be processed, the number of second operation target messages, and the second message processing request at which the second operation target message should be processed Based on the speed and the processing resource function, setting a micro server on which the first function is to be performed and a micro server on which the second function is to be performed among the plurality of micro servers,
Auto scaling method of management server.
삭제delete 삭제delete 제1항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우,
상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고,
상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 1,
The step of setting the entire server resource,
When the processing resource function is the first processing resource function and the second message processing rate is equal to or greater than the required message processing rate,
Check whether message processing performance, which increases as the second micro server processes the operation target messages together with the first micro server, increases within the first processing performance range;
When the message processing performance increases within the first processing performance range, setting the total server resources by processing the operation target messages in the first micro server and the second micro server.
Auto scaling method of management server.
제1항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우,
상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고,
상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하지 않는 경우, 상기 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하고, 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하지 않는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 1,
The step of setting the entire server resource,
When the processing resource function is the first processing resource function and the second message processing rate is equal to or greater than the required message processing rate,
Check whether message processing performance, which increases as the second micro server processes the operation target messages together with the first micro server, increases within the first processing performance range;
When the message processing performance does not increase within the first processing performance range, the first micro server processes the operation target messages, and the second micro server does not process the operation target messages, thereby reducing the total server resources. to set,
Auto scaling method of management server.
제2항에 있어서,
상기 전체 서버 리소스를 설정하는 단계에서, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 상기 전체 서버 리소스가 설정된 경우,
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는,
상기 소정 주기에 대응하는 시간 동안, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되도록 제어하는,
관리 서버의 오토 스케일링 방법.
According to claim 2,
In the step of setting the total server resources, if the total server resources are set such that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server,
The step of processing the operation target messages according to the total server resources,
Controlling that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server for a time corresponding to the predetermined period,
Auto scaling method of management server.
제7항에 있어서,
상기 전체 서버 리소스를 재설정하는 단계는,
상기 소정 주기에 대응하는 시간 이후에,
상기 제1 서브 메시지 큐에 포함된 미처리된 제1 연산 대상 메시지의 개수 및 상기 제1 서브 메시지 큐에 포함된 미처리된 제2 연산 대상 메시지의 개수를 확인하고,
상기 미처리된 제1 연산 대상 메시지들의 개수, 상기 미처리된 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 미처리된 제2 연산 대상 메시지들의 개수, 상기 미처리된 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되어야 하는지 여부를 결정하고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되어야 하는지 여부를 결정하여 상기 전체 서버 리소스를 재설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 7,
The step of resetting the entire server resource,
After a time corresponding to the predetermined period,
Checking the number of unprocessed first operation target messages included in the first sub-message queue and the number of unprocessed second operation target messages included in the first sub-message queue;
The number of unprocessed first operation target messages, the first message processing request rate at which the unprocessed first operation target messages must be processed, the number of unprocessed second operation target messages, and the unprocessed second operation target messages It is determined whether the first function and the second function are to be performed in the first micro-server based on a second message processing request rate to be processed and the processing resource function, and the second micro-server determines the second function to be performed. 1 resetting the entire server resource by determining whether a function should be performed;
Auto scaling method of management server.
제8항에 있어서,
상기 전체 서버 리소스를 재설정하는 단계는,
상기 미처리된 제1 연산 대상 메시지가 존재하고, 상기 미처리된 제2 연산 대상 메시지가 존재하지 않는 경우,
상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 결정하고, 상기 제1 마이크로 서버에서 상기 제2 기능이 수행되지 않는 것으로 상기 전체 서버 리소스를 재설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 8,
The step of resetting the entire server resource,
When the unprocessed first operation target message exists and the unprocessed second operation target message does not exist,
Determining that the first function is performed in the first micro server and the second micro server, and resetting the entire server resources so that the second function is not performed in the first micro server,
Auto scaling method of management server.
제1항에 있어서,
상기 마이크로 서비스는,
위탁 판매를 위하여 상기 관리 서버에서 수행되는 복수의 단위업무 중 어느 하나인,
관리 서버의 오토 스케일링 방법.
According to claim 1,
The microservice,
Any one of a plurality of unit tasks performed in the management server for consignment sales,
Auto scaling method of management server.
삭제delete 마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버에 있어서,
제어부를 포함하고,
상기 제어부는,
연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하고, 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하되,
상기 전체 서버 리소스에 따라 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하고,
상기 처리 리소스 함수는,
마이크로 서버의 개수가 증가함에 따라 증가하는 메시지 처리 성능이 소정의 제1 처리 성능 증가 범위내로 증가하다가 제1 임계 처리 성능으로 수렴하는 제1 처리 리소스 함수 또는 마이크로 서버의 개수가 증가함에 따라 증가하는 상기 메시지 처리 성능이 소정의 제2 처리 성능 증가 범위내로 증가하다가 제2 임계 처리 성능으로 수렴하는 제2 처리 리소스 함수를 포함하고,
상기 메시지 처리 성능이 상기 제2 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수가 상기 메시지 처리 성능이 상기 제1 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수보다 많고,
상기 제2 임계 처리 성능이 상기 제1 임계 처리 성능보다 높고,
상기 제어부는,
상기 연산 대상 메시지들의 개수를 기초로 상기 연산 대상 메시지들을 상기 제1 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제1 메시지 처리 속도를 확인하고,
상기 제1 메시지 처리 속도가 상기 메시지 처리 요구 속도 보다 적은 경우, 상기 연산 대상 메시지들을 상기 제1 마이크로 서버 및 제2 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제2 메시지 처리 속도를 확인하고,
상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버.
In the management server that controls a plurality of micro servers that perform micro services,
Including a control unit,
The control unit,
The number of operation target messages and the message processing request speed at which the operation target messages must be processed are confirmed, and the improvement of message processing performance according to the increase in the number of operation target messages, the message processing request speed, and the number of micro servers is defined. Setting total server resources for processing the operation target messages based on a processing resource function to process the operation target messages according to the total server resources,
If it is set to process the operation target messages in a first micro server among the plurality of micro servers according to the total server resources, based on the number of unprocessed operation target messages and the resources of the first micro server, , resetting the entire server resources for processing the unprocessed operation target messages in the first micro server,
The processing resource function,
As the number of micro servers increases, the message processing performance increases within a predetermined first processing performance increase range and then converges to a first threshold processing performance. A second processing resource function in which message processing performance increases within a predetermined second processing capability increase range and then converges to a second threshold processing capability;
The number of micro servers in a section where the message processing performance increases to the second processing performance increase range is greater than the number of micro servers in a section where the message processing performance increases to the first processing performance increase range,
the second threshold processing performance is higher than the first threshold processing performance;
The control unit,
Checking a first message processing speed indicating a speed at which the computational target messages are processed when the first micro-server processes the computational target messages based on the number of the computational target messages;
When the first message processing speed is less than the required message processing speed, the second message processing indicates the speed at which the operation target messages are processed when the first micro server and the second micro server process the operation target messages. check your speed,
Setting the total server resources by processing the operation target messages in the first micro server and the second micro server when the second message processing speed is equal to or greater than the required message processing speed.
management server.
마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버의 오토 스케일링 방법에 있어서,
연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하는 단계;
상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하는 단계; 및
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계
를 포함하고,
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는,
상기 설정된 전체 서버 리소스에서, 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하는 단계
를 포함하고,
상기 전체 서버 리소스를 설정하는 단계는,
상기 연산 대상 메시지들의 종류에 따라 상기 연산 대상 메시지들 중 제1 연산 대상 메시지들이 제1 서브 메시지 큐에 저장되고, 상기 연산 대상 메시지들 중 제2 연산 대상 메시지들이 제2 서브 메시지 큐에 저장되고, 상기 제1 서브 메시지 큐에 저장된 제1 연산 대상 메시지들의 처리를 위해 제1 기능이 수행되고, 상기 제2 서브 메시지 큐에 저장된 상기 제2 연산 대상 메시지들의 처리를 위해 제2 기능이 수행되는 경우,
상기 제1 연산 대상 메시지들의 개수, 상기 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 제2 연산 대상 메시지들의 개수, 상기 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 복수의 마이크로 서버 중 상기 제1 기능이 수행되어야 하는 마이크로 서버 및 상기 제2 기능이 수행되어야 하는 마이크로 서버를 설정하고,
상기 전체 서버 리소스를 설정하는 단계에서, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 상기 전체 서버 리소스가 설정된 경우,
상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하는 단계는,
상기 소정 주기에 대응하는 시간 동안, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되도록 제어하는,
관리 서버의 오토 스케일링 방법.
In the auto scaling method of a management server that controls a plurality of micro servers that perform micro services,
checking the number of operation target messages and the message processing request speed at which the operation target messages are to be processed;
Setting total server resources for processing the computational target messages based on a processing resource function defining an improvement in message processing performance according to an increase in the number of computational target messages, the message processing request speed, and the number of micro servers. ; and
processing the operation target messages according to the total server resources;
including,
The step of processing the operation target messages according to the total server resources,
In the set total server resources, if it is set that the first micro-server among the plurality of micro-servers processes the computational target messages, based on the number of unprocessed computational target messages and the resources of the first micro-server per predetermined period , resetting all server resources for processing the unprocessed operation target messages in the first micro server.
including,
The step of setting the entire server resource,
According to the type of the operation target messages, first operation target messages among the operation target messages are stored in a first sub-message queue, and second operation target messages among the operation target messages are stored in a second sub-message queue; When a first function is performed to process the first operation target messages stored in the first sub-message queue and a second function is performed to process the second operation target messages stored in the second sub-message queue;
The number of first operation target messages, the first message processing request rate at which the first operation target message should be processed, the number of second operation target messages, and the second message processing request at which the second operation target message should be processed Based on the speed and the processing resource function, setting a micro server on which the first function is to be performed and a micro server on which the second function is to be performed among the plurality of micro servers;
In the step of setting the total server resources, if the total server resources are set such that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server,
The step of processing the operation target messages according to the total server resources,
Controlling that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server for a time corresponding to the predetermined period,
Auto scaling method of management server.
제13항에 있어서,
상기 처리 리소스 함수는,
마이크로 서버의 개수가 증가함에 따라 증가하는 메시지 처리 성능이 소정의 제1 처리 성능 증가 범위내로 증가하다가 제1 임계 처리 성능으로 수렴하는 제1 처리 리소스 함수 또는 마이크로 서버의 개수가 증가함에 따라 증가하는 상기 메시지 처리 성능이 소정의 제2 처리 성능 증가 범위내로 증가하다가 제2 임계 처리 성능으로 수렴하는 제2 처리 리소스 함수를 포함하고,
상기 메시지 처리 성능이 상기 제2 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수가 상기 메시지 처리 성능이 상기 제1 처리 성능 증가 범위로 증가하는 구간에서의 마이크로 서버의 개수보다 많고,
상기 제2 임계 처리 성능이 상기 제1 임계 처리 성능보다 높은,
관리 서버의 오토 스케일링 방법.
According to claim 13,
The processing resource function,
As the number of micro servers increases, the message processing performance increases within a predetermined first processing performance increase range and then converges to a first threshold processing performance. A second processing resource function in which message processing performance increases within a predetermined second processing capability increase range and then converges to a second threshold processing capability;
The number of micro servers in a section where the message processing performance increases to the second processing performance increase range is greater than the number of micro servers in a section where the message processing performance increases to the first processing performance increase range,
The second threshold processing performance is higher than the first threshold processing performance,
Auto scaling method of management server.
제14항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 연산 대상 메시지들의 개수를 기초로 상기 연산 대상 메시지들을 상기 제1 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제1 메시지 처리 속도를 확인하고,
상기 제1 메시지 처리 속도가 상기 메시지 처리 요구 속도 보다 적은 경우, 상기 연산 대상 메시지들을 상기 제1 마이크로 서버 및 제2 마이크로 서버가 처리할 경우의 상기 연산 대상 메시지들이 처리되는 속도를 나타내는 제2 메시지 처리 속도를 확인하고,
상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 14,
The step of setting the entire server resource,
Checking a first message processing speed indicating a speed at which the computational target messages are processed when the first micro-server processes the computational target messages based on the number of the computational target messages;
When the first message processing speed is less than the required message processing speed, the second message processing indicates the speed at which the operation target messages are processed when the first micro server and the second micro server process the operation target messages. check your speed,
Setting the total server resources by processing the operation target messages in the first micro server and the second micro server when the second message processing speed is equal to or greater than the required message processing speed.
Auto scaling method of management server.
제15항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우,
상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고,
상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는 경우, 상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 15,
The step of setting the entire server resource,
When the processing resource function is the first processing resource function and the second message processing rate is equal to or greater than the required message processing rate,
Check whether message processing performance, which increases as the second micro server processes the operation target messages together with the first micro server, increases within the first processing performance range;
When the message processing performance increases within the first processing performance range, setting the total server resources by processing the operation target messages in the first micro server and the second micro server.
Auto scaling method of management server.
제15항에 있어서,
상기 전체 서버 리소스를 설정하는 단계는,
상기 처리 리소스 함수가 상기 제1 처리 리소스 함수이고, 상기 제2 메시지 처리 속도가 상기 메시지 처리 요구 속도 이상인 경우,
상기 제1 마이크로 서버와 함께 상기 제2 마이크로 서버가 상기 연산 대상 메시지들을 처리함에 따라 증가하는 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하는지 여부를 확인하고,
상기 메시지 처리 성능이 상기 제1 처리 성능 범위내로 증가하지 않는 경우, 상기 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하고, 상기 제2 마이크로 서버에서 상기 연산 대상 메시지들을 처리하지 않는 것으로 상기 전체 서버 리소스를 설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 15,
The step of setting the entire server resource,
When the processing resource function is the first processing resource function and the second message processing rate is equal to or greater than the required message processing rate,
Check whether message processing performance, which increases as the second micro server processes the operation target messages together with the first micro server, increases within the first processing performance range;
When the message processing performance does not increase within the first processing performance range, the first micro server processes the operation target messages, and the second micro server does not process the operation target messages, thereby reducing the total server resources. to set,
Auto scaling method of management server.
제13항에 있어서,
상기 전체 서버 리소스를 재설정하는 단계는,
상기 소정 주기에 대응하는 시간 이후에,
상기 제1 서브 메시지 큐에 포함된 미처리된 제1 연산 대상 메시지의 개수 및 상기 제1 서브 메시지 큐에 포함된 미처리된 제2 연산 대상 메시지의 개수를 확인하고,
상기 미처리된 제1 연산 대상 메시지들의 개수, 상기 미처리된 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 미처리된 제2 연산 대상 메시지들의 개수, 상기 미처리된 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되어야 하는지 여부를 결정하고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되어야 하는지 여부를 결정하여 상기 전체 서버 리소스를 재설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 13,
The step of resetting the entire server resource,
After a time corresponding to the predetermined period,
Checking the number of unprocessed first operation target messages included in the first sub-message queue and the number of unprocessed second operation target messages included in the first sub-message queue;
The number of unprocessed first operation target messages, the first message processing request rate at which the unprocessed first operation target messages must be processed, the number of unprocessed second operation target messages, and the unprocessed second operation target messages It is determined whether the first function and the second function are to be performed in the first micro-server based on a second message processing request rate to be processed and the processing resource function, and the second micro-server determines the second function to be performed. 1 resetting the entire server resource by determining whether a function should be performed;
Auto scaling method of management server.
제18항에 있어서,
상기 전체 서버 리소스를 재설정하는 단계는,
상기 미처리된 제1 연산 대상 메시지가 존재하고, 상기 미처리된 제2 연산 대상 메시지가 존재하지 않는 경우,
상기 제1 마이크로 서버 및 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 결정하고, 상기 제1 마이크로 서버에서 상기 제2 기능이 수행되지 않는 것으로 상기 전체 서버 리소스를 재설정하는,
관리 서버의 오토 스케일링 방법.
According to claim 18,
The step of resetting the entire server resource,
When the unprocessed first operation target message exists and the unprocessed second operation target message does not exist,
Determining that the first function is performed in the first micro server and the second micro server, and resetting the entire server resources so that the second function is not performed in the first micro server,
Auto scaling method of management server.
제13항에 있어서,
상기 마이크로 서비스는,
위탁 판매를 위하여 상기 관리 서버에서 수행되는 복수의 단위업무 중 어느 하나인,
관리 서버의 오토 스케일링 방법.
According to claim 13,
The microservice,
Any one of a plurality of unit tasks performed in the management server for consignment sales,
Auto scaling method of management server.
제1항, 제2항, 제5항 내지 제10항 및 제13항 내지 제20항 중 어느 하나의 항에 기재된 방법을 실행시키는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
Claims 1, 2, 5 to 10, and 13 to 20, wherein any one of the method according to claim 20, a computer-readable recording medium recorded with a program for executing the method.
마이크로 서비스를 수행하는 복수의 마이크로 서버를 제어하는 관리 서버에 있어서,
제어부를 포함하고,
상기 제어부는,
연산 대상 메시지들의 개수 및 상기 연산 대상 메시지들이 처리되어야 하는 메시지 처리 요구 속도를 확인하고, 상기 연산 대상 메시지들의 개수, 상기 메시지 처리 요구 속도 및 마이크로 서버의 개수의 증가에 따른 메시지 처리 성능의 향상을 정의하는 처리 리소스 함수를 기초로 상기 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 설정하고, 상기 전체 서버 리소스에 따라 상기 연산 대상 메시지들을 처리하되,
상기 전체 서버 리소스에 따라 상기 복수의 마이크로 서버 중 제1 마이크로 서버에서 상기 연산 대상 메시지들을 처리하는 것으로 설정된 경우, 소정 주기 마다, 미처리된 연산 대상 메시지들의 개수 및 상기 제1 마이크로 서버의 리소스를 기초로, 상기 제1 마이크로 서버에서 상기 미처리된 연산 대상 메시지들을 처리하기 위한 전체 서버 리소스를 재설정하고,
상기 제어부는,
상기 연산 대상 메시지들의 종류에 따라 상기 연산 대상 메시지들 중 제1 연산 대상 메시지들이 제1 서브 메시지 큐에 저장되고, 상기 연산 대상 메시지들 중 제2 연산 대상 메시지들이 제2 서브 메시지 큐에 저장되고, 상기 제1 서브 메시지 큐에 저장된 제1 연산 대상 메시지들의 처리를 위해 제1 기능이 수행되고, 상기 제2 서브 메시지 큐에 저장된 상기 제2 연산 대상 메시지들의 처리를 위해 제2 기능이 수행되는 경우,
상기 제1 연산 대상 메시지들의 개수, 상기 제1 연산 대상 메시지가 처리되어야 하는 제1 메시지 처리 요구 속도, 상기 제2 연산 대상 메시지들의 개수, 상기 제2 연산 대상 메시지가 처리되어야 하는 제2 메시지 처리 요구 속도 및 상기 처리 리소스 함수를 기초로, 상기 복수의 마이크로 서버 중 상기 제1 기능이 수행되어야 하는 마이크로 서버 및 상기 제2 기능이 수행되어야 하는 마이크로 서버를 설정하고,
상기 전체 서버 리소스를 설정하는 단계에서, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 제2 마이크로 서버에서 상기 제1 기능이 수행되는 것으로 상기 전체 서버 리소스가 설정된 경우,
상기 소정 주기에 대응하는 시간 동안, 상기 제1 마이크로 서버에서 상기 제1 기능 및 상기 제2 기능이 수행되고, 상기 제2 마이크로 서버에서 상기 제1 기능이 수행되도록 제어하는,
관리 서버.
In the management server that controls a plurality of micro servers that perform micro services,
Including a control unit,
The control unit,
The number of operation target messages and the message processing request speed at which the operation target messages must be processed are confirmed, and the improvement of message processing performance according to the increase in the number of operation target messages, the message processing request speed, and the number of micro servers is defined. Setting total server resources for processing the operation target messages based on a processing resource function to process the operation target messages according to the total server resources,
If it is set to process the operation target messages in a first micro server among the plurality of micro servers according to the total server resources, based on the number of unprocessed operation target messages and the resources of the first micro server, , resetting the entire server resources for processing the unprocessed operation target messages in the first micro server,
The control unit,
According to the type of the operation target messages, first operation target messages among the operation target messages are stored in a first sub-message queue, and second operation target messages among the operation target messages are stored in a second sub-message queue; When a first function is performed to process the first operation target messages stored in the first sub-message queue and a second function is performed to process the second operation target messages stored in the second sub-message queue;
The number of first operation target messages, the first message processing request rate at which the first operation target message should be processed, the number of second operation target messages, and the second message processing request at which the second operation target message should be processed Based on the speed and the processing resource function, setting a micro server on which the first function is to be performed and a micro server on which the second function is to be performed among the plurality of micro servers;
In the step of setting the total server resources, if the total server resources are set such that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server,
Controlling that the first function and the second function are performed in the first micro server and the first function is performed in the second micro server for a time corresponding to the predetermined period,
management server.
KR1020220002939A 2022-01-07 2022-01-07 Method for auto scalinig of managing server for consignment sales KR102537906B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220002939A KR102537906B1 (en) 2022-01-07 2022-01-07 Method for auto scalinig of managing server for consignment sales

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220002939A KR102537906B1 (en) 2022-01-07 2022-01-07 Method for auto scalinig of managing server for consignment sales

Publications (1)

Publication Number Publication Date
KR102537906B1 true KR102537906B1 (en) 2023-05-30

Family

ID=86529667

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220002939A KR102537906B1 (en) 2022-01-07 2022-01-07 Method for auto scalinig of managing server for consignment sales

Country Status (1)

Country Link
KR (1) KR102537906B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120063499A (en) * 2009-09-30 2012-06-15 알까뗄 루슨트 Dynamic load balancing and scaling of allocated cloud resources in an enterprise network
KR20160073306A (en) * 2014-12-16 2016-06-24 캐논 가부시끼가이샤 Management system and method for controlling management system
KR20170062235A (en) * 2015-11-27 2017-06-07 삼성에스디에스 주식회사 System and method for processing service
KR20190016895A (en) * 2017-08-09 2019-02-19 삼성전자주식회사 System for providing Function as a service and operating method for the same
KR102024164B1 (en) * 2017-02-14 2019-09-23 권오현 Method and apparatus for automaticgeneration of auto scaling call rulefor individual tenant in multi-tenancy environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120063499A (en) * 2009-09-30 2012-06-15 알까뗄 루슨트 Dynamic load balancing and scaling of allocated cloud resources in an enterprise network
KR20160073306A (en) * 2014-12-16 2016-06-24 캐논 가부시끼가이샤 Management system and method for controlling management system
KR20170062235A (en) * 2015-11-27 2017-06-07 삼성에스디에스 주식회사 System and method for processing service
KR102024164B1 (en) * 2017-02-14 2019-09-23 권오현 Method and apparatus for automaticgeneration of auto scaling call rulefor individual tenant in multi-tenancy environment
KR20190016895A (en) * 2017-08-09 2019-02-19 삼성전자주식회사 System for providing Function as a service and operating method for the same

Similar Documents

Publication Publication Date Title
Lederer et al. Pricing, production, scheduling, and delivery-time competition
US20070011052A1 (en) Method and apparatus for joint pricing and resource allocation under service-level agreement
US20220083954A1 (en) Methods and systems for real-time inventory reallocation from supplier to retailer
US8175906B2 (en) Integrating performance, sizing, and provisioning techniques with a business process
US11635757B2 (en) Methods and apparatus for controlling autonomous vehicles
US20210256445A1 (en) System and method for matching resource capacity with client resource needs
US20140278723A1 (en) Methods and systems for predicting workflow preferences
US9639875B1 (en) Reconfiguring reserved instance marketplace offerings for requested reserved instance configurations
KR102537906B1 (en) Method for auto scalinig of managing server for consignment sales
US10853833B2 (en) System and method for special event high volume commerce experience and deals management
US20220351107A1 (en) Automated request fulfilment processing
US20150058068A1 (en) Methods and systems for managing suppliers and flow of goods on an ecommerce platform
US10438217B1 (en) Estimating an output based on robustness associated with multiple input variables
US11822959B2 (en) Methods and systems for processing requests using load-dependent throttling
KR102537902B1 (en) Method for managing consignment sales and device using the same
US11599860B2 (en) Limit purchase price by stock keeping unit (SKU)
US11893614B2 (en) Systems and methods for balancing online stores across servers
US20230297413A1 (en) Dual stage bulkheads
US20230306440A1 (en) Systems and methods for real-time processing of product orders
US11769151B2 (en) Methods and systems for rate-limiting control of transaction processing
US20230359984A1 (en) Methods and systems for inventory management for blockchain-based transactions
US20240012866A1 (en) Queuing analytics events before consent
US10728167B2 (en) Interrupt distribution of a single flow across multiple processors
KR20230157092A (en) Shopping platform management system and method based on consumer big data
KR20230147921A (en) Method, device and system of controlling a platform that provides moving services in a reverse auction method based on big data

Legal Events

Date Code Title Description
GRNT Written decision to grant