Server and program

JP7920116B2Active Publication Date: 2026-09-14TOSHIBA TEC KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023176161
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-10-11
Publication Date
2026-09-14
Estimated Expiration
2043-10-11

Smart Images

  • Figure 0007920116000001
    Figure 0007920116000001
  • Figure 0007920116000002
    Figure 0007920116000002
  • Figure 0007920116000003
    Figure 0007920116000003
Patent Text Reader

Abstract

To provide an information processing apparatus capable of changing a polling interval to a polling interval suitable for a situation.SOLUTION: According to an embodiment, a server has storage means, confirming means, extracting means, and transmitting means. The storage means stores the number of accesses per unit time from a plurality of information processing apparatuses for a plurality of unit times. The confirming means confirms whether the number of accesses per unit time exceeds a preset threshold for each of the plurality of unit times. The extracting means extracts information processing apparatuses for which access timing is to be distributed from among the information processing apparatuses that have been accessed during the unit time confirmed to be in a state exceeding the threshold, based on the number of accesses for each information processing apparatus. The transmitting means transmits an instruction to change the access timing to the information processing apparatuses for which the access timing is to be distributed.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to an information processing apparatus, a server, and a program.

Background Art

[0002] Various information processing apparatuses used in systems for settlement operations of store sales activities, for example, POS (Point of Sales) apparatuses and their peripheral devices (hereinafter referred to as POS devices), are important apparatuses. For this reason, it is required to acquire information from POS devices and respond quickly when grasping the status of POS devices or when a problem occurs.

[0003] At present, in order to realize this response, there is a configuration in which a device management server is arranged, and information indicating the status is transmitted from the POS device to the device management server, so that the operating status can be grasped remotely. The store manager determines, based on the transmitted information, an instruction for necessary treatment according to the situation (event) that has occurred in the POS device, and sets the instruction in the device management server.

[0004] There are two access timings between the device management server and the POS device: a method of transmitting information urgently and a method of transmitting information periodically.

[0005] Urgent information transmission means that the POS device or the device management server accesses immediately when necessary. For periodic information transmission, there are mechanisms such that the device management server periodically sends "instructions" to the POS device (hereinafter referred to as periodic transmission), and the POS device periodically inquires whether there is any "instruction" from the device management server (hereinafter referred to as polling).

[0006] When the number of POS devices to be managed by the device management server is large, if a large number of accesses occur at one time due to periodic transmission or polling, the load on the device management server and the network will increase. For this reason, the access timings from the POS devices to the device management server are dispersed.

[0007] Scheduled transmission is controlled by adjusting the interval at which the device management server transmits to POS devices. The polling interval from POS devices is managed by setting the access timing for each POS device to prevent access congestion. By controlling the access timing of each POS device to the device management server, access congestion can be avoided and the load on the device management server or network can be adjusted. Therefore, it is possible to calculate the equipment specifications of the device management server and network usage fees.

[0008] However, in actual polling operations, fluctuations in the processing load of POS devices and network traffic can affect the timing of access to the device management server by POS devices, sometimes resulting in a distribution that is not as initially planned. Therefore, to ensure responsiveness to POS devices even if access is uneven, it may be necessary to enhance the performance of the device management server, or to incur additional charges or increase bandwidth due to unexpected network usage.

[0009] Therefore, in actual polling operations, it is necessary to control access timing according to the access status of POS devices to the device management server in order to maintain the initially planned distributed state. [Prior art documents] [Patent Documents]

[0010] [Patent Document 1] Japanese Patent Publication No. 2003-143212 [Overview of the Initiative] [Problems that the invention aims to solve]

[0011] The problem that the embodiments of the present invention aim to solve is to provide an information processing device, a server, and a program that can distribute access by controlling access timing to suit the access situation. [Means for solving the problem]

[0012] According to the embodiment, the server includes a storage means, a verification means, an extraction means, and a transmission means. The storage means stores the number of accesses per unit time from multiple information processing devices for multiple unit time periods. The verification means checks for each of the multiple unit time periods whether the number of accesses per unit time exceeds a preset threshold. The extraction means extracts information processing devices that will distribute the access timing from among the information processing devices that accessed the device during the unit time in which the threshold was confirmed to be exceeded, based on the number of accesses for each information processing device. The transmission means sends an instruction to change the access timing to the information processing devices that will distribute the access timing. [Brief explanation of the drawing]

[0013] [Figure 1] Figure 1 shows an example of the system configuration of this embodiment. [Figure 2] Figure 2 is a block diagram showing an example of the main circuit configuration of the device management server in this embodiment. [Figure 3] Figure 3 is a block diagram showing an example of the store system configuration in this embodiment. [Figure 4] Figure 4 is a block diagram showing an example of the main circuit configuration of a POS device in this embodiment. [Figure 5] Figure 5 is a flowchart illustrating the process (setting function) for setting the number of connected devices by the device management server in this embodiment. [Figure 6] Figure 6 shows an example of the screen for setting the number of connected devices in this embodiment. [Figure 7] Figure 7 is a flowchart illustrating the timing change process in this embodiment. [Figure 8] Figure 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 according to the present embodiment. [Figure 10] FIG. 10 is a conceptual diagram for explaining an access frequency table according to the present embodiment. [Figure 11] FIG. 11 is a conceptual diagram for explaining an access frequency table according to the present embodiment. [Figure 12] FIG. 12 is a diagram showing an aggregation example of an access frequency table. [Figure 13] FIG. 13 is a diagram showing an aggregation example of an access frequency table. [Figure 14] FIG. 14 is a diagram showing aggregated contents of server inquiry time records in the access frequency table shown in FIG. 13. [Figure 15] FIG. 15 is a diagram showing an aggregation example of an access frequency table. [Figure 16] FIG. 16 is a diagram showing aggregated contents of server inquiry time records in the access frequency table shown in FIG. 15. [Figure 17] FIG. 17 is a diagram showing an aggregation example of an access frequency table. [Figure 18] FIG. 18 is a diagram showing aggregated contents of server inquiry time records in the access frequency table shown in FIG. 17. [Figure 19] FIG. 19 is a flowchart for explaining timing change processing according to the present embodiment. [Figure 20] FIG. 20 is a flowchart for explaining inquiry processing according to the present embodiment. DESCRIPTION OF EMBODIMENTS

