Distributed Reservation System and Method for Operating the Same

KR103018381B1Active Publication Date: 2026-09-11주식회사 비요
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
KR1020240125092
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-09-12
Publication Date
2026-09-11
Estimated Expiration
2044-09-12

Smart Images

  • Figure 112024100861455-PAT00003_ABST
    Figure 112024100861455-PAT00003_ABST
Patent Text Reader

Abstract

A distributed reservation system according to the present invention is a reservation system that provides a reservation service using distributed servers, comprising: a server network including a plurality of distributed servers independently distributed according to region; a location analysis module that analyzes location information of a user terminal; a distributed processing module that allocates a distributed server to perform processing for a reservation request generated from the user terminal based on the location information of the user terminal analyzed by the location analysis module; and a time synchronization module that synchronizes time information between the plurality of distributed servers by receiving time information of an atomic clock and distributing it to the server network.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a distributed reservation system that utilizes distributed servers to reduce waiting time and provides a reservation service capable of fair reservation, and a method of operating the same. Background Technology

[0002] Existing reservation systems operate based on a centralized server structure. In such an operational structure, all user requests are directed to a single central server, and reservation service providers process users' reservation requests through this central server.

[0003] However, the limitations of centralized systems began to become clearly apparent as the number of users increased. In particular, for large-scale events or time-sensitive reservation services, many users attempt to make reservations simultaneously; in such cases, the central server becomes subjected to an excessive load, leading to performance degradation or even server crashes.

[0004] This increases user waiting times and causes a decrease in service quality.

[0005] In addition, when users connect to the central server to attempt a reservation, a certain waiting time occurs until each user's request is processed, and this waiting time varies depending on the server load and network conditions.

[0006] In particular, when a large number of users flock to a site, reservation failures or unfair reservation processing are likely to occur, which also becomes a factor that hinders the user experience.

[0007] As described above, while existing reservation systems were structured to provide functions through servers directly managed by the reservation service provider, the current trend is shifting toward a model where servers owned by global conglomerates are leased and utilized.

[0008] However, even when using servers provided by other specialized cloud computing companies, there is still a limitation in that the servers operate under a centrally managed structure; consequently, users could not avoid a situation where they had to wait in a queue until the central server could accommodate them when accessing the service.

[0009] In other words, this method also failed to maximize the distributed effects of cloud computing and could not avoid scenarios where users were placed in queues, so there were limitations in providing minimal waiting time to users who entered the service instantly.

[0010] Therefore, a method to resolve these problems is required. Prior art literature

[0011] Korean Patent Publication No. 10-2006-0054591 The problem to be solved

[0012] The present invention is an invention devised to solve the problems of the aforementioned prior art, and aims to enable users to use the service without a waiting line at the time of service entry in order to provide users with a better reservation service experience.

[0013] In addition, the present invention aims to enable users to attempt fair reservations by allowing them to process their reservation requests sequentially according to priority without being affected by user concentration and server load.

[0014] The problems of the present invention are not limited to those mentioned above, and other unmentioned problems will be clearly understood by those skilled in the art from the description below. means of solving the problem

[0015] A distributed reservation system of the present invention for achieving the above-mentioned purpose comprises, in a reservation system that provides a reservation service utilizing distributed servers, a server network including a plurality of distributed servers independently distributed according to region; a location analysis module that analyzes location information of a user terminal; a distributed processing module that allocates a distributed server to perform processing for a reservation request generated from the user terminal based on the location information of the user terminal analyzed by the location analysis module; and a time synchronization module that synchronizes time information between the plurality of distributed servers by receiving time information from an atomic clock and distributing it to the server network.

[0016] At this time, the distributed server may include an identifier generation unit that identifies the time when the reservation request is generated from the user terminal based on time information and assigns a reservation identifier.

[0017] And the distributed server may further include an information synchronization unit that distributes identification information of the reservation identifier assigned to the reservation request by the identifier generation unit to the server network.

[0018] In addition, the identifier generation unit may generate a unique random number for the reservation request generated from the user terminal and assign it as a reservation identifier.

[0019] At this time, the unique random number may include a first random number pattern region having a random number pattern in seconds and a second random number pattern region having a random number pattern in nanoseconds.

