Digital service-based flow control server, method and system

The digital service-based flow control server prioritizes API requests based on call identifiers and server status to manage API traffic efficiently, addressing response delays and improving user satisfaction in content service systems.

JP2026502992APending Publication Date: 2026-01-27STCLAB CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2025538860
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-12-30
Filing Date
2023-12-27
Publication Date
2026-01-27

AI Technical Summary

Technical Problem

The increasing number of simultaneous user connections to service servers for content services leads to response speed slowdowns and interruptions, with existing systems struggling to manage API request signals efficiently, potentially causing user dissatisfaction.

Method used

A digital service-based flow control server that determines priorities for API request servers based on call identifiers, frequency, and service server status, ensuring higher priority for requests from the service server's own applications and adjusting priorities based on predefined criteria.

Benefits of technology

This approach efficiently manages API traffic flow by prioritizing responses, enhancing user satisfaction by minimizing response delays and optimizing server operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026502992000001_ABST
    Figure 2026502992000001_ABST
Patent Text Reader

Abstract

The present disclosure relates to a digital service-based flow control server, method, and system that can efficiently manage API (Application Programming Interface) flow by assigning response priorities to API call subjects.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a method for controlling flow rates in response to API requests, and more particularly to a digital service-based flow control server, method, and system. [Background technology]

[0002] As the number of users simultaneously connecting to service servers that provide content services such as course registration, concert reservations, and event purchases increases, the response speed of the servers providing the content services often slows down and the services are often interrupted.

[0003] The system may consist of a WEB that provides pages written in HTML (HyperText Markup Language), a WAS (Web Application Server) that processes application program services in response to request messages transmitted from the WEB, and a database that stores data that can be provided in response to query statements.

[0004] The above-mentioned system includes an API (Application Programming Interface) and can cooperate with a plurality of servers that relay content services provided by the system.

[0005] Furthermore, there is a possibility that request signals related to content services may be generated simultaneously from the plurality of servers, and if responses to these signals cannot be handled smoothly, end users may become dissatisfied. Summary of the Invention [Problem to be solved by the invention]

[0006] The embodiments presented in this disclosure aim to provide a digital service-based flow control server, method, and system that can efficiently manage API (Application Programming Interface) flow by assigning response priorities to API callers.

[0007] The problems to be solved by the present disclosure are not limited to those mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description. [Means for solving the problem]

[0008] A digital service-based flow control server according to the present disclosure for achieving the above-described technical objectives includes a communication unit and a processor connected to the communication unit for controlling API flow, wherein the processor cooperates with a service server that provides a specific content service to receive request signals from multiple API request servers that relay the specific content service, determines priorities of the multiple API request servers that transmit response signals to the request signals, changes, for each of the multiple API request servers, a first priority determined based on the request signal to a second priority based on a status of the service server, transmits the request signals of the multiple API request servers to the service server in accordance with the second priority, determines the first priority based on a call identifier included in the request signal and the frequency of the request signal, and determines, among the multiple API request servers based on the call identifier, the request signal of an API request server that corresponds to the service server's own application that provides the specific content service via its own API as the highest priority, and for the remaining API request servers, determines the priority in descending order of frequency.

[0009] Furthermore, a digital service-based flow control system according to the present disclosure for achieving the above-mentioned technical objectives includes a service server that provides a specific content service, a plurality of API request servers that generate request signals related to the specific content service, and a flow control server that receives the request signals from the plurality of API request servers, determines the priorities of the plurality of API request servers that transmit response signals to the request signals, and changes, for each of the plurality of API request servers, the first priority determined based on the request signals to a second priority based on the status of the service server, wherein the flow control server determines the first priority based on a call identifier included in the request signals and the frequency of the request signals, and, based on the call identifier, determines the request signal of an API request server that corresponds to an application of the service server itself that provides the specific content service via the API of the service server itself as the highest priority, and for the remaining API request servers, determines the priority in descending order of frequency.