[0014] Hereinafter, the present embodiment will be described with reference to the drawings. Figure 1 shows an example of the system configuration of this embodiment. The system shown in Figure 1 shows an example configuration for managing various information processing devices used in store systems for settlement operations in store business activities, such as POS (Point of Sales) devices and their peripheral equipment (hereinafter also referred to as POS devices), and servers.

[0015] The system shown in Figure 1 is configured such that a device management server 10 and multiple store systems 30 are connected to each other via a network 5 that includes a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet, enabling them to communicate with one another.

[0016] The device management server 10 manages various POS devices used in the store system installed in at least one store. Based on inquiries (polling) from the POS devices, the device management server 10 monitors the operating status of the POS devices and notifies administrators, etc., according to the operating status. If a problem occurs with a POS device, for example, the administrator sets the necessary instructions to take action against the problem and notifies the POS device.

[0017] The store system 30 is configured, for example, as a POS (Point of Sales) system and includes various information processing devices (POS equipment) installed for selling goods within the store. POS equipment includes, for example, a store server for managing the equipment within the store, a registration machine for registering products intended for purchase by customers, an accounting machine for processing payments for products registered by the registration machine, a POS device for performing product registration and accounting, a journal server for recording sales figures, an order terminal for customers to place orders in restaurants, and other peripheral devices (printer devices, storage devices, display devices, etc.). The information processing devices (POS equipment) may be dedicated POS system equipment, or they may be general-purpose electronic devices such as personal computers (PCs), tablet PCs, or smartphones with POS application programs installed.

[0018] In this embodiment, we describe an example in which the device management server 10 manages POS devices installed in each of the multiple store systems 30 by polling from the POS devices. However, for example, a device management server 10 may be provided in each of the store systems 30 to manage the POS devices for each store.

[0019] Furthermore, although this embodiment describes an example where the device management server 10 manages the POS equipment used in the store system 30, it is also possible to target information processing devices used in other systems. In other words, any system that queries (polls) the device management server from the information processing device can be applied to a system other than the store system 30 (POS system).

[0020] Furthermore, the device management server 10 in this embodiment may not only be implemented by a single computer, but may also be implemented as a so-called cloud service, where multiple servers cooperate to achieve this.

[0021] Figure 2 is a block diagram showing an example of the 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 line 19, etc.

