System, method, and program

By implementing a system with a constant connection server that manages communication start timings and sessions for multiple devices, the processing load on the topic distribution server is reduced, addressing the issue of simultaneous connections overwhelming the server.

JP2025144696APending Publication Date: 2025-10-03NINTENDO CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024044501
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-21
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

The simultaneous connection of multiple devices to a server leads to an increase in processing load, particularly on the topic distribution server, due to the need for immediate communication with the server upon receiving a notification.

Method used

A system where a constant connection server determines different communication start timings for each device based on the processing rate and number of connections, using a waiting period shorter than the maximum waiting period, and maintains sessions with devices, allowing devices to hold notifications until the designated start timing.

Benefits of technology

This approach effectively suppresses the increase in processing load on the topic distribution server by managing the connection timing of multiple devices, ensuring the server's processing capacity is not overwhelmed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025144696000001_ABST
    Figure 2025144696000001_ABST
Patent Text Reader

Abstract

To solve a problem in which there is a possibility that a processing load on a server would increase when multiple devices communicate with one server at the same time.SOLUTION: A system includes a first server, a second server that receives a notification instruction sent from the first server, and a plurality of devices that receive a notification based on the notification instruction from the second server. The second server determines different communication start timings for each of the plurality of devices on the basis of a processing rate specified by the first server and the number of connections of the plurality of devices that are connected to the second server at a first timing, and each of the plurality of devices starts communication with the first server on the basis of the passage of the communication start timing after receiving the notification.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a system, a method, and a program. [Background technology]

[0002] Patent Document 1 (JP 2015-32184 A) discloses a system in which devices such as game machines are connected to a server. Patent Document 1 describes that notifications are sent from the server to multiple devices. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2015-32184 Summary of the Invention [Problem to be solved by the invention]

[0004] The notification sent from the server to the devices may include an instruction to connect to the server. The devices attempt to connect to the server based on receiving such a notification. However, if multiple devices attempt to connect to the server at the same time, the processing load on the server increases. [Means for solving the problem]

[0005] (Configuration 1) A system according to an embodiment includes a first server, a second server that receives a notification instruction sent from the first server, and a plurality of devices that receive a notification based on the notification instruction from the second server. The second server determines a different communication start timing for each of the plurality of devices based on a processing rate specified by the first server and the number of connections of the plurality of devices that are connected to the second server at a first timing, and each of the plurality of devices starts communication with the first server based on the passage of the communication start timing after receiving the notification.

[0006] (Configuration 2) In configuration 1, the second server determines a maximum waiting period based on the number of connections and processing rate at a first timing, determines a waiting period shorter than the maximum waiting period for each of multiple devices connected to the second server at the first timing, and determines a communication start timing for each of the multiple devices based on the waiting period.

[0007] (Configuration 3) In configuration 2, the second server is a constant-connection server that maintains a session between the second server and each of the multiple devices, and when a specific device included in the multiple devices is newly connected to the second server at a second timing after the first timing, a waiting period shorter than the maximum waiting period is determined, and the timing for starting communication for the specific device is determined based on the waiting period.

[0008] (Configuration 4) In any of configurations 1 to 3, each of the multiple devices holds the notification received from the second server until the communication start timing has passed, and starts communication with the first server based on the passage of the communication start timing.

[0009] (Configuration 5) In any of configurations 1 to 4, each of the multiple devices retains information and a notification indicating the communication start timing, and after the communication start timing has passed, discards the information and notification indicating the communication start timing, and while retaining the notification and the information indicating the communication start timing, when communication with the second server is resumed after communication with the second server is disconnected, discards the notification and the information indicating the communication start timing, and re-acquires the notification and the information indicating the communication start timing from the second server.

[0010] (Configuration 6) In configuration 2, the timing to start communication is determined based on the timing of sending a notification from the second server to each of the plurality of devices and the waiting period.

[0011] (Configuration 7) In any of configurations 1 to 6, each of the multiple devices acquires multiple notifications from the second server, and when the number of notifications that can be temporarily held exceeds an upper limit, it prioritizes deleting notifications among the multiple notifications that have a latest communication start timing associated with each of the multiple notifications, and after starting communication with the first server based on the notification corresponding to the upper limit, it re-receives the deleted notifications and the communication start timing associated with the notifications from the second server.

[0012] (Configuration 8) A method of communicating using a system according to an embodiment, the system including a first server, a second server that receives a notification instruction sent from the first server, and a plurality of devices that receive a notification based on the notification instruction from the second server. The method includes the steps of causing the second server to determine different communication start timings for each of the plurality of devices based on a processing rate specified by the first server and the number of connections of the plurality of devices that are connected to the second server at a first timing, and causing each of the plurality of devices to start communication with the first server based on the passage of the communication start timing after receiving the notification.

[0013] (Configuration 9) In configuration 8, the method includes the steps of causing the second server to determine a maximum waiting period based on the number of connections and the processing rate at a first timing, and causing the second server to determine a waiting period shorter than the maximum waiting period for each of a plurality of devices connected to the second server at the first timing, and determining a communication start timing for each of the plurality of devices based on the waiting period.

[0014] (Configuration 10) In configuration 9, the second server is a constant-connection server that maintains a session between the second server and each of the multiple devices, and the method includes a step of causing the second server to, when a specific device included in the multiple devices is newly connected to the second server at a second timing after the first timing, determine a waiting period shorter than the maximum waiting period, and determine a communication start timing for the specific device based on the waiting period.

[0015] (Configuration 11) In any of configurations 8 to 10, the method includes the steps of causing each of the multiple devices to retain the notification received from the second server until the communication start timing has elapsed, and causing each of the multiple devices to start communication with the first server based on the received notification after the communication start timing has elapsed.

[0016] (Configuration 12) A program for performing communication using a system, the system including a first server, a second server that receives a notification instruction sent from the first server, and a plurality of devices that receive notifications based on the notification instruction from the second server. The second server has one or more processors, and the program causes the one or more processors to execute the steps of acquiring the number of connections of the plurality of devices connected to the second server at a first timing, and determining different communication start timings for the plurality of devices based on the processing rate specified by the first server and the number of connections of the plurality of devices.

[0017] (Configuration 13) In configuration 12, the program causes one or more processors to execute the steps of determining a maximum waiting period based on the number of connections and processing rate at a first timing, and determining a waiting period shorter than the maximum waiting period for each of multiple devices connected to the second server at the first timing, and determining a communication start timing for each of the multiple devices based on the waiting period.