[0010] Furthermore, a digital service-based flow control method according to the present disclosure for achieving the above-described technical objectives, which is executed by a flow control server, includes the steps of receiving request signals from a plurality of API request servers linked with a service server that provides a specific content service; determining priorities of the plurality of API request servers that transmit response signals to the plurality of API request servers, and for each of the plurality of API request servers, changing the first priority determined based on the request signals to a second priority based on the status of the service server; and transmitting the request signals of the plurality of API request servers to the service server according to the second priority, wherein the first priority is determined based on a call identifier included in the request signals and the frequency of the request signals, and the request signal of the API request server corresponding to the application of the service server that provides the specific content service via its own API, among the plurality of API request servers, may be determined as the highest priority based on the call identifier, and the request signals of the API request server corresponding to the application of the service server that provides the specific content service via its own API may be determined as the highest priority, and the remaining API request servers may be determined as higher priorities in descending order of frequency.

[0011] In addition, a computer program stored on a computer-readable recording medium for executing a method for realizing the present disclosure may also be provided.

[0012] In addition, a computer-readable recording medium having a computer program for executing the method for realizing the present disclosure recorded thereon may also be provided. [Effects of the Invention]

[0013] According to the above-described means for solving the problems of the present disclosure, it is expected that the effect of efficiently managing API traffic flow can be achieved by assigning a priority order to responses to entities that call APIs (Application Programming Interfaces).

[0014] Furthermore, according to the above-described problem-solving means of the present disclosure, a response to an API call is made taking into consideration not only the priority of the response from the API caller but also the status of the service server, thereby enabling more efficient API flow control, which is expected to have the effect of increasing satisfaction among end users who use content services.

[0015] The effects of the present disclosure are not limited to the effects described above, and other effects not described will also be clearly understood by those skilled in the art from the following description. [Brief explanation of the drawings]

[0016] [Figure 1] 1 is a diagram illustrating a configuration of an API flow control system according to the present disclosure. [Figure 2] FIG. 2 is a block diagram showing the configuration of a flow control server according to the present disclosure. [Figure 3] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 4] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 5] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 6] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 7] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 8] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 9] FIG. 2 is an exemplary diagram illustrating an API flow control method according to the present disclosure. [Figure 10] 1 is a flowchart illustrating a flow rate control method according to the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0017] The same reference numerals refer to the same components throughout this disclosure. This disclosure does not describe all elements of the embodiments, and descriptions of matters well known in the art and overlapping content between embodiments will be omitted. Terms such as "unit," "module," "component," and "block" used in this specification may be implemented by software or hardware, and in some embodiments, multiple "units," "modules," "components," and "blocks" may be implemented as a single component, or one "unit," "module," "component," or "block" may include multiple components.

[0018] Throughout this specification, when a part is described as being "connected" to another part, this includes not only a direct connection but also an indirect connection, and an indirect connection also includes a connection via a wireless communication network.

[0019] Furthermore, when a part is described as "comprising" a certain component, unless otherwise specified, it does not exclude other components, but means that it may further include other components.

[0020] Throughout this specification, when an element is described as being "on" another element, this includes not only when the element is positioned adjacent to the other element, but also when there is another element between them.

[0021] Terms such as "first" and "second" are used to distinguish one component from another, and the components are not limited to the terms mentioned above.

[0022] Any reference to the singular shall include the plural unless the context clearly indicates otherwise.

[0023] The identification numbers assigned to the steps are used for convenience of description and do not indicate the order of the steps, and the steps may be performed in an order different from that described unless the context clearly dictates a particular order.

[0024] Hereinafter, the working principle and embodiments of the present disclosure will be described with reference to the accompanying drawings.

[0025] In this specification, the term "API flow control server according to the present disclosure" includes various devices that can execute computations and provide results to users. For example, the API flow control server according to the present disclosure may include all of a computer, a server device, and a mobile terminal, or may be in the form of any one of them.

[0026] Here, the computer may include, for example, a notebook computer, a desktop computer, a laptop computer, a tablet PC, a slate PC, or the like equipped with a web browser.

[0027] The server device is a server that communicates with external devices and processes information, and may include an application server, a computing server, a database server, a file server, a game server, a mail server, a proxy server, a web server, and the like.