[0020] The method for operating a distributed reservation system according to the present invention for achieving the above-mentioned purpose comprises: (a) synchronizing time information between a plurality of distributed servers included in a server network through time information of an atomic clock; (b) analyzing location information of a user terminal where a reservation request is generated through a location analysis module; (c) allocating a distributed server on a server network to perform processing for a reservation request generated from the user terminal based on the location information of the user terminal analyzed by the location analysis module; (d) the identifier generation unit of the distributed server to which the reservation request is allocated in step (c) identifies the time when the reservation request is generated based on the time information and allocates a reservation identifier; and (e) the information synchronization unit of the distributed server distributes the identification information of the reservation identifier allocated to the reservation request by the identifier generation unit to the server network.

[0021] At this time, step (a) may include step (a-1) in which a time synchronization module receives time information of the atomic clock, step (a-2) in which the time synchronization module distributes the time information to the server network, and step (a-3) in which the distributed server of the server network performs synchronization for the time information.

[0022] And the above step (a) can be repeated according to a pre-set period.

[0023] In addition, step (d) above allows the identifier generation unit to generate a unique random number for the reservation request generated from the user terminal and assign it as a reservation identifier.

[0024] At this time, the unique random number may include a first random number pattern region having a random number pattern in seconds and a second random number pattern region having a random number pattern in nanoseconds.

[0025] Meanwhile, after step (e) above, step (f) may be further performed in which the distributed server determines the priority on the server network for the reservation request.

[0026] Additionally, after step (f) above, step (g) may be further performed, in which the distributed server determines whether it is possible to process the reservation request based on the priority determined in step (f), and if possible, performs the reservation processing to generate reservation information.

[0027] In addition, after step (g) above, step (h1) in which the information synchronization unit distributes the reservation information to the server network may be further performed.

[0028] In addition, after step (g) above, step (h2) in which the distributed server transmits the reservation information to the user terminal may be further performed. Effects of the invention

[0029] The distributed reservation system and method of operation according to the present invention, for solving the above-mentioned problem, utilize a distributed server network so that distributed servers deployed in various regions appropriately distribute and process requests according to the user's location. This prevents performance degradation even in situations where reservation requests are concentrated, and offers the advantage of reduced waiting time and faster reservation completion for the user.

[0030] Furthermore, the present invention includes a time synchronization module utilizing an atomic clock, enabling accurate synchronization of time information between distributed servers in nanosecond increments. As a result, even when simultaneous reservation requests occur, the timing of each reservation request can be accurately recorded, and reservation priorities can be fairly assigned.

[0031] In addition, since the present invention can process reservation requests in a distributed manner based on the location information of the user terminal, reservations can be processed at the distributed server closest to the user's location, and network latency can be minimized.

[0032] The effects of the present invention are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art from the description in the claims. Brief explanation of the drawing

[0033] FIG. 1 is a conceptual diagram showing each component of a distributed reservation system according to one embodiment of the present invention. FIG. 2 is a diagram illustrating an exemplary distribution of a server network in a distributed reservation system according to one embodiment of the present invention. FIG. 3 is a diagram illustrating an exemplary pattern of unique random numbers in a distributed reservation system according to one embodiment of the present invention. FIG. 4 is a diagram showing steps (a) to (e) of a distributed reservation system operation method according to one embodiment of the present invention. FIG. 5 is a diagram showing the detailed process of step (a) in a distributed reservation system operation method according to one embodiment of the present invention. FIG. 6 is a diagram showing a subsequent process that can be performed after step (e) in a distributed reservation system operation method according to one embodiment of the present invention. Specific details for implementing the invention

[0034] In this specification, where a component (or region, layer, part, etc.) is described as being "on," "connected," or "combined" with another component, it means that it may be directly placed / connected / combined with the other component, or that a third component may be placed between them.

[0035] Identical reference numerals denote identical components. Additionally, in the drawings, the thicknesses, proportions, and dimensions of the components are exaggerated for the effective illustration of the technical content.

[0036] "And / or" includes all one or more combinations that the associated configurations can define.

[0037] Terms such as "first," "second," etc., may be used to describe various components, but said components should not be limited by said terms. These terms are used solely for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be named the second component, and similarly, the second component may be named the first component. A singular expression includes a plural expression unless the context clearly indicates otherwise.