[0018] (Configuration 14) In configuration 13, the second server is a always-on server that maintains a session between the second server and each of the multiple devices, and the program causes one or more processors to execute the steps of determining a waiting period shorter than the maximum waiting period when a specific device included in the multiple devices is newly connected to the second server at a second timing after the first timing, and determining a communication start timing for the specific device based on the waiting period. [Effects of the Invention]

[0019] According to the present disclosure, in a system including multiple devices that can connect to a server based on a notification from the server, a mechanism can be realized to suppress an increase in the processing load on the server due to multiple devices communicating with the same server at the same time. [Brief explanation of the drawings]

[0020] [Figure 1] 1 is a schematic diagram showing an example of an information processing system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a schematic diagram illustrating an example of a hardware configuration of a constant connection server included in the information processing system according to the present embodiment. [Figure 3] FIG. 2 is a schematic diagram showing an example of a hardware configuration of a topic distribution server included in the information processing system according to the present embodiment. [Figure 4] FIG. 2 is a schematic diagram showing an example of a hardware configuration of a device included in the information processing system according to the present embodiment. [Figure 5] 10 is a timing chart for explaining the flow of communication processing between a topic distribution server, a constant connection server, and a device in the present embodiment. [Figure 6] FIG. 10 is a flowchart illustrating a notification instruction process performed by a topic distribution server. [Figure 7] FIG. 10 is a flowchart illustrating a process of transmitting communication start timing by a constant connection server. [Figure 8] 10 is a flowchart illustrating an example of processing performed by executing a communication start timing determination program. [Figure 9] 10 is a flowchart illustrating a process executed by the device. [Figure 10] FIG. 10 is a diagram illustrating an example in which a device establishes a session with a constant connection server at timing T2. [Figure 11] FIG. 10 is a diagram for explaining that the same maximum standby period is used even when a new device is connected. [Figure 12]FIG. 10 is a diagram illustrating an example in which one device acquires information relating to multiple types of topics. DETAILED DESCRIPTION OF THE INVENTION

[0021] The present embodiment will be described in detail with reference to the drawings, in which the same or corresponding parts are designated by the same reference numerals and description thereof will not be repeated.

[0022] <Embodiment> [A. Overview] An example of the configuration of an information processing system 100 according to the present embodiment will be described. Fig. 1 is a schematic diagram showing an example of the information processing system 100 according to the present embodiment. The information processing system 100 is a system that provides constant connection services to devices 30A to 30C using a constant connection server Pe1.

[0023] 1, the information processing system 100 includes devices 30A to 30C, a constant connection server Pe1, and a topic distribution server SP1. The constant connection server Pe1, the devices 30A to 30C, and the topic distribution server SP1 are configured to be connectable to one another via a network NW. The network NW is typically the Internet.

[0024] Each of the devices 30A to 30C is typically a game-dedicated information processing device for providing a game to a user. By connecting to the network NW, the devices 30A to 30C can play online competitive games with other users or download game content from a game content distribution server (not shown). In the example of FIG. 1, game content G1 has been downloaded to the devices 30A and 30B. Game content G2 has been downloaded to each of the devices 30C. Hereinafter, the devices 30A to 30C will be collectively referred to as "device 30."

[0025] In this embodiment, the constant connection server Pe1 is a server group that provides a constant connection service (persistent connection) to the device 30. The constant connection service is a service that enables the constant connection server Pe1 to transmit various types of information to the device 30 at any time by maintaining a connection between the constant connection server Pe1 and the device 30. In other words, the constant connection service is a service that maintains a session between the device 30 and the constant connection server Pe1 in order to transmit various types of information from the constant connection server Pe1 to the device 30.

[0026] A session refers to the state of communication between two information processing devices, from the start to the end of communication between the two elements. Hereinafter, the start of communication between the two elements will be referred to as "session establishment." Although FIG. 1 illustrates only three devices 30A, 30B, and 30C as devices 30, in reality, tens, hundreds, or even more devices 30 (not shown) are connected to the constant connection server Pe1.

[0027] The constant connection service automatically transmits various types of information from the constant connection server Pe1 to the multiple devices 30. Examples of the various types of information include information about system updates for the devices 30 themselves, information about game content downloaded to the devices 30, and information available only to paid members. The constant connection server Pe1 can transmit various types of information to the multiple devices 30 from the constant connection server Pe1 when it determines that the information should be transmitted to the devices 30. As a result, the constant connection service eliminates the need for the users of the devices 30 to actively operate the devices 30 to obtain the information they desire.

[0028] More specifically, when preparations for distributing the system update program for the device 30 are completed, the constant connection server Pe1 can transmit information about the system update for the device 30 to all devices 30 connected to the constant connection server Pe1. This allows the user operating the device 30 to automatically obtain the system update program from the constant connection server Pe1 without having to operate the device 30 to obtain the system update program.

[0029] The constant connection server Pe1 may correspond to the "second server" in the present disclosure. In some aspects, the constant connection server Pe1 may include five, ten, several tens, or more physical servers. Furthermore, in this embodiment, the constant connection server Pe1 is also used to distribute topics.

[0030] [B.About the topic] In this embodiment, the information processing system 100 employs a system called a topic. A topic refers to a type of information. Topics can include, for example, types of information such as "information about game content G1," "information about game content G2," "information exclusive to paid members," and "information about system updates for the device 30 itself." Each of the multiple devices 30 is set with a topic to which it will subscribe from among multiple types of topics. Each of the multiple devices 30 notifies the user of the latest information related to the topic to which it subscribes.

[0031] The topic distribution server SP1 is a server for distributing information related to each topic to each of the multiple devices 30 via the constant connection server Pe1. For example, the topic distribution server SP1 transmits a notification instruction to the constant connection server Pe1 indicating that the "information related to game content G1" has been updated to the multiple devices 30 that subscribe to the "information related to game content G1." The constant connection server Pe1 identifies the devices 30 that subscribe to the "information related to game content G1" and notifies each device 30 that the "information related to game content G1" has been updated. The constant connection server Pe1 acts as an intermediary between the topic distribution server SP1 and the multiple devices 30. The topic distribution server SP1 may correspond to the "first server" in this disclosure.

[0032] Regarding topic subscriptions, a user can configure their device 30 to subscribe to desired topics so that they can obtain information on topics that interest them. Furthermore, the device 30 can be configured to automatically subscribe to a specific topic, for example, by performing a specific operation. For example, the device 30 can be automatically configured to subscribe to a topic called "Information Exclusive to Paid Members" when a paid member user account is associated with the device 30. The device 30 can also be automatically configured to subscribe to a topic based on the download of game content.