[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 the display unit 14 and the operation unit 15 to this 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 as a device management server 10 according to the operating system or application program. Preferably, the control unit 11 is a multi-core or multi-threaded type capable of executing multiple processes in parallel.

[0024] The memory unit 12 corresponds to the main memory and auxiliary memory of the computer described above. The main memory includes a non-volatile memory area and a volatile memory area. The non-volatile memory area stores the operating system or application programs. The main memory may also store data necessary for the control unit 11 to perform processing to control each part in non-volatile or volatile memory areas. The volatile memory area is used as a work area where data is rewritten as appropriate by the control unit 11. The non-volatile memory area is, for example, ROM (Read Only Memory). The volatile memory area is, for example, RAM (Random Access Memory).

[0025] The auxiliary storage portion may utilize, for example, an EEPROM (Electrically Erasable and Programmable ROM), an HDD (Hard Disk Drive), or an SSD (Solid State Drive). The auxiliary storage portion stores data used by the control unit 11 for various processing tasks, data created by the processing performed by the control unit 11, and so on. The auxiliary storage portion may also store the application program mentioned above.

[0026] The application programs stored in the memory unit 12 include an access control program that monitors the polling status from multiple POS devices and controls the access timing from the POS devices according to the polling status. The access control program manages polling from POS devices managed by the store system 30 and implements a function to control the polling interval (access timing) at which POS devices perform polling so that access congestion does not occur. The access control program implements a function (timing change processing) that identifies POS devices whose access timing needs to be changed and notifies those POS devices of an instruction to change their access timing when access from multiple POS devices becomes concentrated (when the number of accesses per unit time exceeds a preset threshold).

[0027] The storage unit 12 stores initial setting data indicating the polling interval to be set for the POS devices to be managed, and connection count setting data (hereinafter sometimes referred to as the "access count 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 access to the device management server 10 by polling from multiple POS devices does not become concentrated. The connection count setting data indicates a threshold for the number of POS devices (total number of accesses) that access the device management server 10 per unit time, and is set, for example, by the operation of the administrator of the device management server 10.

[0028] Furthermore, the storage unit 12 stores server inquiry time records and access frequency tables as information collected to manage the access status from POS devices of the store system 30. The server inquiry time records are data that associates, for example, a POS device number that identifies a POS device with the time of polling (inquiry time) received from the POS device 310 indicated by the POS device number. The access frequency tables are data that aggregates the number of accesses per unit time from multiple POS devices for multiple unit time periods.

[0029] The communication interface (I / F) 13 is a device that controls the store system 30 (POS equipment) to enable communication via the network 5.

[0030] The display unit 14 is composed of, for example, a liquid crystal display and displays information corresponding to the processing performed by the control unit 11. The operation unit 15 is composed of a pointing device such as a keyboard or mouse and inputs data according to the operation by the administrator of the device management server 10. Alternatively, a touch panel integrating the display unit 14 and the operation unit 15 may be provided.

[0031] Figure 3 is a block diagram showing an example configuration of the store system 30 in this embodiment. The store system 30 includes multiple POS devices 310, 320, a store server 311, an access point 340, a communication device 360, and a network 350, etc.

[0032] POS equipment 310 is a type of information processing device used in the system for settlement operations in store business activities, and is connected to other devices via a network 350, for example, in the store system 30. POS equipment 310 includes, for example, a registration machine, an accounting machine, a POS device, a journal server, and the like.

[0033] POS equipment 320 is a type of information processing device used in the payment system for store operations. For example, in the store system 30, it is connected wirelessly to other devices via access point 340 and network 350. POS equipment 320 can be an electronic device (e.g., a tablet PC) with a POS application program installed, or a portable electronic device attached to a shopping cart that allows customers to register purchased items and even process payments for those items.

[0034] The store server 311 is a computer that stores product data such as the product name and unit price of each product sold in the store, collects and aggregates sales data for processed payments, and manages the overall sales and inventory of the store.

[0035] POS devices 310, 320 and store server 311 are managed by device management server 10 and are equipped with various polling functions. For example, POS devices 310, 320 and store server 311 have a polling function (query processing) that polls device management server 10 based on a polling interval that is pre-initialized for each POS device, in order to prevent a concentration of access to device management server 10. The polling function can change the polling timing in response to an access timing change instruction received from device management server 10.

[0036] The access point 340 controls wireless communication with the POS device 320.

[0037] The communication device 360 ​​communicates with the device management server 10 via the network 5.

[0038] Figure 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 have basically the same configuration as the POS device 310, so their explanation 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, and a system transmission line 39, etc.

[0040] The POS device 310 constitutes 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 then connects devices such as the display unit 34 and the operation unit 35 to this 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 as a POS device 310 according to the operating system or application program. Preferably, the control unit 31 is a multi-core or multi-threaded type capable of executing multiple processes in parallel.

[0042] The memory unit 32 corresponds to the main memory and auxiliary memory of the computer described above. The main memory includes a non-volatile memory area and a volatile memory area. The non-volatile memory area stores the operating system or application programs. The main memory may also store data necessary for the control unit 31 to perform processing to control each part in non-volatile or volatile memory areas. The volatile memory area is used as a work area where data is rewritten as appropriate by the control unit 31. The non-volatile memory area is, for example, ROM. The volatile memory area is, for example, RAM.

[0043] The auxiliary storage section may use, for example, an EEPROM, HDD, or SSD. The auxiliary storage section stores data used by the control unit 31 for various processing tasks, data created by the processing performed by the control unit 31, etc. The auxiliary storage section may also store the application program mentioned above.

[0044] The application programs stored in the memory unit 32 include control programs that send information to the device management server 10 (emergency information sending, periodic information sending), including a polling control program. The polling control program is for sending information periodically and is a program that implements a polling function that polls at a predetermined interval. In the polling function, in order to prevent a concentration of access to the device management server 10, the device management server 10 is polled based on a polling interval that is initially set for each POS device. 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 accordance with this access timing change instruction.

[0045] Furthermore, the memory unit 32 stores various data necessary to realize the polling function as the polling control program is executed. For example, the memory unit 32 stores connection timing delay values ​​notified by the device management server 10, update flags for controlling the query (polling) process, and so on.

[0046] The communication interface (I / F) 33 is a device that controls the store system 30 to communicate with the store server 311, communication device 360, etc., of the store system 30 via the network 350 of the store system 30.

[0047] The display unit 34 is composed of, for example, a liquid crystal display and displays information corresponding to the processing performed by the control unit 31. The operation unit 35 is composed of a keyboard and a pointing device and inputs data corresponding to the operation by the operator of the POS device 310 (store clerk, customer, etc.). Alternatively, a touch panel integrating the display unit 34 and the operation unit 35 may be provided.

[0048] Next, we will describe the operations related to polling in the store system in this embodiment.

[0049] First, the process of setting the number of connected devices by the device management server 10 in this embodiment (setting function) will be explained. Figure 5 is a flowchart illustrating the process of setting the number of connected devices by the device management server 10 in this embodiment (setting function).

[0050] The connection count setting process (setting function) sets a threshold value, which is the number of POS devices (total number) that access the device management server 10 per unit time, in order to check whether the access from multiple POS devices 310 to the device management server 10 is not in the initially planned distributed state and requires adjustment of access timing.

[0051] When the device management server 10 (control unit 11) receives a request to set the number of connected devices through a predetermined operation on the operation unit 15 by an administrator (Act 10, Yes), it starts the process of setting the number of connected devices.

[0052] First, the control unit 11 displays the number of connected devices setting screen on the display unit 14 (Act 11). The control unit 11 accepts a setting operation for registration information using the operation unit 15 for the setting area displayed on the number of connected devices setting screen (Act 12).

[0053] Figure 6 shows an example of the connection count setting screen 50 in this embodiment.

[0054] The connection count setting screen 50 includes a setting area 52, a setting button 54, a delete button 55, and a cancel button 56.

[0055] The setting area 52 is for setting the number of POS devices (total number) that access the device management server 10 per unit of time. The setting button 54 is a button that accepts an instruction to reflect (update) the settings made on the connection count setting screen 50 to the connection count setting data. The delete button 55 is a button that accepts an instruction to delete the current settings displayed on the connection count setting screen 50. The cancel button 56 is a button that accepts an instruction to invalidate the current settings displayed on the connection count setting screen 50 and terminate the process.

[0056] The setting area 52 includes a time unit setting area 523 and a list button 525 for specifying the time unit, and a connection count 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] When the list button 525 is operated, a list of time units is displayed, and by selecting any time unit from that list, the selected time unit can be displayed in the time unit setting area 523. Specifically, options include seconds, minutes, hours, and days. In addition to setting only the time unit, it may also be possible to set the time unit along with an arbitrary time value, such as 10 seconds or 5 minutes.

[0058] In the connection count setting area 526, you can set any unit of time in the time unit setting area 523 by inputting a time unit (or a numerical value representing time) through the operation of the operation unit 15.

[0059] In this way, an arbitrary unit of time can be set, and a threshold (number of connections) for the number of accesses to the device management server 10 during that unit of time can be set. This makes it possible to set conditions suitable for monitoring access status to the device management server 10 by polling, according to the scale of the store system, such as the performance of the device management server 10, the size of the network, and the number of POS devices to be managed.

[0060] When data (registration information) is entered into the setting area displayed on the number of connected devices setting screen 50 through a setting operation and the setting button 54 is operated (Act 16, Yes), the control unit 11 updates the number of connected devices setting data (Act 17). In other words, the control unit 11 updates the number of connected devices setting data, which indicates the time unit and the number of connected devices, to the content set on the number of connected devices setting screen 50.

[0061] Furthermore, when the delete button 55 is pressed (Act 13, Yes), the control unit 11 sets the number of connected devices setting data corresponding to the current settings displayed on the number of connected devices setting screen 50 to an invalid value (NULL value) (Act 14).

[0062] Furthermore, when the cancel button 56 is pressed (Act 15, Yes), the control unit 11 invalidates the current settings displayed on the number of connected devices setting screen 50 and terminates the number of connected devices setting process.

[0063] In this way, the connection count setting process (setting function) in this embodiment allows administrators or others to set connection count setting data through the connection count setting screen 50 to control the access timing by POS devices executed by the device management server 10.

[0064] In the explanation above, the number of connected devices setting process (setting function) displays the number of connected devices setting screen 50 on the display unit 14 of the device management server 10, and various polling settings are made by operating the operation unit 15. However, it is also possible to enable other devices to set the number of connected devices setting data on the device management server 10 in the same way as described above.

[0065] For example, another information processing device, such as the store server 311 within the store system 30, or another device management server 10 within the store system 30, can perform the connection count setting process (setting function) for the POS device to be configured via a web screen (connection count setting screen 50) published by the device management server 10, in the same manner as described above.

[0066] Alternatively, other information processing devices may perform a connection count setting process (setting function) in the same manner as described above, and send the setting details (connection count setting data) to the device management server 10 for storage.

[0067] Next, the timing change process performed by the device management server 10 in this embodiment will be described. Figures 7 and 8 are flowcharts illustrating the timing change process in this embodiment.

[0068] The control unit 11 of the device management server 10 implements timing change processing using an access control program. In the timing change processing, when a situation arises where access from multiple POS devices is concentrated (a situation where the number of accesses per unit time exceeds a preset threshold), the control unit extracts the POS devices whose access timing needs to be changed and notifies those POS devices of an instruction to change their access timing.

[0069] In this embodiment, the POS device 310 performs polling according to the initially set polling timing (polling interval) through query processing (polling execution processing). Access timing is initially set for each POS device 310 to prevent a concentration of access to the device management server 10 due to polling. The POS device 310 performs polling to the device management server 10 according to the individually set polling timing (polling interval).

[0070] Furthermore, POS devices 310, 320, and store server 311 shall perform polling in the same manner. The following description will focus only on POS device 310.

[0071] Details of the query processing (polling execution process) performed by the POS device 310 will be described later (Figures 19 and 20).

[0072] The device management server 10 receives polls sent by the POS device 310 through query processing and records server query time records for each poll.

[0073] Figure 9 shows an example of a server query time record stored in the device management server 10 in this embodiment. For each poll from the POS device 310, the server query time record stores the POS device number that identifies the POS device and the time of the poll (query time) received from the POS device 310 indicated by the POS device number.

[0074] The device management server 10 can monitor the polling status from POS devices based on the server query 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, it determines whether connection count setting data is set, which indicates the time unit and the number of connections, and which represents the threshold for the number of POS devices (total number) that access the device management server 10 per unit time.

[0076] If there is no valid setting for the access count threshold (Act20, No), the control unit 11 enters a state of waiting for a valid access count threshold to be set. If a large number of POS devices access the system while the control unit 11 is in this state of waiting for the access count threshold to be set, it will notify the administrator of the device management server 10 of the warning. In addition, if a large number of POS devices access the system while the control unit 11 is in this state of waiting for the access count threshold to be set, it may also temporarily block access from some of the POS devices that have been pre-configured.

[0077] On the other hand, if there is a valid setting for the access count threshold (Act20, Yes), the control unit 11 monitors the polling status based on the valid access count threshold (connection count setting data) for server query time records that record polling from multiple POS devices.

[0078] The control unit 11 obtains the server query time record (Act 21), generates an access frequency table that aggregates the access frequency (frequency) of POS devices per unit time according to the number of connected devices setting data, and stores it in the storage unit 12 (Act 22). In other words, the access frequency table is data for storing the number of accesses per unit time from multiple POS devices for multiple unit time periods.

[0079] Now, let's explain the access frequency table.

[0080] Figures 10 and 11 are conceptual diagrams illustrating the access frequency table in this embodiment.

[0081] As shown in Figure 10, the access frequency table defines the unit time (the time unit set in the connection number setting screen 50) indicated by the connection number setting data that aggregates server query time records, and the number of POS devices that serve as the threshold for the number of accesses to the device management server 10 per unit time.

[0082] Figure 10 shows an example of an access frequency table defined according to the settings in the connection count setting screen 50 shown in Figure 6, with a unit time of "1 second" and a total number of POS devices of "10". In other words, the access frequency table shown in Figure 10 aggregates the polling server query time records (accesses from POS devices) received every second. If the number of accesses per unit time (number of accesses) does not exceed the number of devices of "10" shown in range 60 of Figure 10, it can be confirmed that the access status of the device management server by multiple POS devices is in the distributed state initially planned by the initial settings.

[0083] Figure 11 shows an example of aggregating server query time records against the access frequency table. Figure 11 indicates that there were accesses from 6 POS devices (total number of accesses) per second of time. In this case, it can be confirmed that the distribution is as initially planned.

[0084] The control unit 11 checks whether the number of accesses per unit time shown in the access frequency table exceeds the threshold of "10 devices" (total number of devices).

[0085] For example, the control unit 11 checks a range of time going back a certain amount from the time of confirmation, as shown in the access frequency table table in Figure 12. In the example shown in Figure 13, it checks whether the threshold has been exceeded for each of the access counts 64 aggregated for each unit time within a predetermined time range 62 (for example, 10 seconds) from the time of confirmation (time "12:00:00") to time "12:00:10".

[0086] The range 62 is, for example, the time during which changes in access timing are permitted (allowable change time), and may be predetermined for each unit of time (seconds, minutes, hours, days, etc.), or it may be changeable by an administrator, for example, depending on the performance of the device management server 10 or the POS equipment.

[0087] Here, a situation in which the number of accesses per unit time exceeds a threshold (number of devices) refers not only to cases where the number of accesses exceeds the threshold, but also, for example, when statistics predict that the increasing trend in the number of accesses per unit time will exceed a predetermined time within a predetermined period. The predetermined time can be the number of accesses per unit time multiplied by a specified value (for example, a fixed value or a value specified by the administrator). Alternatively, the 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 reaches a predetermined percentage (for example, 90%) or more of the threshold. Other determination methods may also be used.

[0088] If the control unit 11 confirms that the number of accesses per unit time does not exceed the threshold (Act23, No), it repeats the same process as described above, changing the time of confirmation. That is, the control unit 11 obtains the server query time record, generates an access frequency table that aggregates the access frequency (frequency) of POS devices per unit time according to the number of connected devices setting data, and checks whether the number of accesses per unit time exceeds the threshold (Act20~Act23).

[0089] On the other hand, if the control unit 11 confirms that the number of accesses per unit time exceeds a threshold (Act 23, Yes), it extracts POS devices whose access timings should be distributed and obtains a connection delay value indicating the amount of change in access timings to resolve the situation where the number of accesses exceeds the threshold (Act 24) (details will be described later).

[0090] Once the control unit 11 has finished extracting the POS devices to be distributed and obtaining the connection delay values, it sends the connection delay value (amount of change in access timing) along with an instruction to change the access timing to the corresponding POS devices (Act 25).

[0091] Upon receiving an instruction to change the access timing, the POS device changes the access timing according to the connection delay value and performs a polling query to the device management server 10. Details of the query processing by the POS device will be described later (Figures 19 and 20).

[0092] Here, we will explain in detail how to extract POS devices to be distributed and obtain connection delay values ​​in Act24. Figure 8 is a flowchart illustrating the process for extracting POS devices to be distributed and obtaining connection delay values.

[0093] The control unit 11 executes the following process (Act 31) for each unit of time in the access frequency table, changing the unit of time to be processed.

[0094] Here, we assume that a situation has occurred where the number of accesses per unit time exceeds a threshold, as shown in the access frequency table in Figure 13. In other words, although the access timings of multiple POS devices are initially set to be distributed in a predetermined manner, a unit time with concentrated access occurs due to, for example, a temporary increase in the processing load of the POS device or a delay caused by an increase in the amount of communication on the network. Figure 13 shows an example where the number of accesses for POS device numbers "001", "002", and "017" has increased, and the number of accesses per unit time from the time "12:00:00" and "12:00:01" exceeds the threshold.

[0095] The control unit 11 processes data in order from the most frequently accessed time units in the access frequency table. In the case of the access frequency table shown in Figure 13, the time units starting from "12:00:00" are the first to be processed.

[0096] Furthermore, in addition to processing data in order of the frequency of access, it is also possible to prioritize processing data from time units where the number of accesses exceeds a threshold, starting with time units that include POS devices with a high number of accesses.

[0097] First, the variable value n, which is used to manage POS devices with the highest access frequency within a unit of time as candidates for changing the access timing, is set to its initial value of "1" (Act41).

[0098] Next, the control unit 11 checks whether the number of accesses per unit time exceeds the threshold for the unit time to be processed. If it is confirmed that the threshold has not been exceeded (Act 42, No), the control unit 11 changes the unit time to be processed, assuming that there are no POS devices whose access timing should be changed (Act 31).

[0099] On the other hand, if it is confirmed that a situation exceeding a threshold has occurred (Act42, Yes), the control unit 11 selects the POS device with the nth highest access frequency based on the server query time records aggregated for the unit time to be processed.

[0100] Figure 14 shows the aggregated contents of the server query time records in the access frequency table table shown in Figure 13. As shown in Figure 14, there were 12 accesses in the unit time starting from the time "12:00:00", which exceeds the threshold. In this unit time, the highest access frequency is "5", so we select the POS device with the POS device number "POS_0001" that corresponds to this access frequency.

[0101] The control unit 11 refers to the access frequency table to check whether the server query time record for this selected POS device (POS device number "POS_0001") is aggregated in other time units that are not being processed. If there are server query time records in other time units, even if the access timing of this POS device is changed, there is a possibility that the access frequency in those other time units will exceed the threshold.

[0102] In the access frequency table shown in Figure 13, server query time records for POS device number "POS_0001" exist within the time units starting from "12:00:09" and "12:00:10".

[0103] Therefore, in this case (Act46, Yes), the control unit 11 excludes the selected POS device from the candidates for timing change, adds "+1" to the variable value n (Act48), and selects the next POS device to be a candidate for 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 sends a warning to, for example, the administrator of the device management server 10 (Act 44). In other words, it notifies 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 a POS device can be selected as a candidate for the next timing change (Act43, Yes), the control unit 11 performs the same processing as described above. Here, as shown in Figure 14, the second highest access frequency is "4", so the POS device with the POS device number "POS_0002" corresponding to this access frequency is selected (Act43, Act45).

[0106] Since the server query time record for this selected POS device (POS device number "POS_0002") has not been aggregated in other time units that are not being processed (Act46, No), the control unit 11 checks if there is enough free time in other time units to accommodate the number of accesses for the selected POS device (POS device number "POS_0002"). In other words, it checks if there is a time unit frame that can be used as a candidate destination for moving the access timing.

[0107] For example, if the POS machine (POS machine number "POS_0002") has 4 accesses per unit time starting from "12:00:00", then we check for unit times that have 4 available accesses. Here, we will check the availability starting from the unit time closest to the unit time being processed. Alternatively, instead of checking the availability starting from the unit time closest to the unit time being processed, we could also select a unit time from a 10-second range of 62 that has the most available access up to the threshold.

[0108] Here, it is confirmed that there are four or more available slots in the time unit starting from "12:00:02". If the control unit 11 can find other time units (scheduled slots) that have enough available slots for the number of accesses of the selected POS device from the time unit to be processed (current slot) (Act47, Yes), it calculates the time difference between the current time unit to be processed and the other time units that have been confirmed to have available slots.

[0109] Here, the time difference of "2 seconds" is calculated between the time of the unit time to be processed (current slot) "12:00:00" and the time of another available unit time (scheduled move slot) "12:00:02".

[0110] The control unit 11 selects a POS device (POS device number "POS_0002") from the unit time to be processed as the POS device to be distributed, and records the time difference of the unit time ("2 seconds") as the connection delay value in the storage unit 12 (Act 49).

[0111] Furthermore, the control unit 11 updates the access frequency table to reflect the planned shift in access timing (Act 50). Specifically, it moves the server query time records (for 4 accesses) of POS device number "POS_0002," which was extracted as a POS device to be distributed within a unit time from the time "12:00:00," to the unit time (scheduled shift slot) from the time "12:00:02."

[0112] Figure 15 shows an example of updating the access frequency table. Figure 16 shows the aggregated contents of the server query time records in the access frequency table shown in Figure 15.

[0113] The control unit 11 applies the updated access frequency table to the control unit 11, adds "+1" to the variable value n (Act 50), selects a POS device to be the next candidate for timing change, and performs the same processing as described above from Act 42. That is, if the number of accesses exceeds the threshold even if the access timing of one POS device is changed within the unit time being processed, the control unit 11 extracts the POS device to which the access timing will be moved and determines the connection delay value in the same manner as described above.

[0114] If it is confirmed that no situation has occurred that exceeds the threshold (Act 42, No), the control unit 11 assumes that there are no POS devices whose access timing should be changed and changes the processing target to the next most frequently accessed unit time (Act 31).

[0115] In the access frequency table shown in Figure 15, it is confirmed that the number of accesses exceeds the threshold during the time unit starting from "12:00:01" (Act 42, Yes). The control unit 11 performs the same processing as described above for this time unit (Acts 43-51).

[0116] In this case, as shown in Figure 16, the POS device with POS number "POS_0017" has the highest number of accesses (5 times) in the unit time starting from "12:00:01", so this POS device is selected as the POS device to be distributed to. In addition, the unit time starting from "12:00:09" is identified as the destination (scheduled transfer slot) for the access timing, and a connection delay value of "8 seconds" is calculated from the time difference between "12:00:01" and "12:00:09".

[0117] The control unit 11 selects a POS device (POS device number "POS_0017") from the unit time to be processed as the POS device to be distributed, and records the time difference of the unit time ("8 seconds") as the connection delay value in the storage unit 12 (Act 49).

[0118] Furthermore, the control unit 11 updates the access frequency table to reflect the planned shift in access timing (Act 50). Specifically, it moves the server query time record (for 5 accesses) of POS device number "POS_0017," which was extracted as a POS device to be distributed within a unit time from the time "12:00:01," to the unit time (scheduled shift slot) from the time "12:00:09."

[0119] Figure 17 shows an example of updating the access frequency table. Figure 18 shows the aggregated contents of the server query time records in the access frequency table shown in Figure 17.

[0120] In the example mentioned above, the access timing is changed to another time unit (scheduled time slot) that is later than the time unit to be processed (current time slot), so the connection delay value is a value that delays the access timing (a positive value). If the access timing is changed to another time unit (scheduled time slot) that is earlier than the time unit to be processed (current time slot), the connection delay value will be a value that advances the access timing (a negative value).

[0121] In the explanation above, the selection of a candidate unit time for moving the access timing is described as, for example, checking the availability of unit time closer to the unit time being processed, or selecting from unit time with a large amount of free time up to the threshold. However, 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 timing change and obtains the polling interval (access timing) that was 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 query time record aggregated in the access frequency table. If there is a time difference, the control unit 11 selects the unit time that would be the original access timing in the initially set polling interval as a candidate destination for the access timing. If it is confirmed that there is free time up to the threshold in this candidate destination unit time, as described above, this unit time is set as the destination for the access timing. Then, the control unit 11 calculates the time difference between the time of the unit time to be processed (current slot) and the time of the destination unit time and stores it as the connection delay value.

[0123] Furthermore, if there is no available time slot for the original access timing within the initially set polling interval, then, for example, if there is available time before or after, that time slot can be considered as a candidate for moving the access timing. In other words, the access timing may be changed to bring it closer to the original access timing.

[0124] In this way, by adjusting the access timing according to the initial setting data configured for the POS device, even if the access timing is off due to a temporary increase in the processing load of the POS device or a delay caused by an increase in network traffic, the access timing can be adjusted back to the original timing by changing the access timing.

[0125] In this way, the aforementioned process is repeated for each unit of time in the access frequency table until the number of accesses per unit of time falls within a threshold, thereby extracting the POS devices that should be distributed and obtaining the connection delay value for these POS devices. As described above, the control unit 11 sends an access timing change instruction along 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] Figure 19 is a flowchart illustrating 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), it stores the connection delay value received along with the change instruction as the "connection timing delay value" in the storage unit 32 (Act 62).

