Information processing apparatus, server, and program
By employing a server with monitoring and adjustment capabilities to manage access timings for POS devices, the system effectively distributes access loads, mitigating the risk of server and network overload and associated costs.
Patent Information
- Application Number
- JP2023176161
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-10-11
- Publication Date
- 2025-04-23
- Estimated Expiration
- 2043-10-11
AI Technical Summary
In systems managing multiple POS devices, the load on the device management server and network can become high due to simultaneous access during regular operations or polling, leading to potential access biases and increased costs for performance enhancements and bandwidth.
The implementation of a server with storage, verification, extraction, and transmitting means that monitors access numbers per unit time, checks for threshold exceedance, extracts devices for timing adjustments, and transmits instructions to change access timings, thereby distributing access effectively.
This solution ensures that access timings are dynamically adjusted to maintain an even distribution of accesses, preventing overload on the device management server and network, and thereby reducing the need for additional performance enhancements or increased bandwidth.
Smart Images

Figure 2025066503000001_ABST
Abstract
Description
[Technical field]
[0001] An embodiment of the present invention relates to an information processing device, a server, and a program. [Background technology]
[0002] Various information processing devices used in the payment processing system for store business activities, such as POS (Point of Sales) devices and their peripheral devices (hereinafter referred to as POS devices), are important devices. Therefore, when grasping the status of POS devices or when a problem occurs, it is necessary to obtain information from the POS devices and take a quick response.
[0003] Currently, in order to achieve this, a device management server is deployed, and the POS device sends status information to the device management server, allowing the operating status to be grasped remotely. From the information sent, the store manager determines the necessary action instructions according to the status (event) that has occurred in the POS device, and sets them in the device management server.
[0004] There are two methods for the timing of access between the device management server and the POS device: emergency information transmission and periodic information transmission.
[0005] Urgent information transmission is something that the POS device or device management server accesses immediately when necessary. Periodic information transmission can be achieved by the device management server sending "instructions" to the POS device at a fixed time (hereafter referred to as "fixed-time transmission"), or by the POS device periodically inquiring to the device management server whether there are any "instructions" (hereafter referred to as "polling").
[0006] When there are many POS devices to be managed by the device management server, if many accesses occur at once due to scheduled sending or polling, the load on the device management server and the network will be high. For this reason, the timing of accesses from the POS devices to the device management server is distributed.
[0007] Fixed-time delivery is controlled by adjusting the interval at which the device management server sends messages to the POS device. The polling interval from the POS device is managed by initially setting the access timing for each POS device to prevent access concentration. By controlling the access timing of each POS device to the device management server, it is possible to avoid access concentration and adjust the load on the device management server or network, etc. Therefore, the device specifications and network usage fees for the device management server can be calculated.
[0008] However, in actual operation of polling, the timing of access to the device management server by the POS device may vary due to the processing load of the POS device, fluctuations in network traffic, etc., and the distribution may not be as initially planned. Therefore, in order to ensure responsiveness to the POS device even if access is biased, it may be necessary to increase the performance of the device management server, incur additional charges due to unplanned network usage, or increase the bandwidth.
[0009] For this reason, in the actual operating conditions of polling, it is necessary to control the access timing to the device management server according to the access conditions of the POS devices to the device management server, thereby maintaining the initially planned distribution conditions. [Prior art documents] [Patent documents]
[0010] [Patent Document 1] JP 2003-143212 A Summary of the Invention [Problem to be solved by the invention]
[0011] An object of the present invention is to provide an information processing device, a server, and a program capable of distributing access by controlling access timing appropriate to the access situation. [Means for solving the problem]
[0012] According to an embodiment, the server has a storage means, a confirmation means, an extraction means, and a transmission means. The storage means stores the number of accesses per unit time from a plurality of information processing devices for a plurality of unit times. The confirmation means confirms for each of the plurality of unit times whether the number of accesses per unit time exceeds a preset threshold. The extraction means extracts information processing devices to distribute the access timing from the information processing devices that were accessed during the unit time confirmed to be in a state exceeding the threshold, based on the number of accesses for each information processing device. The transmission means transmits an instruction to change the access timing to the information processing devices to distribute the access timing. [Brief description of the drawings]
[0013] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a system according to the present embodiment. [Diagram 2] FIG. 2 is a block diagram showing an example of the main circuit configuration of the device management server in this embodiment. [Diagram 3] FIG. 3 is a block diagram showing an example of the configuration of a store system in this embodiment. [Figure 4] FIG. 4 is a block diagram showing an example of the main circuit configuration of the POS device according to this embodiment. [Diagram 5] FIG. 5 is a flowchart for explaining the connection number setting process (setting function) by the device management server in this embodiment. [Figure 6] FIG. 6 is a diagram showing an example of a connection number setting screen in this embodiment. [Figure 7] FIG. 7 is a flowchart illustrating the timing change process in this embodiment. [Figure 8] FIG. 8 is a flowchart illustrating the timing change process in this embodiment. [Figure 9]FIG. 9 is a diagram showing an example of a server inquiry time record stored in the device management server in this embodiment. [Figure 10] FIG. 10 is a conceptual diagram for explaining the access frequency table in this embodiment. [Figure 11] FIG. 11 is a conceptual diagram for explaining the access frequency table in this embodiment. [Figure 12] FIG. 12 is a diagram showing an example of a compilation of the access frequency table. [Figure 13] FIG. 13 is a diagram showing an example of a counting process in the access frequency table. [Figure 14] FIG. 14 is a diagram showing the aggregated contents of the server inquiry time records in the access frequency table shown in FIG. [Figure 15] FIG. 15 is a diagram showing an example of a compilation of the access frequency table. [Figure 16] FIG. 16 is a diagram showing the aggregated contents of the server inquiry time records in the access frequency table shown in FIG. [Figure 17] FIG. 17 is a diagram showing an example of a compilation of the access frequency table. [Figure 18] FIG. 18 is a diagram showing the aggregated contents of the server inquiry time records in the access frequency table shown in FIG. [Figure 19] FIG. 19 is a flowchart for explaining the timing change process in this embodiment. [Figure 20] FIG. 20 is a flowchart for explaining the inquiry process in this embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0014] Hereinafter, the present embodiment will be described with reference to the drawings. Fig. 1 is a diagram showing an example of the configuration of a system according to the present embodiment. The system shown in Fig. 1 shows an example of the configuration for managing various information processing devices used in a store system for settlement operations in store business activities, such as a POS (Point of Sales) device and its peripheral devices (hereinafter, these are also referred to as POS devices), a server, etc.
[0015] In the system shown in FIG. 1, a device management server 10 and a plurality of store systems 30 are connected to each other so as to be able to communicate with each other via a network 5 including a local area network (LAN), a wide area network (WAN), the Internet, and the like.
[0016] The device management server 10 manages various POS devices used in a store system installed in at least one store. Based on inquiries (polling) from the POS devices, the device management server 10 monitors the operation status of the POS devices and notifies an administrator or the like according to the operation status. When a problem occurs in a POS device, for example, an administrator sets instructions required to deal with the problem and notifies the POS device.
[0017] The store system 30 is configured as, for example, a POS (Point Of Sales) system, and includes various information processing devices (POS devices) installed to sell products in the store. The POS devices include, for example, a store server that manages the devices in the store, a registration machine that registers products to be purchased by customers, an accounting machine that processes the accounting for the products registered in the registration machine, a POS device that executes product registration and accounting, a journal server that records sales of products, etc., an order terminal where customers in a restaurant order products, etc., and other peripheral devices (printer device, storage device, display device, etc.). The information processing device (POS device) may be a device dedicated to the POS system, or may be a general-purpose electronic device such as a personal computer (PC), tablet PC, or smartphone with a POS application program, etc. installed.
[0018] In this embodiment, an example is described in which the device management server 10 manages POS devices installed in each of a plurality of store systems 30 by polling from the POS devices. However, for example, a device management server 10 may be provided in each store system 30, and a POS device may be managed for each store.
[0019] In addition, in this embodiment, the device management server 10 manages POS devices used in the store system 30, but the device management server 10 can also be used for information processing devices used in other systems. In other words, the device management server 10 can be applied to a system other than the store system 30 (POS system) as long as the system allows an information processing device to make an inquiry (polling) to the device management server.
[0020] Furthermore, the device management server 10 in this embodiment may be realized not only by one computer, but also by a plurality of servers working together, that is, as a so-called cloud service.
[0021] 2 is a block diagram showing an example of a main circuit configuration of the device management server 10 in this embodiment. The device management server 10 includes a control unit 11, a storage unit 12, a communication interface (I / F) 13, a display unit 14, an operation unit 15, and a system transmission path 19.
[0022] The device management server 10 constitutes a computer by connecting the control unit 11, the storage unit 12, and the communication interface 13 via a system transmission path 19. The device management server 10 then connects devices such as a display unit 14 and an operation unit 15 to the computer via the system transmission path 19.
[0023] The control unit 11 corresponds to the central part of the computer. The control unit 11 includes a processor such as a CPU (Central Processing Unit), and controls each part to realize various functions of the device management server 10 according to an operating system or an application program. The control unit 11 is preferably a multi-core or multi-thread type capable of executing multiple processes in parallel.
[0024] The memory unit 12 corresponds to the main memory and auxiliary memory of the computer. The main memory includes a non-volatile memory area and a volatile memory area. The non-volatile memory area stores an operating system or an application program. The main memory may store data required for the control unit 11 to execute processes for controlling each unit in a non-volatile or volatile memory area. The volatile memory area is used as a work area where data is appropriately rewritten by the control unit 11. The non-volatile memory area is, for example, a ROM (Read Only Memory). The volatile memory area is, for example, a RAM (Random Access Memory).
[0025] The auxiliary storage section may be, for example, an EEPROM (Electrically Erasable and Programmable ROM), an HDD (Hard disk drive), or an SSD (Solid State Drive). The auxiliary storage section stores data used by the control section 11 when performing various processes, data created by the processes in the control section 11, etc. The auxiliary storage section may also store the above-mentioned application programs.
[0026] The application programs stored in the storage unit 12 include an access control program for monitoring the polling status from multiple POS devices and controlling the access timing from the POS devices according to the polling status. The access control program manages polling from the POS devices managed by the store system 30 and realizes a function of controlling the polling interval (access timing) at which the POS devices execute polling so as to prevent access concentration. The access control program realizes a function of extracting POS devices for which the access timing is to be changed and notifying the relevant POS devices of an instruction to change the access timing (timing change process) when a situation occurs in which access from multiple POS devices is concentrated (a situation in which the number of accesses per unit time exceeds a preset threshold).
[0027] The storage unit 12 stores initial setting data indicating the polling interval initially set for the POS devices to be managed, and connection number setting data (hereinafter sometimes referred to as "access number threshold") for controlling the polling interval (access timing) of the POS devices. The initial setting data sets a polling interval with adjusted access timing for each POS device so that accesses to the device management server 10 by polling from multiple POS devices are not concentrated. The connection number setting data indicates a threshold for the number of POS devices accessing the device management server 10 per unit time (total number (access count)), and is set by an administrator of the device management server 10, for example.
[0028] The storage unit 12 also stores a server inquiry time record and an access frequency table as information collected to manage the access status from the POS devices of the store system 30. The server inquiry time record is data in which, for example, a POS device number that identifies a POS device is associated with the time of polling (inquiry time) received from the POS device 310 indicated by the POS device number. The access frequency table is data in which the number of accesses per unit time from multiple POS devices is tallied for multiple unit times.
[0029] The communication interface (I / F) 13 is a device that controls communication with the store system 30 (POS device) via the network 5.
[0030] The display unit 14 is configured, for example, with a liquid crystal display or the like, and displays information according to the processing executed by the control unit 11. The operation unit 15 is configured with a pointing device such as a keyboard and a mouse, and inputs data according to operations by an administrator of the device management server 10, etc. Note that a touch panel that integrates the display unit 14 and the operation unit 15 may be provided.
[0031] 3 is a block diagram showing an example of the configuration of a store system 30 according to this embodiment. The store system 30 includes a plurality of POS devices 310 and 320, a store server 311, an access point 340, a communication device 360, a network 350, and the like.
[0032] The POS devices 310 are various information processing devices used in systems for settlement operations in store business activities, and are communicatively connected to other devices via a network 350 in, for example, the store system 30. The POS devices 310 include, for example, a registration machine, an accounting machine, a POS device, a journal server, and the like.
[0033] The POS device 320 is any of various information processing devices used in a system for settlement operations in store business activities, and is connected by wireless communication to be able to communicate with other devices through the access point 340 and the network 350 in the store system 30, for example. The POS device 320 is, for example, an electronic device (e.g., a tablet PC) in which a POS application program or the like is installed, or a portable electronic device that can be attached to a cart and can register products to be purchased by customer operations, and even process payments for registered products.
[0034] The store server 311 is a computer that has a product master that stores product data such as the product name and unit price of each product sold in the store, and collects and tallys up sales data of products that have been paid for, and manages the sales, inventory, etc. of the entire store.
[0035] The POS devices 310, 320 and the store server 311 are managed by the device management server 10, and are provided with various polling-related functions. For example, the POS devices 310, 320 and the store server 311 have a polling function (inquiry processing) that polls the device management server 10 based on a polling interval that is preset for each POS device, so as to prevent concentration of access to the device management server 10. When an access timing change instruction is received from the device management server 10, the polling function can change the polling timing in response to this access timing change instruction.
[0036] The access point 340 controls wireless communication with the POS device 320 .
[0037] The communication unit 360 communicates with the device management server 10 through the network 5 .
[0038] 4 is a block diagram showing an example of the main circuit configuration of the POS device 310 in this embodiment. Note that the POS device 320 and the store server 311 basically have the same configuration as the POS device 310, so their explanations will be omitted.
[0039] The POS device 310 includes a control unit 31, a storage unit 32, a communication interface (I / F) 33, a display unit 34, an operation unit 35, a system transmission path 39, and the like.
[0040] The POS device 310 configures a computer by connecting the control unit 31, the storage unit 32, and the communication interface 33 via a system transmission path 39. The POS device 310 connects devices such as a display unit 34 and an operation unit 35 to the computer via the system transmission path 39.
[0041] The control unit 31 corresponds to the central part of the computer. The control unit 31 includes a processor such as a CPU (Central Processing Unit), and controls each part to realize various functions of the POS device 310 according to an operating system or an application program. The control unit 31 is preferably a multi-core or multi-thread type capable of executing multiple processes in parallel.
[0042] The memory unit 32 corresponds to the main memory and auxiliary memory of the computer. The main memory includes a non-volatile memory area and a volatile memory area. The non-volatile memory area stores an operating system or application programs. The main memory may store data required for the control unit 31 to execute processes for controlling each unit in a non-volatile or volatile memory area. The volatile memory area is used as a work area where data is appropriately rewritten by the control unit 31. The non-volatile memory area is, for example, a ROM. The volatile memory area is, for example, a RAM.
[0043] The auxiliary storage section may be, for example, an EEPROM, a HDD, or an SSD. The auxiliary storage section stores data used by the control section 31 when performing various processes, data created by the processes in the control section 31, etc. The auxiliary storage section may also store the above-mentioned application programs.
[0044] The application programs stored in the storage unit 32 include control programs, including a polling control program, for sending information (urgent information sending, periodic information sending) to the device management server 10. The polling control program is for sending periodic information, and is a program for implementing a polling function for polling at preset intervals. In the polling function, the device management server 10 is polled based on a polling interval that is initially set in advance for each POS device so that access to the device management server 10 is not concentrated. In the polling function, when an access timing change instruction is received from the device management server 10, the polling timing can be changed in response to this access timing change instruction.
[0045] In addition, various data necessary for implementing the polling function in accordance with the execution of the polling control program are stored in the storage unit 32. For example, the storage unit 32 stores a connection timing delay value notified from the device management server 10, an update flag for controlling the inquiry (polling) process, and the like.
[0046] The communication interface (I / F) 33 is a device that controls communication with the store server 311 of the store system 30, the communication device 360, and the like via the network 350 of the store system 30.
[0047] The display unit 34 is configured with, for example, a liquid crystal display, and displays information according to the processing executed by the control unit 31. The operation unit 35 is configured with a keyboard and a pointing device, and inputs data according to operations by an operator (a store clerk, a customer, etc.) of the POS device 310. A touch panel that integrates the display unit 34 and the operation unit 35 may be provided.
[0048] Next, operations related to polling of the store system in this embodiment will be described.
[0049] First, a description will be given of the connection number setting process (setting function) performed by the device management server 10 in this embodiment. Fig. 5 is a flowchart for explaining the connection number setting process (setting function) performed by the device management server 10 in this embodiment.
[0050] The connection number setting process (setting function) sets a reference value for checking whether access from multiple POS devices 310 to the device management server 10 is not distributed as originally planned and an adjustment to the access timing is required, i.e., a threshold value for the number of POS devices (total number) accessing the device management server 10 per unit time.
[0051] When an administrator issues a request to set the number of connected devices by performing a predetermined operation on the operation unit 15 (Act 10, Yes), the device management server 10 (control unit 11) starts the number of connected devices setting process.
[0052] First, the control unit 11 causes the display unit 14 to display a connection number setting screen (Act 11). The control unit 11 accepts a setting operation of registration information using the operation unit 15 in a setting area displayed on the connection number setting screen (Act 12).
[0053] FIG. 6 is a diagram showing an example of the connection number setting screen 50 in this embodiment.
[0054] The connection number setting screen 50 is provided with a setting area 52, a setting button 54, a delete button 55, and a cancel button 56.
[0055] The setting area 52 is an area for setting the number of POS devices (total number) that will access the device management server 10 per unit time. The set button 54 is a button for receiving an instruction to reflect (update) the contents set on the connection number setting screen 50 in the connection number setting data. The delete button 55 is a button for receiving an instruction to delete the current setting contents displayed on the connection number setting screen 50. The cancel button 56 is a button for receiving an instruction to invalidate the current setting contents displayed on the connection number setting screen 50 and end the process.
[0056] The setting area 52 is provided with a time unit setting area 523 for specifying a time unit, a list button 525, and a number of connected devices setting area 526 for specifying the number of POS devices to be used as the threshold for the number of accesses to the device management server 10 per unit time corresponding to the time unit displayed in the time unit setting area 523.
[0057] Operating list button 525 displays a list of time units, and by selecting any one of the time units from the list, the selected time unit can be displayed in time unit setting area 523. Specifically, there are seconds, minutes, hours, days, etc. Furthermore, instead of setting only the time unit, it is also possible to set the time unit together with any value, such as 10 seconds or 5 minutes.
[0058] By inputting a time unit (or a numerical value indicating a time) in the connection number setting area 526 by operating the operation unit 15, an arbitrary unit time can be set in the time unit setting area 523.
[0059] In this way, it is possible to set an arbitrary unit time and set a threshold value (number of connections) for the number of accesses to the device management server 10 during that unit time. This makes it possible to set conditions suitable for monitoring the access status by polling the device management server 10 according to the performance of the device management server 10, the scale of the network, the scale of the store system such as the number of POS devices to be managed, etc.
[0060] When data (registration information) is input by a setting operation to the setting area displayed on the connection number setting screen 50 and the Set button 54 is operated (Act 16, Yes), the control unit 11 updates the connection number setting data (Act 17). That is, the control unit 11 updates the connection number setting data indicating the time unit and the number of connected devices to the contents set on the connection number setting screen 50.
[0061] Furthermore, when the Delete button 55 is operated (Act 13, Yes), the control unit 11 sets the connection number setting data corresponding to the current setting content displayed on the connection number setting screen 50 to an invalid value (NULL value) (Act 14).
[0062] Furthermore, when the cancel button 56 is operated (Act 15, Yes), the control unit 11 invalidates the current setting contents displayed on the connection number setting screen 50 and ends the connection number setting process.
[0063] In this manner, in the connection number setting process (setting function) in this embodiment, the connection number setting data for controlling the access timing by the POS devices executed by the device management server 10 can be set through the connection number setting screen 50 by the operation of an administrator or the like.
[0064] In the above explanation, the connection number setting process (setting function) causes the connection number setting screen 50 to be displayed on the display unit 14 of the device management server 10, and various polling-related settings are made by operating the operation unit 15. However, it is also possible to enable other devices to set the connection number setting data on the device management server 10 in the same manner as described above.
[0065] For example, other information processing devices, such as the store server 311 in the store system 30 or another device management server 10 in the store system 30, execute the connection number setting process (setting function) for the POS device to be set in the same manner as described above through a web screen (connection number setting screen 50) made public by the device management server 10.
[0066] Also, in another information processing device, the connection number setting process (setting function) may be executed in the same manner as described above, and the setting contents (connection number setting data) may be transmitted to the device management server 10 to be stored therein.
[0067] Next, a description will be given of the timing change process by the device management server 10 in this embodiment. Figures 7 and 8 are flowcharts for explaining the timing change process in this embodiment.
[0068] The control unit 11 of the device management server 10 realizes the timing change process by an access control program. In the timing change process, when access from multiple POS devices is concentrated (when the number of accesses per unit time exceeds a preset threshold), the control unit 11 extracts the POS devices whose access timing is to be changed, and notifies the relevant POS devices of an instruction to change the access timing.
[0069] In this embodiment, the POS device 310 executes polling according to the polling timing (polling interval) initially set by the inquiry process (polling execution process). For the POS device 310, the access timing is initially set for each POS device so that the access due to polling to the device management server 10 is not concentrated. The POS device 310 executes polling to the device management server 10 according to the polling timing (polling interval) that is individually set.
[0070] It is assumed that the POS device 310, the POS device 320, and the store server 311 execute polling in the same manner. In the following, only the POS device 310 will be described.
[0071] The inquiry process (polling execution process) by the POS device 310 will be described in detail later (FIGS. 19 and 20).
[0072] The device management server 10 receives polling transmitted by the POS device 310 in response to the inquiry process, and records a server inquiry time record for the polling.
[0073] 9 is a diagram showing an example of a server inquiry time record stored in the device management server 10 in this embodiment. In the server inquiry time record, for each polling from the POS device 310, a POS device number that identifies the POS device and the time (inquiry time) of the polling received from the POS device 310 indicated by the POS device number are stored in association with each other.
[0074] The device management server 10 can monitor the status of polling from the POS device based on the server inquiry time record.
[0075] The control unit 11 of the device management server 10 determines whether there is a valid setting for the access count threshold. That is, the control unit 11 determines whether connection count setting data indicating the time unit and the number of connected devices, which indicates the threshold for the number of POS devices (total number) accessing the device management server 10 per unit time, is set.
[0076] If there is no valid setting for the access count threshold (Act 20, No), the control unit 11 enters a state of waiting for the setting of a valid access count threshold. If access from a large number of POS devices is concentrated while the control unit 11 is in the state of waiting for the setting of the access count threshold, a warning is notified to the administrator of the device management server 10. Furthermore, without being limited to this, if access from a large number of POS devices is concentrated while the control unit 11 is in the state of waiting for the setting of the access count threshold, the control unit 11 may temporarily block access from some of the POS devices that have been set in advance.
[0077] On the other hand, if there is a valid setting for the access count threshold (Act 20, Yes), the control unit 11 monitors the polling status for the server query time records that record polling from multiple POS devices based on the valid access count threshold (connection count setting data).
[0078] The control unit 11 acquires the server inquiry time record (Act 21), generates an access frequency table that compiles the access frequency (number of times) of the POS devices per unit time according to the connection number setting data, and stores the access frequency table in the storage unit 12 (Act 22). That is, the access frequency table is data for storing the number of accesses per unit time from multiple POS devices for multiple unit times.
[0079] Here, the access frequency table will be explained.
[0080] 10 and 11 are conceptual diagrams for explaining the access frequency table in this embodiment.
[0081] As shown in FIG. 10, the access frequency table defines the unit time (the time unit set on the connection number setting screen 50) indicated by the connection number setting data for aggregating the server query time records, and the number of POS devices that is the threshold for the number of accesses to the device management server 10 per unit time.
[0082] Fig. 10 shows an example of an access frequency table defined according to a unit time of "1 second" and a number of POS devices (total number) of "10 devices" in accordance with the settings made on the connection number setting screen 50 shown in Fig. 6. That is, in the access frequency table shown in Fig. 10, server inquiry time records of polling received during each unit time of "1 second" (access from a POS device) are tallied. If the number of accesses per unit time (number of accesses) does not exceed the number of devices "10 devices" shown in range 60 in Fig. 10, it can be confirmed that the access situation to the device management server by multiple POS devices is in the distributed situation initially planned by the initial setting.
[0083] Figure 11 shows an example of the server query time records in the access frequency table. Figure 11 shows that there were accesses from 6 POS devices (total number) per second. In this case, it can be confirmed that the distribution is as expected.
[0084] The control unit 11 checks whether the number of accesses per unit time indicated in the access frequency table exceeds the threshold number of devices (total number) of "10 devices".
[0085] For example, the control unit 11 checks a certain range of time going back from the time of confirmation, as in the access frequency table shown in Fig. 12. In the example shown in Fig. 13, for a range 62 of a preset time (e.g., 10 seconds) from the time of confirmation (time "12:00:00") to time "12:00:10", it checks whether each of the access counts 64 tallied per unit time exceeds a threshold value.
[0086] The range 62 is, for example, the time during which changes in the access timing are permitted (the permitted change time), and may be determined in advance for each unit of time (seconds, minutes, hours, days, etc.), or may be changeable, for example, by an administrator depending on the performance of the device management server 10 or the POS device.
[0087] Here, a situation in which the number of accesses per unit time exceeds a threshold (number of devices) refers to a case in which the number of accesses exceeds the threshold, as well as a case in which, for example, a trend in the number of accesses per unit time is predicted by statistics or the like to exceed the threshold within a predetermined time. The predetermined time can be the unit time multiplied by a specified value (for example, a fixed value, or a value designated by an administrator). Alternatively, a situation in which the number of accesses per unit time exceeds the threshold (number of devices) may be determined when the number of accesses per unit time is equal to or greater than a predetermined ratio (for example, 90%) of the threshold. Other determination methods may also be used.
[0088] When the control unit 11 confirms that the number of accesses per unit time does not exceed the threshold (Act 23, No), it repeats the same process as described above while changing the time point of confirmation. That is, the control unit 11 acquires the server inquiry time record, generates an access frequency table that compiles the access frequency (frequency) of the POS device per unit time according to the connection number setting data, and confirms whether the number of accesses per unit time exceeds the threshold (Act 20 to Act 23).
[0089] On the other hand, if the control unit 11 confirms that the number of accesses per unit time exceeds the threshold (Act 23, Yes), in order to resolve the situation in which the number of accesses exceeds the threshold, it extracts POS devices whose access timing should be distributed, and obtains a connection delay value indicating the amount of change in the access timing for distribution (Act 24) (details will be described later).
[0090] When the control unit 11 has completed the extraction of the POS devices to be distributed and the acquisition of the connection delay values, it transmits the connection delay value (the amount of change in the access timing) together with an instruction to change the access timing to the corresponding POS device (Act 25).
[0091] The POS device that has received the instruction to change the access timing changes the access timing according to the connection delay value, and executes a polling inquiry to the device management server 10. Details of the inquiry process by the POS device will be described later (FIGS. 19 and 20).
[0092] Here, a detailed description will be given of the extraction of POS devices to be distributed and the acquisition of a connection delay value in Act 24. Fig. 8 is a flowchart for explaining the process of extracting POS devices to be distributed and acquiring a connection delay value.
[0093] The control unit 11 executes the process described below while changing the unit time to be processed for each unit time in the access frequency table (Act 31).
[0094] Here, it is assumed that a situation has arisen in which the number of accesses per unit time exceeds a threshold, as in the access frequency table shown in Fig. 13. That is, although the initial settings are made so that the access timings of multiple POS devices are distributed in a predetermined manner, a unit time in which accesses are concentrated occurs due to, for example, a temporary increase in the processing load of a POS device or a delay caused by an increase in communication volume in the network. Fig. 13 shows an example in which the number of accesses per unit time from the times "12:00:00" and "12:00:01" exceeds the threshold, due to an increase in the number of accesses to POS device numbers "001", "002", and "017".
[0095] For example, the control unit 11 processes unit times in the order of the highest access frequency in the access frequency table. In the case of the access frequency table shown in Fig. 13, the unit time from the time "12:00:00" is the first unit time to be processed.
[0096] In addition, the unit times to be processed may not only be in descending order of access frequency, but also, for example, unit times including POS devices with a high number of accesses among unit times in which the number of accesses exceeds a threshold may be processed.
[0097] First, a variable value n for managing POS devices as candidates for changing the access timing in order of frequency of access within a unit time is set to an initial value "1" (Act 41).
[0098] Next, the control unit 11 checks whether the number of accesses per unit time exceeds the threshold value for the unit time to be processed. If it is confirmed that the number of accesses per unit time does not exceed the threshold value (Act 42, No), the control unit 11 determines that there is no POS device that needs to change the access timing, and changes the unit time to be processed (Act 31).
[0099] On the other hand, if it is confirmed that a situation exceeding the threshold has occurred (Act 42, Yes), the control unit 11 selects the POS device with the nth highest access frequency based on the server query time record aggregated for the unit time to be processed.
[0100] Fig. 14 is a diagram showing the summary contents of the server inquiry time records in the access frequency table shown in Fig. 13. As shown in Fig. 14, it can be seen that there are 12 accesses in the unit time from the time "12:00:00", exceeding the threshold. Since the highest access frequency in this unit time is "5", the POS device with the POS device number "POS_0001" corresponding to this access frequency is selected.
[0101] The control unit 11 refers to the access frequency table to check whether the server inquiry time record of the selected POS device (POS device number "POS_0001") is tallied in other unit times that are not the subject of processing. If there is a server inquiry time record in other unit times, even if the access timing of this POS device is changed, the access frequency in other unit times may exceed the threshold.
[0102] In the access frequency table shown in FIG. 13, the server inquiry time records for the POS device number "POS_0001" are present in the unit time from "12:00:09" and "12:00:10".
[0103] Therefore, in this case (Act 46, Yes), the control unit 11 excludes the selected POS device from candidates for timing change, increments the variable value n by "+1" (Act 48), and selects a POS device to be a candidate for the next timing change.
[0104] If a POS device cannot be selected as a candidate for the next timing change (Act 43, No), the control unit 11 transmits a warning to, for example, the administrator of the device management server 10 (Act 44). That is, the control unit 11 notifies the administrator that the number of accesses per unit time exceeds a threshold and that the situation cannot be resolved by adjusting the access timing (Act 44).
[0105] On the other hand, if the control unit 11 can select a POS device to be a candidate for the next timing change (Act 43, Yes), the control unit 11 executes the same process as described above. Here, as shown in Fig. 14, since the second highest access frequency is "4", the control unit 11 selects the POS device with the POS device number "POS_0002" corresponding to this access frequency (Act 43, Act 45).
[0106] Since the server inquiry time record of this selected POS device (POS device number "POS_0002") is not tallied in other unit times that are not the processing target (Act 46, No), the control unit 11 checks whether there is a vacancy for the number of accesses of the selected POS device (POS device number "POS_0002") in other unit times. In other words, it checks whether there is a unit time frame to be used as a candidate for the destination of the access timing.
[0107] For example, since the number of accesses per unit time from the time "12:00:00" of a POS device (POS device number "POS_0002") is four, a unit time with four available accesses is checked. Here, for example, the available status is checked from the unit time closest to the unit time being processed. Note that in addition to checking the available status from the unit time closest to the unit time being processed, it is also possible to select from the unit times with the most available access up to the threshold within the 10-second range 62.
[0108] Here, it is confirmed that there are four or more free units of time from the time "12:00:02". When the control unit 11 confirms that there is another unit of time (scheduled movement slot) that has free space for the number of accesses of the selected POS device from the unit of time to be processed (current slot) (Act 47, Yes), it calculates the time difference between the unit of time to be currently processed and the other unit of time that has been confirmed to have free space.
[0109] Here, the time difference "2 seconds" between the time "12:00:00" of the unit time to be processed (current slot) and the time "12:00:02" of another unit time (scheduled movement slot) that has availability is calculated.
[0110] The control unit 11 determines the POS device (POS device number "POS_0002") selected from the unit time to be processed as the POS device to be distributed, and records the time difference between the unit times ("2 seconds") in the memory unit 12 as a connection delay value (Act 49).
[0111] Also, the control unit 11 updates the access frequency table by reflecting the scheduled movement of the access timing (Act 50). That is, the control unit 11 moves the server inquiry time record (for four accesses) of the POS device number "POS_0002" extracted as the POS device to be distributed in the unit time from the time "12:00:00" to the unit time (scheduled movement frame) from the time "12:00:02".
[0112] Fig. 15 is a diagram showing an example of updating the access frequency table Fig. 16 is a diagram showing the summary contents of the server inquiry time records in the access frequency table shown in Fig. 15.
[0113] The control unit 11 increments the variable value n by "+1" (Act 50) for the updated access frequency table, selects a POS device as a candidate for the next timing change, and executes the same process as described above from Act 42. That is, if the number of accesses exceeds the threshold value even if the access timing of one POS device is changed in the unit time to be processed, the control unit 11 extracts a POS device as a destination of the access timing and calculates a connection delay value in the same manner as described above.
[0114] If it is confirmed that the threshold is not exceeded (Act 42, No), the control unit 11 assumes that there is no POS device for which the access timing needs to be changed, and changes the unit time with the next highest access frequency to be processed (Act 31).
[0115] 15, it is confirmed that the number of accesses exceeds the threshold value in the unit time from the time "12:00:01" (Act 42, Yes). The control unit 11 executes the same process as described above for this unit time to be processed (Acts 43 to 51).
[0116] In this case, as shown in Fig. 16, in the unit time from time "12:00:01", the POS device with POS device number "POS_0017" has the highest number of accesses (5 times), so this POS device is extracted as the POS device to be distributed. In addition, the unit time from time "12:00:09" is confirmed as the movement destination (scheduled movement slot) of the access timing, and "8 seconds" is calculated as the connection delay value from the time difference between time "12:00:01" and time "12:00:09".
[0117] The control unit 11 determines the POS device (POS device number "POS_0017") selected from the unit time to be processed as the POS device to be distributed, and records the time difference between the unit times ("8 seconds") as a connection delay value in the memory unit 12 (Act 49).
[0118] Also, the control unit 11 updates the access frequency table by reflecting the scheduled movement of the access timing (Act 50). That is, the control unit 11 moves the server inquiry time record (for 5 accesses) of the POS device number "POS_0017" extracted as the POS device to be distributed for the unit time from the time "12:00:01" to the unit time (scheduled movement frame) from the time "12:00:09".
[0119] Fig. 17 is a diagram showing an example of updating the access frequency table Fig. 18 is a diagram showing the summary contents of the server inquiry time records in the access frequency table shown in Fig. 17.
[0120] In the above example, the access timing is changed to another unit time (scheduled movement frame) after the unit time (current frame) to be processed, so the connection delay value is a value (positive value) that delays the access timing. When changing the access timing to another unit time (scheduled movement frame) before the unit time (current frame) to be processed, the connection delay value is a value (negative value) that advances the access timing.
[0121] In the above explanation, the unit time to be the candidate for the destination of the access timing is selected by, for example, checking the availability of the unit time closest to the unit time to be processed, or by selecting from the unit times with the most availability up to the threshold, but other selection methods can also be used. For example, the control unit 11 refers to the initial setting data set for the POS device that is a candidate for the timing change, and acquires the polling interval (access timing) initially set for this POS device.
[0122] The control unit 11 determines whether there is a time difference between the polling interval (access timing) initially set for the POS device and the access timing indicated by the server inquiry time record compiled in the access frequency table. If there is a time difference, the control unit 11 selects the unit time that is the original access timing at the initially set polling interval as a candidate destination of the access timing. If it is confirmed that the unit time of this destination candidate has free time up to the threshold as described above, this unit time is set as the destination of the access timing. Then, the control unit 11 calculates the time difference between the time of the unit time to be processed (current frame) and the time of the unit time of the destination and stores it as a connection delay value.
[0123] If there is no free time in the unit time that is the original access timing in the initially set polling interval, for example, if there is free time in the time period before or after, it may be a candidate for the destination of the access timing. In other words, the access timing may be changed so as to approach the original access timing.
[0124] In this way, by adjusting the access timing according to the initial setting data set for the POS device, even if the access timing is shifted due to a delay caused by a temporary increase in the processing load of the POS device or an increase in communication volume on the network, the access timing can be changed to adjust it to the original access timing.
[0125] In this way, the above-mentioned process is repeated for each unit time in the access frequency table until the number of accesses per unit time falls within the threshold, and the POS devices to be distributed are extracted and the connection delay value for the POS devices is obtained. As described above, the control unit 11 transmits an access timing change instruction together with the connection delay value (amount of change in access timing) to the extracted POS devices (Act 25).
[0126] Next, the operation of the POS device 310 in this embodiment will be described.
[0127] FIG. 19 is a flowchart for explaining the timing change process in this embodiment.
[0128] When the control unit 31 of the POS device 310 receives an instruction to change the access timing from the device management server 10 (Act 61, Yes), the control unit 31 stores the connection delay value received together with the change instruction as a "connection timing delay value" in the memory unit 32 (Act 62).
[0129] In the inquiry process, the control unit 31 turns on the "connection timing delay value update flag" so that the initially set polling timing is changed according to the connection delay value and executed (Act 63).
[0130] Next, the inquiry process by the POS device 310 in this embodiment will be described.
[0131] FIG. 20 is a flowchart for explaining the inquiry process in this embodiment.
[0132] The control unit 31 acquires the initially set polling interval, and calculates and sets the "next server inquiry time" based on the acquired polling interval (Act 71). That is, the control unit 31 adds the polling interval to the current time to set the "next server inquiry time."
[0133] After calculating and setting the "next server inquiry time", the control unit 31 determines whether a valid setting is present in the "connection timing delay value". In other words, it determines whether a connection delay value has been received from the device management server 10 together with an instruction to change the access timing.
[0134] If there is no valid setting for the "connection timing delay value" (Act 72, No), the control unit 31 will wait until the current time becomes the "next server query time" (Act 76, No) because the "connection timing delay value update flag" is not ON (Act 75, No).
[0135] If the "next server inquiry time" has passed (Act 76, Yes), the control unit 31 executes an inquiry to the device management server 10 (Act 77). In other words, unless an instruction to change the access timing has been received from the device management server 10, the control unit 31 periodically accesses the device management server 10 according to a polling interval that has been initially set in advance.
[0136] On the other hand, when the "update flag for connection timing delay value" is ON during the standby state until the current time becomes the "next server inquiry time" (Act 75, Yes), it indicates that the connection delay value has been received from the device management server 10 together with an instruction to change the access timing. In this case, as described above, the control unit 31 calculates the "next server inquiry time" based on the initially set polling interval (Act 71), and since a valid "connection timing delay value" is set (Act 72, Yes), it calculates and sets the "next server inquiry time" with the changed access timing based on the connection delay value received from the device management server 10 (Act 73). That is, the connection delay value notified from the device management server 10 is added to the "next server inquiry time" calculated according to the initially set setting to obtain the "next server inquiry time" with the changed access timing.
[0137] The control unit 31 turns off the "connection timing delay value update flag" (Act 74). Since the "connection timing delay value update flag" is OFF (Act 75, No), the control unit 31 waits until the current time becomes the "next server inquiry time" (Act 76, No). If the "next server inquiry time" is exceeded (Act 76, Yes), the control unit 31 executes an inquiry to the device management server 10 with the access timing changed (Act 77).
[0138] Thus, in the POS device 310 of this embodiment, when a connection delay value is received together with an instruction to change the access timing from the device management server 10, the POS device 310 can calculate a "next server inquiry time" in the inquiry process that reflects the connection delay value in the access timing according to the initially set polling interval, and can execute polling for the device management server 10. As a result, the device management server 10 can distribute accesses from multiple POS devices and maintain a situation in which the number of accesses per unit time does not exceed a preset threshold value.
[0139] In this manner, in the system of this embodiment, the device management server 10 can control the access timing of the POS devices being managed during actual operation, thereby preventing a decrease in the response performance of the device management server 10 due to concentrated access and making adjustments so as not to exceed the utilization range of network traffic, thereby making it possible to maintain the expected system load condition.
[0140] Furthermore, the above-mentioned client server system shows an example of a configuration for managing a store system, but it is also possible to target other systems including multiple servers other than store systems.
[0141] Although some embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims.
[0142] Furthermore, the processes described in the above-mentioned embodiments can be written as a program that can be executed by a computer onto a recording medium such as a magnetic disk (flexible disk, hard disk, etc.), an optical disk (CD-ROM, DVD, etc.), or a semiconductor memory, and provided to various devices. Also, it is possible to transmit the programs via a communication medium and provide them to various devices. The computer reads the program recorded on the recording medium, or receives the program via the communication medium, and executes the above-mentioned processes by having its operation controlled by the program. [Explanation of symbols]
[0143] 5...network, 10...device management server, 30...store system, 11,31...control unit, 12,32...memory unit, 13,33...communication interface (I / F), 14,34...display unit, 15,35...operation unit, 310,320...POS device, 311...store server, 340...access point, 360...communication device.
Claims
1. a storage means for storing the number of accesses per unit time from a plurality of information processing devices for a plurality of unit times; a checking means for checking whether the number of accesses per unit time exceeds a preset threshold value for each of a plurality of unit times; an extraction means for extracting information processing devices to distribute access timing based on the number of accesses for each information processing device from the information processing devices that have been accessed during the unit time in which the threshold value is exceeded; a transmission means for transmitting an instruction to change the access timing to the information processing device for distributing the access timing; A server having:
2. the checking means checks whether the number of accesses per unit time exceeds a preset threshold for each of a plurality of unit times within a predetermined change allowable time; The server of claim 1 .
3. the extraction means determines an amount of change in the access timing according to the information processing device for distributing the access timing; the transmitting means transmits to the information processing device an instruction to change the access timing together with an amount of change in the access timing. The server of claim 1.
4. 4. The server according to claim 3, wherein said extraction means determines an amount of change in access timing in accordance with an access timing to the server that is initially set for an information processing device that distributes access timings.
5. The method further includes setting means for setting the threshold value for the number of accesses per unit time, the checking means checks the status of the number of accesses per unit time based on the threshold value set by the setting means; The server of claim 1.
6. an access means for periodically accessing the server based on a preset access timing for the server; a change means for changing the access timing based on an amount of change in the access timing when the server issues an instruction to change the access timing together with the amount of change in the access timing; An information processing device having the above configuration.
7. Computer, a storage means for storing the number of accesses per unit time from a plurality of information processing devices for a plurality of unit times; a checking means for checking whether the number of accesses per unit time exceeds a preset threshold value for each of a plurality of unit times; an extraction means for extracting information processing devices to distribute access timing based on the number of accesses for each information processing device from the information processing devices that have been accessed during the unit time in which the threshold value is exceeded; A program for causing the information processing device to function as a transmitting means for transmitting an instruction to change the access timing to the information processing device for dispersing the access timing.
Citation Information
Patent Citations
Communication control method
JP1999053274A
Information providing system, server device and information providing method
JP2012174018A
Method for interconnecting server and clients, and router
JP2003143212A