[0033] For example, when the game content G1 is downloaded, the devices 30A and 30B are automatically set to subscribe to the topic "Information about the game content G1." Note that the information processing system 100 includes a plurality of devices 30 (not shown) other than the devices 30A and 30B that subscribe to the topic "Information about the game content G1."

[0034] The topic distribution server SP1 can transmit information regarding updates to the game content G1, the release of new game content similar to the game content G1, etc., to all devices 30 that subscribe to the topic "Information regarding game content G1" via the constant connection server Pe1. In this way, when the constant connection server Pe1 receives information regarding a topic from the topic distribution server SP1, it identifies the devices 30 to which the topic is to be distributed, and transmits the latest information regarding the topic received from the topic distribution server SP1 to the identified devices 30.

[0035] In such an information processing system 100, the multiple devices 30 may communicate with the topic distribution server SP1 based on receiving a notification from the constant connection server Pe1. When the topic distribution server SP1 distributes the latest information on "information related to game content G1," the topic distribution server SP1 may send only information indicating that the latest information has been updated to the constant connection server Pe1, rather than sending the content of the latest information itself to the constant connection server Pe1. The constant connection server Pe1 then notifies the multiple devices 30, including devices 30A and 30B, that the latest information on "information related to game content G1" has been updated. Upon receiving the notification, each of the multiple devices 30 begins communication with the topic distribution server SP1 to obtain the content of the latest information on "information related to game content G1."

[0036] This processing flow allows the latest information to be distributed in the appropriate language set for each device 30, even if the languages ​​set for device 30A and device 30B are different. More specifically, for example, consider a case where the language setting for device 30A is "Japanese" and the language setting for device 30B is "English." Upon receiving a notification from the constant connection server Pe1, device 30A requests the topic distribution server SP1 to obtain the latest information in Japanese. Upon receiving a notification from the constant connection server Pe1, device 30B requests the topic distribution server SP1 to obtain the latest information in English. Note that the constant connection server Pe1 may identify the language set for each device 30 and transmit the latest information in the language set for each device 30 to which the information is to be distributed.

[0037] In this embodiment, the constant connection server Pe1 simply sends a notification to the devices 30A and 30B indicating that the "information about the game content G1" has been updated. This allows each of the devices 30A and 30B to obtain the "information about the game content G1" in the format that it requires.

[0038] In this way, the notification instruction from the topic distribution server SP1 to the constant connection server Pe1 does not directly include the contents of the latest information about the "information about game content G1," and each device 30A, 30B that receives the notification from the constant connection server Pe1 may directly obtain the contents of the latest information from the topic distribution server SP1.

[0039] However, if multiple devices 30 simultaneously connect to the topic distribution server SP1 based on a notification from the constant connection server Pe1, the processing load on the topic distribution server SP1 increases. Therefore, in the information processing system 100 of this embodiment, as described below, the topic distribution server SP1 transmits a processing rate to the constant connection server Pe1, thereby suppressing an increase in the processing load on the topic distribution server SP1.

[0040] [C. Hardware configuration example] 2 to 4, an example of the hardware configuration of the constant connection server Pe1, topic distribution server SP1, and device 30 that constitute the information processing system 100 according to the present embodiment will be first described below.

[0041] 2 is a schematic diagram showing an example of the hardware configuration of the constant connection server Pe1 included in the information processing system 100 according to the present embodiment. Referring to FIG. 2, the constant connection server Pe1 includes one or more processors 24, a memory 25, a storage 26, and a communication unit 23. These components are connected to each other via a bus 27 so as to be able to communicate data with each other. Note that the constant connection server Pe1 may be a dedicated information processing device that manages games, or may be implemented using a general-purpose server.

[0042] The communication unit 23 communicates between the device 30 and the topic distribution server SP1 via the network NW. The communication unit 23 has hardware necessary for wired communication and / or hardware necessary for wireless communication. Note that all or part of the processing of the communication unit 23 may be implemented by the processor 24.

[0043] The processor 24 is a processing entity (processing means) for executing the processes provided by the constant connection server Pe1. In this disclosure, the term "processor" refers to a processing circuit such as a CPU (Central Processing Unit), MPU (Micro Processing Unit), or GPU (Graphics Processing Unit). The term "processor" encompasses a processing circuit that executes processing according to instruction codes written in a program, a processing circuit that integrates multiple functions such as an SoC (System on Chip), a hardwired circuit, and the like.

[0044] The memory 25 is a volatile storage device (storage medium) accessible by the processor 24, and may be, for example, a dynamic random access memory (DRAM) or a static random access memory (SRAM). The storage 26 is a non-volatile storage device (storage medium) accessible by the processor 24, and may be, for example, a hard disk or a flash memory. The storage 26 may be, for example, a storage medium detachable from the constant connection server Pe1, such as an optical disk or a cartridge.

[0045] The storage 26 stores a system program 261 and an information processing program 260 that are executed by the processor 24. The processor 24 reads the system program 261 and the information processing program 260, deploys them in the memory 25, and executes them. The system program 261 is a program for operating the constant connection server Pe1, and includes, for example, an OS (Operating System) and firmware. Note that the memory 25 is not limited to a volatile storage device (auxiliary storage device), and may be a non-volatile storage device (main storage device). In this specification, the term "memory" encompasses at least volatile memory and non-volatile storage.

[0046] The information processing program 260 includes a connection number acquisition program 262, a communication start timing determination program 263, and a communication start timing transmission program 264. The connection number acquisition program 262 is a program for acquiring the number of devices currently connected to the constant connection server Pe1. The communication start timing determination program 263 is a program for determining the timing at which each of the multiple devices 30 starts communication with the topic distribution server SP1. The communication start timing transmission program 264 is a program for transmitting the communication start timing determined by the communication start timing determination program 263 to each of the multiple devices 30.

[0047] The system program 261 and / or the information processing program 260 include instruction codes for implementing the processes described below. The "program" for implementing the processes according to this embodiment encompasses the instruction codes included in the system program 261 and / or the instruction codes of the application programs included in the information processing program 260.

[0048] 3 is a schematic diagram showing an example of a hardware configuration of a topic distribution server SP1 included in an information processing system 100 according to this embodiment. The topic distribution server SP1 has a communication unit 13, a processor 14, a memory 15, a storage 16, and a bus 17.

[0049] The components included in the topic distribution server SP1 are connected to each other via a bus 17 so that they can communicate data with each other. The system program 161 in the storage 16 is a program for operating the topic distribution server SP1, and includes, for example, an OS and firmware. In addition to the system program 161, the storage 16 also stores a notification instruction program 162 and processing rate information 163.