[0129] The control unit 31 turns on the "connection timing delay value update flag" (Act 63) so that, in query processing, it changes the initially set polling timing according to the connection delay value and executes the process.

[0130] Next, the query processing by the POS device 310 in this embodiment will be described.

[0131] Figure 20 is a flowchart illustrating the query processing in this embodiment.

[0132] The control unit 31 obtains the initially set polling interval and calculates and sets the "next server query time" based on this obtained polling interval (Act 71). In other words, the control unit 31 adds the polling interval time to the current time to determine the "next server query time".

[0133] After calculating and setting the "next server query time," the control unit 31 determines whether there is a valid setting for the "connection timing delay value." That is, it determines whether it has received a connection delay value along with an access timing change instruction from the device management server 10.

[0134] If there is no valid setting for "Connection Timing Delay Value" (Act72, No), the control unit 31 will remain in a waiting state until the current time becomes "Next Server Inquiry Time" because the "Connection Timing Delay Value Update Flag" is not ON (Act75, No). (Act76, No)

[0135] If the "next server query time" has passed (Act 76, Yes), the control unit 31 executes a query to the device management server 10 (Act 77). In other words, unless it has received an instruction from the device management server 10 to change the access timing, it periodically accesses the device management server 10 according to the pre-initialized polling interval.