[0038] Additionally, terms such as "below," "lower side," "above," and "upper side" are used to describe the relationships between the components depicted in the drawings. These terms are relative concepts and are described based on the directions indicated in the drawings.

[0039] Unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as generally understood by those skilled in the art to which the present invention pertains. Additionally, terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology, and are explicitly defined herein unless interpreted in an ideal or overly formal sense.

[0040] Terms such as "include" or "have" are intended to indicate the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, and should be understood as not precluding the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.

[0041] Furthermore, when it is stated in this specification that a first component operates or is executed on (ON) a second component, it should be understood that the first component operates or is executed in an environment where the second component operates or is executed, or operates or is executed through direct or indirect interaction with the second component.

[0042] Where any component, device, or system is described as including a component consisting of a program or software, it should be understood that, even without explicit mention, that component, device, or system includes hardware (e.g., memory, CPU, etc.) or other programs or software (e.g., an operating system or drivers required to run the hardware) necessary for the execution or operation of that program or software.

[0043] Furthermore, unless otherwise specified regarding the implementation of a component, it should be understood that the component may be implemented in software, hardware, or both software and hardware.

[0044] Furthermore, the terms used herein are for describing the embodiments and are not intended to limit the invention. In this specification, the singular form includes the plural form unless specifically stated otherwise in the text. As used herein, 'comprises' and / or 'comprising' do not exclude the presence or addition of one or more other components to the mentioned components.

[0045] Additionally, in this specification, terms such as 'part', 'device', etc., may be intended to refer to hardware and the functional and structural combination of software driven by said hardware or for driving said hardware. For example, the hardware here may be a data processing device including a CPU or other processor. Furthermore, the software driven by the hardware may refer to a running process, object, executable, thread of execution, program, etc.

[0046] Furthermore, it can be easily inferred by an average expert in the art of the present invention that the above terms may refer to a specific code and a logical unit of hardware resources for executing the said specific code, and do not necessarily refer to physically connected code or a single type of hardware.

[0047] Hereinafter, a distributed reservation system and a method of operating the same according to an embodiment of the present invention will be described with reference to the attached drawings.

[0048] FIG. 1 is a conceptual diagram showing each component of a distributed reservation system (100) according to one embodiment of the present invention.

[0049] As illustrated in FIG. 1, a distributed reservation system (100) according to one embodiment of the present invention provides a reservation service by utilizing a distributed server (110), and is configured so that even if a user makes a reservation request simultaneously from various locations through a user terminal (10), the reservation request can be processed through the distributed servers (110) distributed in each region.

[0050] And the distributed reservation system (100) according to the present embodiment includes a server network (100), a location analysis module (200), a distributed processing module (300), and a time synchronization module (400), and these components interact to perform the functions of the system.

[0051] The server network (100) includes a plurality of distributed servers (110) that are distributed independently of each other according to region.

[0052] Each distributed server (110) operates independently within a designated region, and is configured so that when a reservation request occurs, the distributed server (110) in that region processes the request.

[0053] And the server network (100) has distributed servers (110) deployed across multiple regions, so that traffic from a specific region can be processed in a distributed manner so that it does not spread to other regions. Each distributed server (110) is connected through the server network (100), and the server network (100) is configured so that multiple distributed servers (110) interact with each other to process reservation requests.

[0054] FIG. 2 is a diagram illustrating an exemplary distribution of a server network (100) in a distributed reservation system (100) according to one embodiment of the present invention.

[0055] As illustrated in FIG. 2, in this embodiment, the server network (100) can be subdivided and distributed into areas according to a plurality of classification criteria. A distributed server (110) is placed in each distributed area, and in each area, splitting and replicating into a database can be performed.

[0056] Referring again to FIG. 1, the location analysis module (200) performs the role of analyzing the location information of the user terminal (10).

[0057] At this time, the user terminal (10) can collect GPS or network-based location information and transmit this location information to the server network (100).

[0058] And the location analysis module (200) determines the user's current location based on location information received from the user terminal (10), and this is used to determine the distributed server (110) to process the reservation request.

[0059] The distributed processing module (300) performs the role of allocating a distributed server (110) to perform processing for a reservation request generated from a user terminal (10) based on the location information of the user terminal (10) analyzed by the location analysis module (200).