[0050] The notification instruction program 162 is a program for issuing a notification instruction to the constant connection server Pe1. The processing rate information 163 is information indicating the frequency with which the topic distribution server SP1 is accessed from the device 30. In other words, the processing rate information 163 is information indicating the number of accesses per unit time, and is associated with a notification instruction and transmitted to the constant connection server Pe1. The topic distribution server SP1 may change the content of the processing rate information 163 for each notification instruction. For example, the storage 16 may include different processing rate information 163 for each topic.

[0051] 4 is a schematic diagram showing an example of the hardware configuration of device 30 included in information processing system 100 according to this embodiment. Device 30 has a display 31, an operation unit 32, a communication unit 33, a processor 34, a memory 35, a storage 36, and a bus 37.

[0052] The display 31 displays an image generated as a result of information processing executed by the processor 34. The display 31 may be composed of multiple displays. The operation unit 32 accepts operations by a user who operates the device 30. The operation unit 32 includes, for example, a push button, an operation lever, a touch panel, a mouse, a keyboard, etc.

[0053] The components included in the device 30 are connected to each other so as to be able to communicate data with each other via a bus 37. The system program 361 in the storage 36 is a program for operating the device 30, and includes, for example, an OS and firmware.

[0054] In addition to a system program 361, the storage 36 stores a game content program 362 and a communication start program 363. The game content program 362 is a program for executing game content. The communication start program 363 is a program for starting communication with the topic distribution server SP1. As described above, the device 30 is typically an information processing device dedicated to games, but it may be any general-purpose information processing device that is at least capable of executing games. In some aspects, the device 30 may be an information processing device such as a smartphone or tablet.

[0055] [D. Flow of communication processing from multiple devices 30 to topic distribution server SP1] In the following, in the information processing system 100 of this embodiment, in order to suppress an increase in the processing load of the topic distribution server SP1, it will be explained that the topic distribution server SP1 transmits processing rate information 163 to the constant connection server Pe1.

[0056] 5 is a timing chart for explaining the flow of communication processing between the topic distribution server SP1, the constant connection server Pe1, and the device 30 in this embodiment. In FIG. 5, the operations of the topic distribution server SP1, the constant connection server Pe1, and the devices 30A to 30C are shown in chronological order.

[0057] The device 30A establishes a session with the constant connection server Pe1 upon being connected to the network NW (step S10). The device 30B establishes a session with the constant connection server Pe1 upon being connected to the network NW (step S11). The device 30C establishes a session with the constant connection server Pe1 upon being connected to the network NW (step S13). This allows the constant connection server Pe1 to transmit various information to all of the devices 30A to 30C at any timing. In this way, the device 30 is configured to automatically establish a session with the constant connection server Pe1 upon being connected to the network NW.

[0058] Next, the topic distribution server SP1 sends a notification instruction to the constant connection server Pe1 indicating that a specific topic has been updated and that the device 30 should acquire the latest information (step S13). As shown in Fig. 5, in step S13, the topic distribution server SP1 sends processing rate information 163 corresponding to the notification instruction to the constant connection server Pe1. The topic distribution server SP1 sends the allowable processing rate information 163 according to its own processing capability and the content of the notification instruction.

[0059] For example, the topic distribution server SP1 transmits processing rate information 163 indicating 10,000 accesses per second to the constant connection server Pe1. The processing rate is measured in units such as "accesses / second" or "requests / minute," and an access or request refers to one communication from the device 30 to the topic distribution server SP1.

[0060] Upon receiving the processing rate information 163 and the notification instruction, the constant connection server Pe1 executes a connection number acquisition process (step S14). In the example of FIG. 5, the connection number acquisition process is executed at timing T1. The connection number acquisition process of step S14 is realized by the processor 24 of the constant connection server Pe1 executing the connection number acquisition program 262. Timing T1 may correspond to the "first timing" in this disclosure.

[0061] Thereafter, the constant connection server Pe1 executes a communication start timing determination process (step S15). The communication start timing determination process in step S15 is realized by the processor 24 of the constant connection server Pe1 executing the communication start timing determination program 263. The communication start timing is the timing at which communication with the topic distribution server SP1 is started, which is determined for each of the multiple devices 30. In the communication start timing determination process, a different communication start timing is determined for each device 30 that is connected to the constant connection server Pe1 and is the distribution target.

[0062] The communication start timing may be absolute timing, such as directly specifying a time, or may be relative timing determined based on the timing at which the communication start timing determination process is executed or a predetermined timing. In this embodiment, the communication start timing is determined as relative timing a predetermined period of time after the communication start timing information is transmitted by execution of the communication start timing transmission program 264. Note that when the communication start timing is absolute timing, such as directly specifying a time, the constant connection server Pe1 and the multiple devices 30 are time-synchronized.

[0063] The constant connection server Pe1 determines the communication start timing for each of the devices 30A to 30C. That is, the constant connection server Pe1 determines three communication start timings. In the example of Fig. 5, the constant connection server Pe1 determines at least one of the three communication start timings to be different timings, but may also determine some of the communication start timings to be the same timing.

[0064] The constant connection server Pe1 transmits information indicating the determined communication start timing to each of the devices 30A to 30C (step S16). In the example of Fig. 5, transmission of the communication start timing information starts at timing T10.

[0065] The device 30A receives communication start timing information indicating that communication with the topic distribution server SP1 will start at timing T11, a predetermined period of time after timing T10. As a result, as shown in FIG. 5, the device 30A starts communication with the topic distribution server SP1 at timing T11 (step S17).

[0066] Device 30B receives communication start timing information indicating that communication with topic distribution server SP1 will start at timing T12, a predetermined period of time after timing T10. As a result, as shown in FIG. 5, device 30B starts communication with topic distribution server SP1 at timing T12 (step S18).

[0067] The device 30C receives communication start timing information indicating that communication with the topic distribution server SP1 will start at timing T13, a predetermined period of time after timing T10. As a result, as shown in FIG. 5, the device 30C starts communication with the topic distribution server SP1 at timing T13 (step S19).

[0068] As a result, the topic distribution server SP1 is connected to three devices 30 during the period from timing T11 to T13. The processing rate information 163 indicates that three accesses are made during the period from timing T11 to T13. In this way, in the information processing system 100 of this embodiment, the constant connection server Pe1, which acts as an intermediary between the multiple devices 30 and the topic distribution server SP1, determines the communication start timing for each device 30, making it possible to start communication between each device 30 and the topic distribution server SP1 in accordance with the processing rate information 163. In other words, the information processing system 100 can suppress an increase in the processing load on the topic distribution server SP1 caused by multiple devices 30 communicating with one server at the same time.