[0028] The mobile terminal is, for example, a wireless communication device that ensures portability and mobility, and may include all kinds of handheld wireless communication devices such as PCS (Personal Communication System), GSM (Global System for Mobile Communications), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), WiBro (Wireless Broadband Internet) terminals, and smartphones, as well as wearable devices such as watches, rings, bracelets, anklets, necklaces, glasses, contact lenses, or head-mounted devices (HMDs).

[0029] FIG. 1 is a diagram showing the configuration of an API flow control system according to the present disclosure.

[0030] 1, the API flow control system may include a flow control server 100, a service server 200, and an API request server 300. As shown in the figure, there may be multiple API request servers 300.

[0031] The service server 200 may be configured to provide a particular content service.

[0032] For example, the service server 200 may be configured to provide a content service for reserving accommodations such as hotels related to travel (e.g., a Booking.com server). Such content services may be provided via a web page (e.g., the Booking.com homepage) or an application via an API provided by the service server 200 itself, or may be provided by relaying through various portal servers such as NAVER and DAUM.

[0033] Specifically, the service server 200 is a server that provides a content service including an API (Application Programming Interface), and the API can be called from a number of API request servers 300. At this time, the API request can be various requests related to the content service (for example, a request for detailed information about accommodation facilities, a request for reservation information, etc.).

[0034] As one example, the same API can provide the same data regardless of the caller (API request server 300). As another example, some APIs can provide different data depending on search conditions included in the request signals of multiple API request servers 300. When an API of one service server 200 is called by multiple API request servers 300 representing many cooperating companies, response priorities may arise from a business perspective. For example, if an API request (request signal) from cooperating company A needs to be responded to quickly with the highest priority, it can be processed with priority, while an API request from cooperating company B can be processed with a relatively lower priority.

[0035] When a WAS (Web Application Server) plays the role of the service server (API server) 200, it is possible to adjust the response speed of its own service depending on whether the API is called from within the service server 200 or from outside. That is, each of the above-mentioned multiple API request servers 300 issues an API request to the API, but among the multiple API request servers 300, an API request issued from within the service server 200 can be responded to relatively quickly or slowly based on a preset condition.

[0036] The above-mentioned WAS means an application server that uses HTTP, and may include a container for making dynamic data available in a web server that specializes in processing static HTTP data.

[0037] A WAS is an application server that provides dynamic content requiring database queries and various logic processing. It can be middleware (a software engine) that runs applications on computers or devices via HTTP. A WAS can also be called a web container or servlet container. A container refers to software capable of running JSPs and Servlets. A WAS can be applied to distributed environments that handle functions such as distributed transactions, security, messaging, and thread processing. Specifically, a WAS can implement a program execution environment, database connection functions, and multiple transaction management functions. A transaction is a logical unit of work. A WAS can receive relevant data from a database in response to a user request and generate and provide results in real time according to business logic.

[0038] The service server 200 may also include a web server, the above-mentioned web application server (hereinafter referred to as WAS), and a database (DB). In this case, the database may also be called a database management system (DBMS).

[0039] A web server is a server that primarily processes requests from clients such as web browsers or web crawlers based on the HTTP (hypertext transfer protocol) protocol, and can return an HTTP response when it receives an HTTP request.

[0040] For example, a web server can receive a file path name and return the static file content (html, jpeg, css, etc.) that matches that path.

[0041] The web server can transmit a request for providing dynamic content to the WAS, receive the processing result from the WAS, and transmit it to the client.

[0042] The plurality of API request servers 300 may generate request signals related to specific content services in cooperation with the service server 200. For example, the plurality of API request servers 300 of the present disclosure may refer to relay servers such as various portal servers such as the above-mentioned NAVER and DAUM.

[0043] The flow control server 100 is located in front of the service server 200 (for example, a service server that is an API server or a WAS server) in the communication flow and can manage request signals (API calls or API requests). For this reason, the flow control server 100 can receive request signals (API requests) generated from multiple API request servers 300.

[0044] The flow rate control server 100 receives request signals generated from multiple API request servers 300, and can determine the priorities of the multiple API request servers 300 that will transmit response signals to the request signals based on the status of the service server 200 and the request signals. In other words, it can determine the order of priority for transmitting responses to the request signals to which of the multiple API request servers 300.