[0060] That is, the distributed processing module (300) selects the nearest distributed server (110) based on the location information of the user terminal (10) and transmits the reservation request.

[0061] In this process, the distributed processing module (300) is designed to distribute the load evenly among the distributed servers (110), and can also transfer reservation requests to the appropriate distributed server (110) depending on the status of the distributed server (110).

[0062] The distributed processing module (300) may be implemented in the form of a load balancer, or it may be implemented to distribute reservation requests to distributed servers (110) distributed across multiple regions without a load balancer.

[0063] In such cases, the distributed processing module (300) may be applied in a DNS-based traffic distribution method or a method in which distributed processing is performed directly through software installed on the user terminal (10). The form of the distributed processing module (300) may also be implemented in various other ways.

[0064] The time synchronization module (400) receives time information from the atomic clock (20) and distributes it to the server network (100), thereby performing the role of synchronizing time information between multiple distributed servers (110).

[0065] Time synchronization between distributed servers (110) is a process required to accurately determine the time when a reservation request occurs and to fairly determine the priority of requests that arrive at the same time.

[0066] That is, the time synchronization module (400) is configured so that each distributed server (110) operates on the same time basis using time information provided from the atomic clock (20).

[0067] Meanwhile, the distributed reservation system (100) according to the present embodiment can identify the time when a reservation request occurs based on time information and assign a unique reservation identifier to each request during the process of processing a reservation request generated from a user terminal (10).

[0068] To this end, the distributed server (110) includes an identifier generation unit (111) and an information synchronization unit (112) to record the exact time of the reservation request and perform the function of synchronizing it across the entire server network (100).

[0069] The identifier generation unit (111) performs the role of identifying the time when a reservation request is generated from a user terminal (10) based on time information and assigning a reservation identifier.

[0070] To this end, the time at which a reservation request transmitted from a user terminal (10) to a distributed server (110) occurs can be accurately recorded based on time information synchronized with an atomic clock (20).

[0071] The identifier generation unit (111) generates and assigns a unique reservation identifier for each reservation request according to this time, thereby preventing conflicts or duplications between reservation requests.

[0072] In addition, in this embodiment, the identifier generation unit (111) can generate a unique random number for a reservation request generated from a user terminal (10) and assign it as a reservation identifier.

[0073] Unique random numbers serve as a factor that enables differentiation between reservation requests, and the uniqueness of a reservation can be guaranteed by assigning a different random number to each reservation request.

[0074] Such unique random numbers are generated according to a set rule and can be designed so that no duplication occurs during the random number generation process.

[0075] FIG. 3 is a diagram illustrating an exemplary pattern of unique random numbers in a distributed reservation system (100) according to one embodiment of the present invention.

[0076] As illustrated in FIG. 3, in this embodiment, the unique random number may be generated by dividing it into two random number pattern regions, including a first random number pattern region and a second random number pattern region.

[0077] The first random number pattern area is an area containing a random number pattern in seconds, where random numbers are generated based on seconds during the time the reservation request occurred.

[0078] In addition, the second random number pattern region is an area containing a random number pattern in nanosecond units, generating random numbers in nanosecond units through more precise time measurement.

[0079] In other words, this embodiment generates a unique random number by combining these two patterns, thereby reflecting minute time differences between reservation requests and enabling more precise reservation management.

[0080] For example, unique random numbers can be set to have a number of cases of 10 to the power of 35 or more, and different random number patterns corresponding to every second thereafter can be expressed starting from 1970.01.01.

[0081] Also, since 1 second is 1 billion nanoseconds, the second random number pattern region can represent random number patterns corresponding to nanoseconds between 0 and 1 billion.

[0082] In other words, in such an example, time can be expressed within a range of 300 billion years. However, this specific method is presented as an example, and it goes without saying that a different setting method from this embodiment may be applied.

[0083] Referring again to FIG. 1, the information synchronization unit (112) performs the role of distributing identification information of the reservation identifier assigned to the reservation request by the identifier generation unit (111) to the server network (100).

[0084] The information synchronization unit (112) synchronizes the information in real time so that all distributed servers (110) within the server network (100) can share the same reservation identifier.

[0085] Through this, time information and reservation identification information between distributed servers (110) can be consistently maintained, and accuracy and fairness can be guaranteed during reservation processing.

[0086] Below, a detailed explanation of the specific operation method of the distributed reservation system (100) described above will be provided.