[0069] [E. Processing of each configuration] Below, the processing performed by the topic distribution server SP1, the constant connection server Pe1, and the device 30A will be explained using flowcharts. Figure 6 is a diagram showing a flowchart of the notification instruction processing by the topic distribution server SP1. The processing of the flowchart in Figure 6 is realized by the processor 14 of the topic distribution server SP1 executing the notification instruction program 162. The topic distribution server SP1 repeatedly executes the flowchart of the notification instruction processing.

[0070] The topic distribution server SP1 determines whether or not it has received a command to execute a notification instruction (step S101). The command to execute a notification instruction is input to the topic distribution server SP1, for example, by an administrator who manages the information processing system 100. If the command to execute a notification instruction has not been received (NO in step S101), the topic distribution server SP1 ends the process.

[0071] If the command to execute the notification instruction is received (YES in step S101), the topic distribution server SP1 acquires the processing rate information 163 from the storage 16 (step S102). At this time, the topic distribution server SP1 may change the value of the acquired processing rate information 163 according to the content of the notification instruction. Alternatively, the topic distribution server SP1 may change the value of the acquired processing rate information 163 based on the usage rate of the processor 14, the free space of the memory 15, etc. The topic distribution server SP1 transmits the processing rate information 163 acquired in step S102 and the notification instruction to the constant connection server Pe1 (step S103), and ends the processing. The processing of step S103 in FIG. 6 corresponds to the processing of step S13 in FIG. 5.

[0072] Fig. 7 is a diagram showing a flowchart of the communication start timing transmission process by the constant connection server Pe1. The process of the flowchart in Fig. 7 is realized by the processor 24 of the constant connection server Pe1 executing the communication start timing transmission program 264. The constant connection server Pe1 repeatedly executes the flowchart in Fig. 7.

[0073] The constant connection server Pe1 determines whether or not it has received the notification instruction and the processing rate information 163 from the topic distribution server SP1 (step S201). If it has not received the notification instruction and the processing rate information 163 (NO in step S201), the constant connection server Pe1 ends the process.

[0074] When the constant connection server Pe1 receives the notification instruction and the processing rate information 163 (YES in step S201), the constant connection server Pe1 stores the received processing rate information 163 and notification instruction in the storage 26 (step S202). In the present embodiment, if the constant connection server Pe1 finds information about a notification that has been sent to each device 30 and that has been stored for a longer period of time after the execution of step S201 but before the execution of step S202, the constant connection server Pe1 may discard the information about the notification. This allows the constant connection server Pe1 to delete information about notifications sent to each device 30 in order, starting with the oldest information, thereby preventing the constant connection server Pe1 from overloading its resources. The constant connection server Pe1 acquires the number of connections of the device 30 (step S203). The constant connection server Pe1 executes the connection number acquisition program 262 to perform the process of step S203.

[0075] The constant connection server Pe1 determines a different communication start timing for each connected device 30. The constant connection server Pe1 executes the communication start timing determination program 263 to perform the process of step S204.

[0076] Fig. 8 is a flowchart showing an example of processing by executing the communication start timing determination program 263. The constant connection server Pe1 starts the processing of the flowchart in Fig. 8 based on the start of execution of the communication start timing determination program 263. The constant connection server Pe1 calculates the maximum waiting period based on the processing rate information 163 received from the topic distribution server SP1 and the number of connections acquired in step S203 (step S2041).

[0077] As explained in Fig. 5, the devices 30A to 30C wait for different waiting periods from the timing T10 at which they receive the communication start timing information, and then start communication with the topic distribution server SP1. The maximum waiting period is the upper limit of the period for which the devices 30 are made to wait.

[0078] If the maximum waiting period is short, the number of accesses to the topic delivery server SP1 per unit time increases, and the processing load on the topic delivery server SP1 increases. If the maximum waiting period is long, the number of accesses to the topic delivery server SP1 per unit time decreases, and the processing load on the topic delivery server SP1 also decreases. The constant connection server Pe1 calculates the maximum waiting period so that it does not exceed the processing rate information 163 received from the topic delivery server SP1, taking into account the number of connections acquired in step S203.

[0079] The topic distribution server SP1 determines the standby period for each device using a random number within the maximum standby period calculated in step S2041 (step S2042). For example, if the maximum standby period is one second, the standby period for each of the devices 30A to 30C is determined using a random number within a range of one second or less. By using a random number, the length of the standby period for each of the devices 30A to 30C can be determined randomly. This allows the order in which the devices 30A to 30C connect to the topic distribution server SP1 to be determined randomly for each notification instruction, preventing only some of the devices 30 from always being given priority in connecting to the topic distribution server SP1.

[0080] In this embodiment, the start of the standby period for each device 30 determined in step S2042 is the timing when the constant connection server Pe1 starts transmission to each device 30. That is, the start of the standby period is timing T10 in FIG. 5. By setting the start of the standby period to the timing when each device 30 starts transmission rather than the timing when each device 30 receives communication start timing information, the constant connection server Pe1 can centrally manage the standby periods of each device 30A. If the start of the standby period is set to the timing when each device 30 receives communication start timing information, the start of the standby period may differ for each device 30 because the communication environment with the constant connection server Pe1 differs for each device 30.

[0081] Next, the constant connection server Pe1 generates information indicating the communication start timing of each device 30 using the waiting period determined in step S2042 (step S2043). Returning to Fig. 7, the constant connection server Pe1 transmits a notification and communication start timing information to each device 30 (step S205). The process of step S205 in Fig. 7 corresponds to the process of step S16 in Fig. 5.

[0082] Fig. 9 is a flowchart showing the processing executed by the device 30. The device 30 realizes the processing of the flowchart in Fig. 9 by executing the communication start program 363. The device 30 repeatedly executes the flowchart in Fig. 9.

[0083] The device 30 determines whether or not it has received communication start timing information and a notification (step S301). If it has not received the communication start timing information and a notification (NO in step S301), the device 30 ends the process. If it has received the communication start timing information and a notification (YES in step S301), the device 30 saves the communication start timing information and the notification in the storage 36 (step S302).

[0084] The device 30 determines whether or not the timing indicated in the communication start timing information stored in the storage 36 has passed (step S303). In other words, the device 30 determines whether or not the timing indicated in the communication start timing information has arrived.