[0045] For this purpose, the flow control server 100 can monitor the resource status of the service server 200. The priority can be set directly by an operator, and a priority can be assigned to each of the multiple API request servers 300, which are call identifiers.

[0046] When the flow control server 100 identifies an API request with a relatively high priority, it may change the waiting order in the queue for connecting to the service server 200 so that the API request can be transmitted to the service server 200 quickly.

[0047] The API flow control disclosed herein is expected to have the effect of making it possible to adjust priorities even in an environment where all entities call the same single API function, without having to implement a separate service server for VIPs.

[0048] Furthermore, for the API flow control of the present disclosure, the service server 200 can be automatically operated by installing an agent (for example, a WAS agent) without modifying existing code. In this case, the agent for API flow control can also be installed in each of the multiple API request servers 300. In this case, the agent can be transmitted to the service server 200 and the multiple API request servers 300 in the form of a software development kit (SDK).

[0049] FIG. 2 is a block diagram showing the configuration of the flow control server of the present disclosure.

[0050] The API flow rate control method of the present disclosure will be described below with reference to exemplary diagrams of FIGS. 3 to 9. FIG.

[0051] 2, the flow control server 100 includes a processor 110, a memory 130, and a communication unit 150. The components shown in FIG. 2 are not essential for implementing the flow control server 100 according to the present disclosure, and the flow control server 100 described herein may have more or fewer components than the above components.

[0052] The processor 110 is connected to the communication unit 150 and can be configured to control the flow rate of an API (Application Programming Interface).

[0053] The processor 110 may cooperate with a service server 200 that provides a specific content service to receive request signals generated from multiple API request servers 300 that relay the specific content service. At this time, the request signal is an API request and may include various information related to the specific content service, such as a call identifier and reference information.

[0054] The processor 110 may determine the priority of the multiple API request servers 300 that transmit response signals to the request signal based on the status of the service server 200 and the request signal.

[0055] As an example, when determining the priority, the processor 110 may do so based on the call identifier and reference information included in the request signals of the multiple API request servers 300. In this case, the criteria for determining the priority based on the call identifier and reference information may be arbitrarily set in advance by the operator. That is, the criteria for determining the priority may include setting in advance the API request server 300 to be assigned with the highest priority, or may include criteria for setting the priority of each of the multiple API request servers 300.

[0056] 3, multiple API request servers 300 may send requests to the rate control server 100, each of which includes a call identifier such as a caller ID and reference information such as a referrer. The reference information may include an absolute or partial address of the page that sent the current request. If the reference information is a link, the reference information may include the address of the page containing the link.

[0057] For example, when determining the priority based on the call identifier and reference information, the processor 110 may set the priority of the API request server 300 corresponding to the application of the service server 200 itself as the highest priority. Alternatively, the processor 110 may set the priority of the API request server 300 that has been previously agreed upon to provide a response to an API call (request signal) on a priority basis as the highest priority. In other words, the processor 110 can determine the priority of the responses of the API request server 300 according to the priority set by the operator. In this case, the operator can also set the priority through a prior agreement with the service server 200.

[0058] In addition, an OTA (online travel agency) online travel platform is a platform that provides online reservation agency services for various accommodations, and can be connected via API to an API request server 300 that provides a metasearch service. In this disclosure, the OTA online travel platform refers to the service server 200. That is, the service server 200 and the API request server 300 can be connected to each other via API.

[0059] For example, referring to FIG. 4, the first API request server 300-1 and the second API request server 300-2 may request accommodation information from the service server 200 in response to an end user's request, and the service server 200 may request and receive the accommodation information from the corresponding hotel and respond. In this case, the end user may access the API request server 300 via a user terminal, which may be a mobile terminal such as a mobile phone or a wired terminal such as a desktop. The first API request server 300-1 is a server that provides metasearch services such as KAYAK and Skyscanner, and the second API request server 300-2 is a server operated by the service server 200, which refers to an API server such as Booking.com.

[0060] According to a preset setting, the processor 110 of the flow control server 100 can set the priority of the response to a request signal (API request) generated by the second API request server 300-2 operated by the service server 200 as a relatively high priority, and can set the priority of the first API request server 300-1 providing the meta search service as a lower priority. That is, the priority of the response from the second API request server 300-2 can be set as first, and the priority of the response from the first API request server 300-1 can be set as second.