[0087] FIG. 4 is a diagram showing steps (a) to (e) of a method for operating a distributed reservation system (100) according to one embodiment of the present invention.

[0088] As illustrated in FIG. 4, the method of operating a distributed reservation system (100) according to the present embodiment may include steps (a) through (e).

[0089] (a) Step is a process of synchronizing time information between multiple distributed servers (110) included in the server network (100) through time information of an atomic clock (20).

[0090] That is, based on the time information provided from the atomic clock (20) by this process, all distributed servers (110) within the server network (100) can operate using the same time standard.

[0091] This process is intended to ensure consistency in processing reservation requests, and each distributed server (110) can perform real-time synchronization based on time information transmitted from the atomic clock (20).

[0092] FIG. 5 is a diagram showing the detailed process of step (a) in a method of operating a distributed reservation system (100) according to one embodiment of the present invention.

[0093] As illustrated in FIG. 5, in this embodiment, step (a) may include steps (a-1) to (a-3) in detail.

[0094] Step (a-1) is the process in which the time synchronization module (400) receives time information from the atomic clock (20).

[0095] The time synchronization module (400) receives very precise time information provided from the atomic clock (20) and, based on such time information, prepares for time synchronization between distributed servers (110) within the server network (100).

[0096] At this time, the time information of the atomic clock (20) has an accuracy of nanoseconds, and through this, all distributed servers (110) can share the same time standard.

[0097] Next, step (a-2) is the process of distributing the time information received by the time synchronization module (400) to the server network (100).

[0098] In this process, the time synchronization module (400) distributes time information received from the atomic clock (20) to the server network (100) in real time so that all distributed servers (110) included in the server network (100) can have the same time standard.

[0099] Time information is transmitted quickly through the network, and each distributed server (110) is ready to process reservation requests based on the time information.

[0100] Step (a-3) is the process in which a distributed server (110) of a server network (100) performs synchronization of time information.

[0101] In this process, each distributed server (110) included in the server network (100) performs its own time synchronization based on time information received from the time synchronization module (400).

[0102] And each distributed server (110) adjusts its local clock according to the time information provided by the atomic clock (20), thereby preventing time errors between the distributed servers (110).

[0103] Once time synchronization is completed by this process, all distributed servers (110) are ready to process reservation requests using the same time standard.

[0104] Meanwhile, such step (a) can be repeated according to a pre-set period to ensure that the synchronization state is continuously maintained without deviation.

[0105] Referring again to FIG. 4, step (b) is a process of analyzing the location information of the user terminal (10) where the reservation request was generated through the location analysis module (200).

[0106] In this process, the user terminal (10) transmits GPS or network-based location information to the server network (100), and the location analysis module (200) analyzes the exact location of the user terminal (10) based on the location information.

[0107] (c) Step is a process in which the distributed processing module (300) allocates a distributed server (110) to perform processing for a reservation request generated from a user terminal (10) on a server network (100) based on the location information of the user terminal (10) analyzed by the location analysis module (200).

[0108] In this step, the distributed processing module (300) selects the distributed server (110) closest to the user terminal (10) based on the information provided by the location analysis module (200) and processes the reservation request.

[0109] In other words, through this process, network traffic can be efficiently distributed and user waiting time can be minimized.

[0110] Step (d) is a process in which the identifier generation unit (111) of the distributed server (110) to which the reservation request was assigned by step (c) identifies the time when the reservation request was generated based on time information and assigns a reservation identifier.

[0111] In this process, the identifier generation unit (111) records the exact time when each reservation request is generated based on time information provided from the atomic clock (20), and assigns a unique reservation identifier based on this.

[0112] And reservation identifiers are used to prevent conflicts between each reservation request and to fairly determine the order of requests.

[0113] As previously explained, in this embodiment, the identifier generation unit (111) can generate a unique random number for a reservation request generated from a user terminal (10) and assign it as a reservation identifier, and the unique random number may include a first random number pattern area having a random number pattern in seconds and a second random number pattern area having a random number pattern in nanoseconds; therefore, a detailed explanation thereof will be omitted.

[0114] (e) Step is the process in which the information synchronization unit (112) of the distributed server (110) distributes the identification information of the reservation identifier assigned to the reservation request by the identifier generation unit (111) to the server network (100).