[0085] If the timing indicated in the communication start timing information has not passed (NO in step S303), the device 30 determines whether the connection with the constant connection server Pe1 has been disconnected (step S306). If the connection with the constant connection server Pe1 has not been disconnected (NO in step S306), the process returns to step 303. While the connection with the constant connection server Pe1 is maintained, the device 30 waits until the communication start timing arrives.

[0086] When the device 30 determines that the communication start timing has passed (YES in step S303), the device 30 starts communication with the topic distribution server SP1 (step S304). This allows each of the multiple devices to start communication with the topic distribution server SP1 based on the communication start timing determined by the constant connection server Pe1.

[0087] The device 30 discards the communication start timing information and the notification information from the storage 36 (step S305) and ends the process. Returning to step S306, if the connection with the constant connection server Pe1 has been disconnected (NO in step S306), the device 30 attempts to reconnect to the constant connection server Pe1 (step S307). The device 30 determines whether the reconnection attempt in step S307 was successful (step S308). If the reconnection is not successful (NO in step S308), the device 30 determines whether the timing indicated in the communication start timing information saved in the storage 36 has passed (step S309).

[0088] If the timing indicated in the communication start timing information has not passed (NO in step S309), the device 30 returns the process to step S307. If the timing indicated in the communication start timing information has passed (YES in step S309), the device 30 executes the process of step S304. As a result, even if the device 30 is disconnected from the constant connection server Pe1, the device 30 can execute the process of step S304 in response to the arrival of the communication start timing. Note that if the state in which the connection is unsuccessful continues for a predetermined period, the device 30 may end the process shown in FIG. 9 without attempting to reconnect to the constant connection server Pe1.

[0089] If the reconnection is successful (YES in step S308), the device 30 discards the communication start timing and notification (step S310), and acquires the communication start timing information and notification again from the constant connection server Pe1 (step S311). Thereafter, the device 30 executes the process of step S302 and saves the communication start timing information and notification acquired in step S311.

[0090] As a result, even if the device 30 is disconnected from the constant connection server Pe1, it can start communication with the topic distribution server SP1 when it returns. In this way, when communication with the constant connection server Pe1 is resumed after being disconnected, the device 30 in this embodiment obtains information indicating the notification and communication start timing from the constant connection server Pe1.

[0091] As described above, in this embodiment, the constant connection server Pe1 determines a different communication start timing for each device 30 based on the processing rate specified by the topic distribution server SP1 and the number of devices 30 connected to the constant connection server Pe1 at timing T1. As a result, in the information processing system 100 of this embodiment, the frequency with which the topic distribution server SP1 is connected from multiple devices 30 can be matched to the processing rate specified by the topic distribution server SP1. In other words, in the information processing system 100 of this embodiment, it is possible to prevent an increase in the processing load on the topic distribution server SP1 caused by multiple devices 30 communicating with the topic distribution server SP1 at the same time.

[0092] [F. Processing for newly connected device 30] 5, an example has been described in which the devices 30A to 30C are connected to the constant connection server Pe1 in advance before the topic distribution server SP1 issues a notification instruction to the constant connection server Pe1. However, after the notification instruction, a new device 30 may be connected to the constant connection server Pe1.

[0093] 10 is a diagram illustrating an example in which the device 30C establishes a session with the constant connection server Pe1 at timing T2. As shown in FIG. 10, the device 30C connects to the constant connection server Pe1 at timing T2, which is later than timing T1 at which the connection count acquisition process is executed (step S12A).

[0094] The constant connection server Pe1 executes a communication start timing determination process based on the new connection of the device 30C (step S15A). At this time, the constant connection server Pe1 determines the communication start timing of the device 30C by again using the maximum waiting period determined in step S15. The constant connection server Pe1 transmits the determined communication start timing information of the device 30C to the device 30C at timing T21 (step S16A). At timing T22, the device 30C starts communication with the topic distribution server SP1 based on the fact that the communication start timing has arrived (step S19). In FIG. 10, the device 30C may correspond to the "specific device" in the present disclosure.

[0095] 11 is a diagram illustrating that the same maximum standby period is used even when a new device 30 is connected. The horizontal axis of FIG. 11 represents time, and the vertical axis represents the number of devices 30 connected to the constant connection server Pe1.

[0096] At timing Ta1, the devices 30 with the number of connections S1 are connected to the constant connection server Pe1. At timing Ta1, the constant connection server Pe1 executes a process to determine the communication start timing for each of the devices 30 with the number of connections S1. At this time, the constant connection server Pe1 determines the maximum standby period based on the number of connections S1 and the processing rate information 163. The maximum standby period is the period from timing Ta1 to timing Tb1. In other words, during the period from timing Ta1 to timing Tb1, all of the devices 30 with the number of connections S1 start communication with the topic distribution server SP1.

[0097] At timing Ta2, a new device 30 connects to the constant connection server Pe1. Accordingly, the number of devices 30 connected to the constant connection server Pe1 increases from connection number S1 to connection number S2. As described in step 15A of FIG. 10, the constant connection server Pe1 also determines the communication start timing for the newly connected device 30. At this time, the constant connection server Pe1 determines the standby period for the newly connected device 30 at timing Ta1 within the range of the maximum standby period determined based on the connection number S1. In other words, the constant connection server Pe1 reuses the maximum standby period.

[0098] The period from timing Ta2 to timing Tb2 is the same as the period from timing Ta1 to timing Tb1. During the period from timing Ta2 to timing Tb2, a newly connected device 30 starts communication with the topic distribution server SP1 when the number of connections increases from S1 to S2.

[0099] Similarly, when a new device 30 connects to the constant connection server Pe1 at timing Ta3, the constant connection server Pe1 reuses the maximum standby period to determine the standby period. At timing Ta3, the number of connections of devices 30 connected to the constant connection server Pe1 increases from connection number S2 to connection number S3. The period from timing Ta3 to timing Tb3 is the same as the period from timing Ta1 to timing Tb1. During the period from timing Ta3 to timing Tb3, the newly connected device 30 communicates with the topic distribution server SP1 when the number of connections increases from S2 to S3. In this way, in this embodiment, after the maximum standby period is determined, the initial maximum standby period is used for the newly connected device 30 as well, thereby reducing the processing load on the constant connection server Pe1.

[0100] [G. Simultaneous acquisition of multiple topics] 12 is a diagram illustrating an example in which one device 30 receives notifications related to multiple types of topics. In the above, an example in which devices 30A and 30B subscribe to a topic called "information related to game content G1" is described as an example of a topic. Devices 30A and 30B can subscribe to multiple types of topics other than the topic "information related to game content G1."