[0136] On the other hand, if the "connection timing delay value update flag" is turned ON during the waiting state until the current time becomes the "next server query time" (Act75, Yes), it indicates that the device management server 10 has received a connection delay value along with an instruction to change the access timing. In this case, as described above, the control unit 31 calculates the "next server query time" based on the initially set polling interval (Act71), and since there is a valid "connection timing delay value" setting (Act72, Yes), it calculates and sets the "next server query time" with the changed access timing based on the connection delay value received from the device management server 10 (Act73). In other words, the connection delay value notified by the device management server 10 is added to the "next server query time" calculated according to the initial settings to determine the "next server query 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 remains in a waiting state until the current time becomes the "next server query time" (Act 76, No). If the "next server query time" is exceeded (Act 76, Yes), the control unit 31 executes a query with the changed access timing to the device management server 10 (Act 77).

[0138] Thus, in this embodiment, when the POS device 310 receives a connection delay value along with an instruction to change the access timing from the device management server 10, the query processing can calculate the "next server query time" which reflects the connection delay value in the access timing according to the initially set polling interval, and then perform polling on the device management server 10. As a result, the device management server 10 can distribute access from multiple POS devices and maintain a situation where the number of accesses per unit time does not exceed a pre-set threshold.

[0139] Thus, in the system of this embodiment, the device management server 10 can control the access timing of the POS devices to be managed under actual operation. This prevents a decrease in the response performance of the device management server 10 due to concentrated access, and adjusts network traffic so as not to exceed its usage range, thereby maintaining the expected system load.