[0115] In this process, the reservation identifier generated at each distributed server (110) is synchronized in real time with other distributed servers (110) within the server network (100), thereby ensuring that reservation information between the distributed servers (110) is maintained consistently.

[0116] FIG. 6 is a diagram showing a subsequent process that can be performed after step (e) in a method of operating a distributed reservation system (100) according to one embodiment of the present invention.

[0117] As illustrated in FIG. 6, in this embodiment, after step (e), a reservation processing process including steps (f), (g), (h1), and (h2) may be additionally performed.

[0118] In this embodiment, after step (e), step (f) may be further performed in which the distributed server (110) determines the priority on the server network (100) for the reservation request.

[0119] This step (f) is a process for determining the priority of each reservation request, in which the distributed server (110) assigns priority to each reservation request based on the time when the reservation request is received, based on time information synchronized with the atomic clock (20).

[0120] In addition, at this stage, the order of request processing can be determined not only by time information but also by the load status between distributed servers (110) and the conditions of the server network (100).

[0121] Next, after step (f), step (g) may be further performed, in which the distributed server (110) determines whether it is possible to process the reservation request based on the priority determined in step (f), and if possible, performs the reservation processing to generate reservation information.

[0122] That is, in this step (g), a process is performed in which a distributed server (110) determines whether a reservation is possible for each reservation request. Each distributed server (110) checks whether the reservation request assigned to it can be processed, and if the reservation can be processed, generates reservation information for the reservation request.

[0123] During this process, reservation information is stored in a distributed server (110), and data indicating that each reservation request has been successfully processed is generated. Conversely, if a reservation for a reservation request is not possible, the distributed server (110) can generate reservation failure information.

[0124] After step (g), step (h1) in which the information synchronization unit (112) distributes the reservation information to the server network (100) may be further performed.

[0125] This process is a process of distributing reservation information generated as a result of reservation processing to a server network (100). The information synchronization unit (112) ensures that the reservation information is synchronized in real time with other distributed servers (110) within the server network (100), thereby enabling all distributed servers (110) within the server network (100) to share the same reservation information.

[0126] This ensures data consistency among all distributed servers (110) and allows for unified information to be provided throughout the reservation system.

[0127] Additionally, after step (g), step (h2) in which the distributed server (110) transmits reservation information to the user terminal (10) may be further performed.

[0128] This process is a process of delivering the result to the user after the reservation has been successfully processed. The distributed server (110) transmits the reservation information to the user terminal (10), and the user can check whether the reservation was successful and the reservation details on the user terminal (10) they own.

[0129] As described above, this embodiment utilizes a distributed server network (100) so that distributed servers (110) distributed across multiple regions appropriately distribute and process requests according to the location of the user terminal (10), thereby preventing performance degradation even in situations where reservation requests are concentrated, and from the user's perspective, waiting time is reduced and reservations can be completed more quickly.

[0130] In addition, the present invention includes a time synchronization module (400) utilizing an atomic clock (20), so that time information between distributed servers (110) can be accurately synchronized in nanoseconds.

[0131] As a result, even when simultaneous reservation requests occur, the time of each request can be accurately recorded, and reservation priorities can be assigned fairly.

[0132] In addition, since the present invention can process reservation requests in a distributed manner based on the location information of the user terminal (10), the reservation can be processed at the distributed server (110) closest to the location of the user terminal (10), and network latency can be minimized.

[0133] Meanwhile, in the present invention, the atomic clock (20) is not a clock synchronized with the outside, but measures time using the natural vibration frequency of atoms within the clock, so even if the distributed servers (110) are distributed to various locations on Earth, the possibility of time distortion occurring is generally low.

[0134] However, since the altitude of the distributed server (110) can cause a difference due to gravity, there is a possibility that a time difference may occur due to a difference in gravity based on the theory of relativity.

[0135] In other words, gravitational parallax can vary primarily depending on altitude, and this can be designed to reflect the gravitational time dilation effect derived from the theory of relativity.

[0136] Accordingly, in one embodiment of the present invention, a distortion correction algorithm may be applied to correct time distortion that may occur as the magnitude of gravity changes.

[0137] The distortion correction algorithm first begins with the process of measuring the gravitational field at the point where the distributed server (110) is located, or calculating the expected gravitational value based on the altitude and geographical coordinates.