[0101] For example, in the information processing system 100, accounts held by users are classified as paid members and non-paid members. As described above, a device 30 associated with an account registered as a paid member is automatically configured to subscribe to a topic called "Information Exclusive to Paid Members." The topic distribution server SP1 transmits, via the constant connection server Pe1, information about services available only to paid members to devices 30 that are the target of distribution of the topic called "Information Exclusive to Paid Members."

[0102] Information regarding a system update for the device 30 itself relates to all devices 30 included in the information processing system 100. Therefore, all devices 30 included in the information processing system 100 are the distribution targets of the topic "Information regarding a system update for the device 30 itself." The topic distribution server SP1 transmits, for example, a patch or the like for updating the system of the device 30 itself to all devices 30 that are the distribution targets of the topic "Information regarding a system update for the device 30 itself."

[0103] In this embodiment, the device 30 may simultaneously receive notifications related to multiple topics from the constant connection server Pe1. Meanwhile, the upper limit of the number of notifications that can be temporarily stored in the storage 36 of the device 30 is predetermined. In the example of FIG. 12, the device 30 is configured to simultaneously store notifications related to up to three topics.

[0104] In FIG. 12, the horizontal axis represents the time axis. FIG. 12 shows five topics, from topic A to topic E. FIG. 12 shows an example in which a certain device 30 subscribes to all five topics, from topic A to topic E. The device 30 in FIG. 12 receives a notification about topic A from the constant connection server Pe1 at timing T31. At this time, the device 30 receives communication start timing information for topic A. The communication start timing information for topic A indicates that communication with the topic distribution server SP1 will start at timing T39. The device 30 in FIG. 12 temporarily stores information about the notification about topic A in storage 36.

[0105] 12 receives a notification about topic B from the constant connection server Pe1 at timing T32. At this time, the device 30 receives communication start timing information for topic B. The communication start timing information for topic B indicates that communication with the topic distribution server SP1 will start at timing T37. The device 30 in FIG. 12 temporarily stores information about the notification about topic B in storage 36.

[0106] Next, at timing T33, the device 30 in FIG. 12 receives a notification for topic C from the constant connection server Pe1. At this time, the device 30 receives communication start timing information for topic C. The communication start timing information for topic C indicates that communication with the topic distribution server SP1 will start at timing T36. The device 30 in FIG. 12 temporarily stores information related to the notification for topic C in storage 36. At timing T36, information related to three notifications is stored in storage 36, reaching the upper limit.

[0107] 12 receives a notification about topic D from the constant connection server Pe1 at timing T34. At this time, the device 30 receives communication start timing information for topic D. The communication start timing information for topic D indicates that communication with the topic distribution server SP1 will start at timing T38. Here, the number of notifications that can be temporarily held in the storage 36 of the device 30 exceeds a predetermined upper limit.

[0108] In this case, the device 30 deletes the notification associated with each of the topics A, B, C, and D that has the latest communication start timing among the notifications of the topics A, B, C, and D. That is, in the example of FIG. 12, the device 30 deletes information related to the notification of the topic A.

[0109] 12 receives a notification about topic E from the constant connection server Pe1 at timing T35. At this time, the device 30 receives communication start timing information for topic E. The communication start timing information for topic E indicates that communication with the topic distribution server SP1 will start at timing T40. The storage 36 of the device 30 has already stored up to the upper limit.

[0110] The device 30 deletes the notification associated with each of the notifications of topics B, C, D, and E that has the latest communication start timing. That is, in the example of Fig. 12, the device 30 deletes information related to the notification of topic E. In this way, when the number of notifications that can be temporarily held exceeds a predetermined upper limit, the device 30 prioritizes deleting, from among the multiple notifications, the notification associated with each of the multiple notifications that has the latest communication start timing.

[0111] At timing T36, the device 30 starts communication with the topic distribution server SP1 to obtain the latest information about topic C. Thereafter, the device 30 deletes the information related to the notification of topic C. At timing T37, the device 30 starts communication with the topic distribution server SP1 to obtain the latest information about topic B. Thereafter, the device 30 deletes the information related to the notification of topic B.

[0112] Furthermore, at timing T38, the device 30 starts communication with the topic distribution server SP1 to acquire the latest information about topic D. Thereafter, the device 30 deletes information related to notifications about topic D. At this time, based on the deletion of all notifications, the device 30 reacquires notifications about all topics A to E to which it subscribes. As a result, at timing T38, notifications about topics B, C, and D after the communication start timing has already passed will also be acquired, but the device 30 will not again communicate with the topic distribution server SP1 about topics B, C, and D for which it has already acquired information from the topic distribution server SP1.

[0113] At timing T38, the device 30 temporarily stores the notification regarding topic A and the notification regarding topic E in the storage 36. Thereafter, at timing T39, the device 30 starts communication with the topic distribution server SP1 to obtain the latest information regarding topic A, based on the fact that the communication start timing for topic A has passed. Furthermore, at timing T40, the device 30 starts communication with the topic distribution server SP1 to obtain the latest information regarding topic E, based on the fact that the communication start timing for topic E has passed.

[0114] In this way, the device 30 in this embodiment receives communication start timings for all subscribed topics again from the constant connection server Pe1 based on the deletion of information related to the notification corresponding to the upper limit number (the notification for topic D in the example of FIG. 12). This allows the device 30 to obtain the latest information for all topics even when subscribing to multiple types of topics.

[0115] [H. Variations] The following describes other embodiments that are partial modifications of the above-described embodiment. Each of the processors 34, 44, 54 may be configured as a single chip or may be configured as multiple chips.

[0116] Each of the processors 34, 44, 54 and associated processing circuitry may be implemented as multiple computers interconnected by wire or wirelessly, such as via a local area network or a wireless network. The processors and associated processing circuitry may also be implemented as cloud computers that perform remote computations based on input data and output the computation results to other devices at remote locations.

[0117] In the example of FIG. 1, the information processing system 100 has one topic distribution server SP1, but the topic distribution server SP1 may be configured to include multiple topic distribution servers for each topic.

[0118] In FIG. 1, the constant connection server Pe1 and the topic distribution server SP1 are depicted as a single device. However, these servers may be realized as a collection of multiple devices. For example, the constant connection server Pe1 may be configured to include multiple servers. Similarly, the device 30 may be realized as a collection of multiple devices. For example, the device 30 may have separate components consisting of a main body unit having at least a processor, a terminal unit having at least an operation unit, and a display unit having at least a display.