[0061] Depending on business needs, the processor 110 can change the method of determining the priority of the API request server 300 operated by the service server 200 from a method of determining a relatively higher priority to a method of determining a lower priority. In other words, the above-described method can also be applied in reverse.

[0062] Meanwhile, in the financial industry, improvements have been made to the MyData system, providing an open banking system that allows a single bank's service server to query accounts held in the bank's name at other banks. Referring to FIG. 5, the processor 110 can set different priorities for the account query API called from the second API request server 300-2 of Bank A, which is directly connected to the service server 200 that provides Bank A's services, and the account query API called from the first API request server 300-1 of Bank B. For example, as shown in FIG. 5, the processor 110 can set the priority of the second API request server 300-2 of Bank A as the highest priority and the priority of the first API request server 300-1 of Bank B as the lowest priority. Controlling responses to API calls in this way is expected to enable efficient server operation.

[0063] As another example, when determining the priority, the processor 110 may determine it based on the frequency of request signals sent from multiple API request servers 300, and the higher the frequency of the request signal, the higher the priority.

[0064] 6, the processor 110 may determine that the higher the frequency of request signals transmitted from the plurality of API request servers 300, the higher the priority. That is, the priority of the plurality of API request servers 300 may be set so that the server with the highest frequency of request signals (N1>N2) is the highest priority, and the priority may be set sequentially according to the frequency (P1>P2) thereafter. Here, N represents the frequency of request signals, and P represents the priority.

[0065] 7, when determining the priority, the processor 110 may determine the priority based on the size of data to be responded to from multiple API request servers 300 in response to request signals, with larger sizes of data to be responded to being assigned a higher priority. For example, if the sizes of data to be responded to in response to request signals issued by the first and second API request servers 300-2 are D1>D2, the processor 110 may determine the priority (P1>P2) so that the response to the request signal from the first API request server 300-1, which has the larger data size, is processed preferentially over the response from the second API request server 300-2. For example, the data to be responded to in response to the request signal may include various information related to the content service, such as images of accommodations and introductions to accommodations.

[0066] As another example, when determining the priority, the processor 110 may assign a predetermined higher priority to each of the multiple API request servers 300 at a predetermined period based on the accumulated priority of the multiple API request servers 300. In other words, if the accumulated priority is low, the processor 110 may evenly distribute the higher priority (e.g., the highest priority or a higher priority equal to or higher than a predetermined rank) to the multiple API request servers 300.

[0067] 8, if the processor 110 has assigned the highest priority to the third API request server 300-3 among the multiple API request servers 300 for the past three times, the processor 110 may assign the highest priority to the first API request server 300-1 this time. That is, the processor 110 assigns the highest priority to the API request server 300 that has always been relatively slow in responding to request signals at preset intervals, thereby enabling it to receive a quick response.

[0068] The above-mentioned methods for determining priority can be applied alone or in combination with at least one or more other methods.

[0069] Specifically, when determining the priority, the processor 110 may determine the highest priority based on the call identifier and reference information included in the request signals of the multiple API request servers 300, and may determine subsequent priorities based on the frequency of request signals sent from the remaining multiple API request servers 300. For example, of the first through fourth API request servers 300, the pre-agreed first API request server 300 may be assigned a priority of 1, and the second through fourth API request servers 300 may be assigned second, third, and fourth, respectively, based on the frequency of their request signals.

[0070] In addition, the processor 110 may assign a predetermined higher priority to each of the multiple API request servers 300 at a predetermined period based on the call identifier and reference information contained in the request signals of the multiple API request servers 300 described above, the frequency of request signals transmitted from the multiple API request servers 300, the size of data to be responded to the multiple API request servers 300, the accumulated priority of the multiple API request servers 300, and at least one combination of these.

[0071] After determining that a specific API request server 300 has the highest priority among the multiple API request servers 300, the processor 110 can transmit a delay notification to the API request server 300 if there are insufficient resources for data to respond to a request signal from the API request server 300. In other words, if there are insufficient resources in the service server 200 for processing response data in response to a request signal from the API request server 300 determined to have the highest priority, the processor 110 transmits this situation to the API request server 300 by way of a delay notification. This is expected to have the effect of eliminating in advance dissatisfaction with response delays among end users who use content services via the API request server 300.