[0138] The gravitational field varies depending on the distance from the center of the Earth, i.e., altitude, and based on this, the gravitational acceleration at the altitude where each distributed server (110) is located can be calculated. Since changes in gravitational acceleration affect the flow of time, it is necessary to accurately calculate the gravitational acceleration according to the altitude of each distributed server (110).

[0139] And for calculating gravity by altitude, the following mathematical formula 1 can be applied.

[0141] <Mathematical Formula 1>

[0142]

[0144] In Equation 1, g(h) is the acceleration due to gravity at altitude h, g0 is the acceleration due to gravity at sea level (approx. 9.81 m / s²), and R is the radius of the Earth (approx. 6,371 km).

[0145] Subsequently, by applying the gravitational time dilation formula derived from general relativity to calculate the time distortion caused by gravity, the speed at which time flows at the altitude where each server is located can be calculated.

[0146] Accordingly, the tendency for time to flow faster for distributed servers (110) at higher altitudes and slower for distributed servers (110) at lower altitudes can be reflected. Therefore, when time synchronization between distributed servers (110) is achieved, the time difference caused by gravity can be predicted in advance, and a value to correct it can be calculated.

[0147] At this time, the time distortion due to the gravitational field can be calculated through the following mathematical formula 2.

[0149] <Mathematical Formula 2>

[0150]

[0152] In Equation 2, t0 is the reference time, G is the gravitational constant, M is the mass of the Earth, R is the distance from the server location to the center of the Earth, and c is the speed of light.

[0153] In the next step, when each distributed server (110) requests time synchronization from the atomic clock (20), the altitude and location information of the server are transmitted together. This is to provide information necessary to correct time distortions caused by differences in gravity in the region where the server is located.

[0154] Time information received from the atomic clock (20) is corrected based on a correction value adjusted to the altitude of each distributed server (110), thereby synchronizing the corrected time in each distributed server. For example, since time flows faster in a server located in a high-altitude area, synchronization can be achieved by correcting the time information transmitted to the distributed server (110) by delaying it.

[0155] After such correction is performed, each distributed server (110) synchronizes with the time received from the atomic clock (20) using the corrected time information. This corrects the time difference that may occur due to the difference in gravity and enables time synchronization between the distributed servers (110).

[0156] Afterwards, the time synchronization status between servers can be verified periodically, and if additional time differences occur due to gravity differences, this can be corrected again to maintain time consistency between distributed servers (110).

[0157] As described above, the distortion correction algorithm according to the present invention can correct time distortion by considering the altitude and gravity difference where the distributed server (110) is located, thereby enabling accurate time synchronization even between distributed servers (110) distributed globally.

[0158] Preferred embodiments according to the present invention have been described above, and it is obvious to those skilled in the art that, in addition to the embodiments described above, the present invention may be embodied in other specific forms without departing from the spirit or scope thereof. Therefore, the embodiments described above should be regarded as illustrative rather than restrictive, and accordingly, the present invention is not limited to the description above but may be modified within the scope of the appended claims and their equivalents. Explanation of the symbols

[0159] 10: User terminal 20: Atomic Clock 100: Server Network 110: Distributed Server 111: Identifier Generation Section 112: Information Synchronization Unit 200: Location Analysis Module 300: Distributed processing module 400: Time synchronization module

Claims