[0119] In the above example, the constant connection server Pe1 determines the maximum standby period for each device 30 based on the processing rate information 163 and the number of connections. However, the constant connection server Pe1 may determine the maximum standby period based on the processing rate information 163 and the number of subscribers to the topic to be notified. Alternatively, the constant connection server Pe1 may determine the maximum standby period based on the processing rate information 163 and the number of devices 30 that can be connected to the constant connection server Pe1. The number of devices 30 that can be connected to the constant connection server Pe1 does not mean the devices 30 currently connected to the constant connection server Pe1, but rather means, for example, the number of devices 30 registered in the constant connection server Pe1.

[0120] In the above example, the initially calculated maximum standby period is reused when a new device 30 is connected. However, when a new device 30 is connected, for example, if the number of new devices 30 exceeds a predetermined number, the maximum standby period may be recalculated.

[0121] Furthermore, in the above example, it has been explained that the constant connection server Pe1 may discard information about a notification that has been sent to each device 30 and that has been stored for a period longer than a predetermined period after executing the process of step S201 and before executing the process of step S202. However, the process of discarding the information about the notification may also be executed after step S205, when the information about the notification has been sent to each device 30.

[0122] In addition, "association" in this disclosure includes not only direct association within the same table or file, but also indirect association by referencing multiple tables or files.

[0123] In this disclosure, the term "server" encompasses both the meaning of computing resources (hardware) for executing the processing required by a server, and the meaning of a program for executing the processing required by a server or the state in which the program is being executed (software).

[0124] The embodiments disclosed herein should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]

[0125] 30, 30A to 30C devices, 31 display, 32 operation unit, 100 information processing system, 161, 261, 361 system program, 162 notification instruction program, 163 processing rate information, 260 information processing program, 262 connection number acquisition program, 263 communication start timing determination program, 264 communication start timing transmission program, 362 game content program, 363 communication start program, Pe1 always-on server, G1, G2 game content, NW network, S1, S2, S3 number of connections, SP1 topic distribution server.

Claims

1. a first server; a second server that receives the notification instruction transmitted from the first server; a plurality of devices that receive a notification based on the notification instruction from the second server; the second server determines different communication start timings for the plurality of devices based on a processing rate specified by the first server and the number of connections of the plurality of devices connected to the second server at a first timing; After receiving the notification, each of the plurality of devices starts communication with the first server based on the passage of the communication start timing.

2. The second server determining a maximum waiting period based on the number of connections and the processing rate at the first timing; The system described in claim 1, wherein a waiting period shorter than the maximum waiting period is determined for each of the plurality of devices connected to the second server at the first timing, and the communication start timing is determined for each of the plurality of devices based on the waiting period.

3. The second server a constant connection server that maintains a session between the second server and each of the plurality of devices; 3. The system of claim 2, wherein, when a specific device included in the plurality of devices is newly connected to the second server at a second timing after the first timing, a waiting period shorter than the maximum waiting period is determined, and the communication start timing of the specific device is determined based on the waiting period.

4. Each of the plurality of devices The notification received from the second server is held until the communication start timing has elapsed; 4. The system according to claim 1, wherein communication with the first server is started based on the passage of the communication start timing.

5. Each of the plurality of devices storing the information indicating the communication start timing and the notification; After the communication start timing has passed, discard the information indicating the communication start timing and the notification; A system as described in any one of claims 1 to 3, wherein, while retaining the notification and information indicating the communication start timing, when communication with the second server is resumed after communication with the second server is disconnected, the notification and information indicating the communication start timing are discarded and the notification and information indicating the communication start timing are re-acquired from the second server.

6. The system according to claim 2 , wherein the timing to start communication is determined based on the timing of transmission of the notification from the second server to each of the plurality of devices and the waiting period.

7. Each of the plurality of devices acquires a plurality of notifications from the second server, and when the number of notifications that can be temporarily held exceeds an upper limit, deletes, from among the plurality of notifications, notifications that have the latest communication start timing associated with each of the plurality of notifications; A system as described in any one of claims 1 to 3, wherein after starting communication with the first server based on a notification corresponding to the upper limit number, the deleted notification and the communication start timing associated with the notification are re-received from the second server.

8. 1. A method of communicating using a system, comprising: The system comprises: a first server; a second server that receives the notification instruction transmitted from the first server; a plurality of devices that receive a notification based on the notification instruction from the second server; The method comprises: causing the second server to determine different communication start timings for the plurality of devices based on a processing rate designated by the first server and the number of connections of the plurality of devices connected to the second server at a first timing; and causing each of the plurality of devices to start communication with the first server based on the passage of the communication start timing after receiving the notification.

9. The method comprises:

9. The method of claim 8, further comprising: causing the second server to determine, for each of the plurality of devices connected to the second server at the first timing, a waiting period that is shorter than a maximum waiting period determined by the second server based on the number of connections and the processing rate at the first timing; and determining the communication start timing for each of the plurality of devices based on the waiting period.

10. the second server is a constant connection server that maintains a session between the second server and each of the plurality of devices; The method comprises:

10. The method of claim 9, further comprising: when a specific device included in the plurality of devices is newly connected to the second server at a second timing after the first timing, determining a waiting period shorter than the maximum waiting period, and determining the communication start timing for the specific device based on the waiting period.

11. The method comprises: causing each of the plurality of devices to hold the notification received from the second server until the communication start timing has elapsed; The method according to any one of claims 8 to 10, further comprising the step of causing each of the plurality of devices to start communication with the first server based on the received notification after the communication start timing has elapsed.

12. A program for communicating using a system, The system comprises: a first server; a second server that receives the notification instruction transmitted from the first server; a plurality of devices that receive a notification based on the notification instruction from the second server; the second server has one or more processors; The program causes the one or more processors to: acquiring the number of connections of the plurality of devices connected to the second server at a first timing; and determining a different communication start timing for each of the plurality of devices based on the processing rate specified by the first server and the number of connections of the plurality of devices.

13. The program causes the one or more processors to: determining a maximum waiting period based on the number of connections and the processing rate at the first timing; The program according to claim 12, further comprising: a step of determining a standby period shorter than the maximum standby period for each of the plurality of devices connected to the second server at the first timing; and a step of determining the communication start timing for each of the plurality of devices based on the standby period.

14. the second server is a constant connection server that maintains a session between the second server and each of the plurality of devices; The program causes the one or more processors to: determining a standby period shorter than the maximum standby period when a specific device included in the plurality of devices is newly connected to the second server at a second timing after the first timing; and determining the communication start timing of the specific device based on the waiting period.

Citation Information

Patent Citations

  • Information processor, server apparatus, information processing method and program

    JP2015032184A