[0072] The processor 110 changes the first priority determined for each of the multiple API request servers to a second priority based on the state of the service server 200, and may change the state based on at least one of the CPU state and the GPU state of the service server 200. In this case, the state of the service server is not limited to the CPU state and the GPU state, but may include the state of all configurations in the service server 200 that should be taken into consideration when generating and responding to response data for a request signal (API request) in relation to a content service.

[0073] That is, processor 110 can perform control in different ways depending on the type of received request signal (API request). If a specific request signal excessively uses resources of a specific internal configuration within service server 200 or places a load on a specific table in the DB, processor 110 can arbitrarily adjust the priority. To this end, processor 110 can additionally build and manage information related to DB tables and service server resources referenced by each API function.

[0074] Referring to FIG. 9, the processor 110 may assign the highest priority, priority 1, to the first API request server 300-1, priority 2 to the second API request server 300-2, and priority 3 to the third API request server 300-3.

[0075] In this case, the response data corresponding to the request signal of the first API request server 300-1 may need to be processed by the CPU within the service server 200, and the response data corresponding to the request signal of the second API request server 300-2 may need to be processed by the GPU within the service server 200.

[0076] The processor 110 requests and receives the status of the service server 200, including the CPU status and the GPU status, and, as a result of analyzing the status, can determine that the CPU status is in a state where it cannot immediately process response data corresponding to a request signal due to a lack of resources, etc., and that the GPU status is good. Based on the above-mentioned analysis results, the processor 110 can change the priority of the first API request server 300-1 from priority 1 to priority 2, and change the priority of the second API request server 300-2 from priority 2 to priority 1.

[0077] The process of changing the priority based on the status of the service server 200, including the CPU status and GPU status of the processor 110, can also be implemented by the service server 200. That is, the service server 200 can change the processing order of request signals from multiple API request servers 300 transmitted from the processor 110 based on the status of the service server, rather than the order of the request signals transmitted from the API request servers 300, based on the priority set by the processor 110.

[0078] The processor 110 may transmit request signals of the multiple API request servers 300 to the service server 200 according to priority.

[0079] Furthermore, the processor 110 can delay transmission of a request signal (API request) to the service server 200 by generating a queue depending on the state of the service server 200, regardless of the priority.

[0080] Meanwhile, the service server 200 responds to requests transmitted from the flow control server 100 in order, but can internally change the priority and process them taking into account whether or not servers and DBs such as the Surf DB are in standby mode.

[0081] Memory 130 may store a computer program for providing an API flow control method, and the stored computer program may be read and executed by processor 110. Memory 130 may store any form of information generated or determined by processor 110 and any form of information received by communication unit 150.

[0082] The memory 130 may store data supporting various functions of the flow control server 100 and programs for the operation of the processor 110, may store input and output data, may store multiple application programs (application programs or applications) running on the flow control server 100, and data and instructions for the operation of the flow control server 100. At least some of these application programs may be downloaded from an external server via wireless communication.

[0083] Such memory 130 may include at least one type of storage medium selected from the group consisting of flash memory, hard disk, solid state disk, silicon disk drive, multimedia card micro, card-type memory (such as SD or XD memory), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, and optical disk. The memory may also be a database separate from the device and connected by wire or wirelessly.

[0084] The communication unit 150 may include one or more components that enable communication with external devices, and may include, for example, at least one of a broadcast receiving module, a wired communication module, a wireless communication module, a short-range communication module, and a location information module.

[0085] Although not shown, the flow control server 100 of the present disclosure may further include an output unit and an input unit.

[0086] The output unit may display a user interface (UI) for providing the results of API flow control, etc. The output unit may output any form of information generated or determined by the processor 110 and any form of information received by the communication unit 150.

[0087] The output unit may include at least one of a liquid crystal display (LCD), a thin film transistor liquid crystal display (TFT LCD), an organic light-emitting diode (OLED), a flexible display, and a 3D display. Some of these display modules may be configured as a transmissive or light-transmissive type so that the outside can be seen through them. This may be called a transparent display module, and a representative example of such a transmissive display module is a TOLED (Transparent OLED).