[0140] Furthermore, while the aforementioned client-server system demonstrates an example configuration for managing a store system, it can also be used for other systems that include multiple servers in addition to the store system.

[0141] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents.

[0142] Furthermore, the processing described in the above-mentioned embodiment can be written as a program that can be executed by a computer to 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. It is also possible to transmit it to various devices via a communication medium. The computer reads the program recorded on the recording medium or receives the program via a communication medium, and executes the above-mentioned processing by having its operation controlled by this program. The invention described in the original claims of this application is listed below. [1] A server having storage means for storing the number of accesses per unit time from multiple information processing devices for multiple unit time periods; confirmation means for checking whether the number of accesses per unit time exceeds a preset threshold for each of the multiple unit time periods; extraction means for extracting information processing devices that have accessed the server in a unit time period in which it has been confirmed that the threshold has been exceeded, based on the number of accesses for each information processing device, to which the access timing should be distributed; and transmission means for sending an instruction to change the access timing to the information processing devices to which the access timing should be distributed. [2] The server described in Appendix [1], wherein the verification means checks whether the number of accesses per unit time exceeds a predetermined threshold, every unit of time within a predetermined allowable change time. [3] The server as described in Appendix [1], wherein the extraction means determines the amount of change in access timing corresponding to the information processing device that distributes access timing, and the transmission means transmits an instruction to change the access timing along with the amount of change in access timing to the information processing device. [4] The extraction means is the server described in Appendix [3], which determines the amount of change in access timing according to the access timing to the server, which is initially set for the information processing device that distributes access timing. [5] The server as described in Appendix [1], further comprising setting means for setting the threshold for the number of accesses per unit time, wherein the confirmation means confirms the status of the number of accesses per unit time based on the threshold set by the setting means. [6] An information processing device having access means for periodically accessing a server based on pre-configured access timings to the server, and change means for changing the access timing based on the amount of change when the server issues an instruction to change the access timing along with the amount of change to the access timing. [7] A program to cause a computer to function as a storage means for storing the number of accesses per unit time from multiple information processing devices for multiple unit time periods, a checking means for checking at each unit time period for multiple unit time periods whether the number of accesses per unit time exceeds a predetermined threshold, an extraction means for extracting information processing devices that distribute access timings from information processing devices that have been accessed in a unit time period in which it has been confirmed that the threshold has been exceeded, based on the number of accesses for each information processing device, and a transmission means for sending instructions to change the access timings to the information processing devices that distribute access timings. [Explanation of Symbols]