Claim 1 A reservation system that provides a reservation service using distributed servers comprises: a server network including a plurality of distributed servers distributed independently of each other according to region; a location analysis module that analyzes location information of a user terminal; a distributed processing module that allocates a distributed server to perform processing for a reservation request generated from the user terminal based on the location information of the user terminal analyzed by the location analysis module; and a time synchronization module that synchronizes time information between the plurality of distributed servers by receiving time information from an atomic clock and distributing it to the server network; wherein the distributed server includes an identifier generation unit that identifies the time at which the reservation request is generated from the user terminal based on the time information and allocates a reservation identifier, and the identifier generation unit generates a unique random number for the reservation request generated from the user terminal and allocates it as a reservation identifier, wherein the unique random number has a random number pattern in seconds, and a first random number pattern area in which a random number is generated based on seconds during the time at which the reservation request occurred; A distributed reservation system comprising: a second random number pattern region having a nanosecond unit random number pattern corresponding to a nanosecond between 0 and 1 billion; formed to express different random number patterns corresponding to every second thereafter starting from January 1, 1970, and thus set to have a number of cases of 10 to the power of 35 or more; and calculating the gravitational acceleration at the altitude where each of the plurality of distributed servers is located, and calculating the speed at which time flows at the altitude where each server is located based on general relativity, and then predicting the time difference caused by gravity when time synchronization between the distributed servers is performed and calculating a correction value, and then performing a distortion correction algorithm to correct the time information received from the atomic clock based on the correction value adjusted to the altitude of each of the plurality of distributed servers and then synchronizing to correct the time difference caused by the difference in gravity. Claim 2 delete Claim 3 A distributed reservation system according to claim 1, wherein the distributed server further comprises an information synchronization unit that distributes identification information of the reservation identifier assigned to the reservation request by the identifier generation unit to the server network. Claim 4 delete Claim 5 delete Claim 6 (a) synchronizing time information between multiple distributed servers included in a server network using time information from an atomic clock; (b) analyzing location information of a user terminal where a reservation request was generated through a location analysis module; (c) assigning a distributed server on the server network to perform processing for a reservation request generated from the user terminal based on the location information of the user terminal analyzed by the location analysis module; (d) assigning a reservation identifier by an identifier generation unit of the distributed server to which the reservation request was assigned in step (c) by identifying the time when the reservation request was generated based on the time information; and the information synchronization unit of the distributed server distributes the identification information of the reservation identifier assigned to the reservation request by the identifier generation unit to the server network (e); wherein the (d) step comprises: the identifier generation unit generating a unique random number for the reservation request generated from the user terminal and assigning it as a reservation identifier; wherein the unique random number has a random number pattern in seconds, and includes a first random number pattern area in which a random number is generated based on seconds during the time the reservation request occurred; and a second random number pattern area having a random number pattern in nanoseconds corresponding to nanoseconds between 0 and 1 billion, 1970.01.A method for operating a distributed reservation system, wherein the unique random number is formed to express different random number patterns corresponding to every second thereafter starting from 01, and is set to have a number of cases of 10 to the power of 35 or more, and calculates the gravitational acceleration at the altitude where each of the plurality of distributed servers is located, calculates the speed at which time flows at the altitude where each server is located based on general relativity, and calculates a correction value by predicting the time difference caused by gravity when time synchronization between the distributed servers is performed, and then performs a distortion correction algorithm to correct the time information received from the atomic clock based on the correction value adjusted to the altitude of each of the plurality of distributed servers and synchronizes it to correct the time difference caused by the difference in gravity. Claim 7 In claim 6, the above step (a) comprises: a step (a-1) in which a time synchronization module receives time information of the atomic clock; a step (a-2) in which the time synchronization module distributes the time information to the server network; and a step (a-3) in which the distributed server of the server network performs synchronization for the time information; a method for operating a distributed reservation system. Claim 8 In claim 6, the above step (a) is performed repeatedly according to a pre-set period, a method for operating a distributed reservation system. Claim 9 delete Claim 10 delete Claim 11 A method for operating a distributed reservation system according to claim 6, wherein, after step (e) above, step (f) is further performed in which the distributed server determines the priority on the server network for the reservation request. Claim 12 A method for operating a distributed reservation system according to claim 11, wherein after step (f) above, step (g) is further performed, wherein the distributed server determines whether it is possible to process the reservation request based on the priority determined in step (f), and if possible, performs the reservation processing to generate reservation information. Claim 13 A distributed reservation system operation method according to claim 12, wherein after step (g) above, step (h1) in which the information synchronization unit distributes the reservation information to the server network is further performed. Claim 14 A method for operating a distributed reservation system according to claim 12, wherein, after step (g) above, step (h2) in which the distributed server transmits the reservation information to the user terminal is further performed.

Citation Information

Patent Citations

  • Judgement system for location of network idendifier and method thereof

    KR101127794B1

  • System and method for booking ticket

    KR1020060054591A

  • Media server selection system and method for providing web-based group call low latency service

    KR1020210142912A

  • Distributed server control method and its device, and recording medium with distributed server control program recorded thereon

    JP2002082924A

  • Reservation system and reservation receiving server

    JP2004178436A