[0088] The input unit may receive information input by a user. The input unit may include keys and / or buttons on a user interface for receiving the information input by the user, or physical keys and / or buttons. In response to user input via the input unit, a computer program for controlling a display according to an embodiment of the present disclosure may be executed.

[0089] FIG. 10 is a flowchart illustrating the flow rate control method of the present disclosure.

[0090] The flow rate control method shown in FIG. 10 can be applied to all of the techniques realized by the flow rate control server 100 shown in FIG. 2, and for the sake of convenience, overlapping detailed explanations will be omitted.

[0091] The processor 110 of the flow control server 100 may receive request signals generated from a plurality of API request servers associated with a service server for providing specific content (1100).

[0092] Next, the processor 110 may determine (1200) a priority for sending response signals to the multiple API request servers 300 based on the status of the service server 200 and the request signal. That is, the priority means the priority of the response.

[0093] As an example, the processor 110 may determine the priority based on the call identifier and reference information included in the request signals of the multiple API request servers 300 .

[0094] As another example, when determining the priority, the processor 110 may determine it based on the frequency of request signals transmitted from multiple API request servers 300, and the higher the frequency of the request signal, the higher the priority.

[0095] As another example, when determining priorities, the processor 110 may determine priorities based on the size of the data to be responded to from multiple API request servers 300 in response to a request signal, and may determine that the larger the size of the data to be responded, the higher the priority.

[0096] As another example, when determining the priority, the processor 110 may assign a predetermined higher priority to each of the multiple API request servers 300 at a predetermined period based on the accumulated priorities of the multiple API request servers 300.

[0097] Next, the processor 110 may transmit the request signals of the multiple API request servers 300 to the service server 200 in accordance with the priority (1300).

[0098] All online-based service providers (service server 200 of the present disclosure) may provide APIs for various reasons. The APIs can be used as a means for service providers to transmit necessary data to other external businesses (e.g., API request server 300 of the present disclosure). Independent business providers centered on APIs (businesses that only provide APIs, such as LinkHub) have also emerged, and because APIs play a central role in partnerships, companies such as Google, Facebook, and Kakao have all created and provided APIs. The present disclosure is expected to provide smooth API services (content services) by systematically controlling the flow of such APIs.

[0099] Furthermore, the above-described method according to the present disclosure may be implemented as a program (or application) and stored on a medium to be executed in combination with a server that is hardware.

[0100] The disclosed embodiments may be realized in the form of a recording medium storing instructions executable by a computer. The instructions are stored in the form of program code and, when executed by a processor, generate program modules to perform the operations of the disclosed embodiments. The recording medium may be realized as a computer-readable recording medium.

[0101] Computer-readable storage media include any type of storage media that stores computer-readable instructions, such as read-only memory (ROM), random access memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc.

[0102] As described above, the disclosed embodiments have been described with reference to the accompanying drawings. Those skilled in the art will understand that the present disclosure can be implemented in forms different from the disclosed embodiments without changing the technical idea or essential features of the present disclosure. The disclosed embodiments are illustrative and should not be interpreted as limiting.

Claims

1. The Communications Department and a processor connected to the communication unit for controlling an API flow rate; The processor: In cooperation with a service server that provides a specific content service, the service server receives request signals from a plurality of API request servers that relay the specific content service; determining a priority order for the plurality of API request servers that transmit response signals in response to the request signal, and changing, for each of the plurality of API request servers, a first priority order determined based on the request signal to a second priority order based on a status of the service server; transmitting request signals of the plurality of API request servers to the service server in accordance with the second priority; A digital service-based flow control server that determines the first priority based on a call identifier contained in the request signal and the frequency of the request signal, and determines the request signal of an API request server among the plurality of API request servers that corresponds to the service server's own application that provides the specific content service via the service server's own API as the highest priority based on the call identifier, and determines the remaining API request servers as higher priorities in order of frequency.

2. The processor:

2. The digital service-based flow control server of claim 1, wherein the first priority is determined by taking into consideration the size of the data to be responded to the plurality of API request servers in response to the request signal instead of the frequency, and the larger the size of the data to be responded, the higher the priority is determined to be.

3. The processor:

2. The digital service-based flow control server according to claim 1, wherein the first priority is determined by taking into consideration the cumulative priority of the plurality of API request servers instead of the frequency, and the lower the cumulative priority, the higher the priority is determined to be.

4. The processor:

2. The digital service-based flow control server of claim 1, wherein after the priority of a specific API request server among the plurality of API request servers is determined to be the highest priority, a delay notification is transmitted to the specific API request server if there is a shortage of resources for data to respond to a request signal from the specific API request server.

5. The status of the service server is The digital service-based flow control server of claim 1 , comprising at least one of a CPU state and a GPU state.

6. a service server that provides a specific content service; a plurality of API request servers that generate request signals related to the particular content service; a flow control server that receives the request signals from the plurality of API request servers, determines priorities of the plurality of API request servers that transmit response signals to the request signals, and changes, for each of the plurality of API request servers, the first priority determined based on the request signals to a second priority based on the status of the service server; The flow control server A digital service-based flow control system that determines the first priority based on a call identifier included in the request signal and the frequency of the request signal, and determines the request signal of an API request server among the plurality of API request servers that corresponds to the service server's own application that provides the specific content service via its own API as the highest priority based on the call identifier, and determines the remaining API request servers as higher priorities in order of frequency.

7. The flow control server 7. The digital service-based flow control system of claim 6, wherein the first priority is determined taking into consideration the size of the data to be responded to the plurality of API request servers in response to the request signal instead of the frequency, and the larger the size of the data to be responded, the higher the priority is determined to be.

8. The flow control server 7. The digital service-based flow control system of claim 6, wherein the first priority is determined taking into consideration the cumulative priority of the plurality of API request servers instead of the frequency, and the lower the cumulative priority, the higher the priority is determined to be.

9. The flow control server 7. The digital service-based flow control system of claim 6, wherein after the priority of a specific API request server among the plurality of API request servers is determined to be the highest priority, a delay notification is transmitted to the specific API request server if there is a shortage of resources for data to respond to a request signal from the specific API request server.

10. The status of the service server is The digital service-based flow control system of claim 6 , including at least one of a CPU state and a GPU state.

11. A digital service-based flow control method executed by a flow control server, comprising: receiving request signals from a plurality of API request servers associated with a service server that provides a specific content service; determining a priority of the API request servers that transmit response signals to the API request servers, and changing, for each of the API request servers, a first priority determined based on the request signal to a second priority based on a status of the service server; transmitting request signals of the plurality of API request servers to the service server in accordance with the second priority; A digital service-based flow control method, which determines the first priority based on a call identifier included in the request signal and the frequency of the request signal, and determines the request signal of an API request server among the plurality of API request servers that corresponds to the service server's own application that provides the specific content service via its own API as the highest priority based on the call identifier, and determines the remaining API request servers as higher priorities in order of frequency.

12. The flow control server The digital service-based flow control method of claim 11, wherein the first priority is determined taking into consideration the size of the data to be responded to the plurality of API request servers in response to the request signal instead of the frequency, and the larger the size of the data to be responded, the higher the priority is determined to be.

13. The flow control server The digital service-based flow control method according to claim 11, wherein the first priority is determined taking into consideration the cumulative priority of the plurality of API request servers instead of the frequency, and the lower the cumulative priority, the higher the priority is determined to be.

14. The flow control server 12. The digital service-based flow control method of claim 11, wherein after the priority of a specific API request server among the plurality of API request servers is determined to be the highest priority, a delay notification is transmitted to the specific API request server if there is a shortage of resources for data to respond to a request signal from the specific API request server.

15. The status of the service server is The digital service-based flow control method of claim 11 , including at least one of a CPU state and a GPU state.

Citation Information

Patent Citations

  • Control unit for priority between processes

    JP1996115301A

  • Resource management system

    JP1998124332A

  • System operation management method

    JP2002351852A

  • Service control method and device in open api system

    JP2003256223A

  • Flow rate controller

    JP2009223810A