[0143] 5...Network, 10...Device management server, 30...Store system, 11,31...Control unit, 12,32...Storage unit, 13,33...Communication interface (I / F), 14,34...Display unit, 15,35...Operation unit, 310,320...POS equipment, 311...Store server, 340...Access point, 360...Communication device.

Claims

1. A storage means for storing the number of accesses per unit time from multiple information processing devices for multiple unit time periods, A verification means for checking whether the number of accesses per unit time exceeds a predetermined threshold, at intervals of multiple unit time periods within a predetermined allowable change time, An extraction means for extracting information processing devices that distribute access timing based on the number of accesses for each information processing device, from among the information processing devices that were accessed during a unit of time in which the aforementioned threshold was confirmed to be exceeded, An exclusion means for excluding information processing devices that have been accessed in other units of time within the permitted change time from among the information processing devices that distribute the access timing, A transmission means for transmitting an instruction to change the access timing to an information processing device that distributes the access timings and was not excluded by the exclusion means. A server.

2. The extraction means determines the amount of change in access timing according to the information processing device that distributes access timing, The transmission means transmits an instruction to change the access timing along with the amount of change in the access timing to the information processing device. The server according to claim 1.

3. The server according to claim 2, wherein the extraction means determines the amount of change in access timing according to the access timing to the server, which is initially set for an information processing device that distributes access timing.

4. The system further includes setting means for setting the threshold for the number of accesses per unit time, The verification means checks the status of the number of accesses per unit time based on the threshold set by the setting means. The server according to claim 1.

5. Computers, A storage means for storing the number of accesses per unit time from multiple information processing devices for multiple unit time periods, A verification means for checking whether the number of accesses per unit time exceeds a predetermined threshold, at intervals of multiple unit time periods within a predetermined allowable change time, An extraction means for extracting information processing devices that distribute access timing based on the number of accesses for each information processing device, from among the information processing devices that were accessed during a unit of time in which the aforementioned threshold was confirmed to be exceeded, An exclusion means for excluding information processing devices that have been accessed in other units of time within the permitted change time from among the information processing devices that distribute the access timing, A program for functioning as a transmission means for transmitting an instruction to change the access timing to an information processing device that distributes the access timings and was not excluded by the exclusion means.

Citation Information

Patent Citations

  • Communication control method

    JP1999053274A

  • Method for interconnecting server and clients, and router

    JP2003143212A

  • Information providing system, server device and information providing method

    JP2012174018A