Client Reconnection Random Delay Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
When a server is restarted or breaks down, the simultaneous reconnection requests from clients exceed the server's processing capability, leading to surge requests and potential service interruptions due to the fixed connection processing rate being overwhelmed.
Innovation Solution
Clients calculate a random delay time using random number seed information and a random function after disconnection, then reattempt connections at this delay, preventing simultaneous reconnects and ensuring requests align with the server's processing capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If clients immediately request reconnection after server disconnection, then connection speed is improved, but server processing capability is exceeded causing surge requests
Solution Approach 1:
The system performs preliminary action by calculating and setting a random delay time before the actual reconnection attempt. This preliminary delay prevents clients from immediately reconnecting, thereby avoiding server overload while still enabling eventual reconnection. The delay time is predetermined based on server status and client configuration.
Solution Approach 2:
The system implements periodic action through random delay intervals between disconnection and reconnection attempts. Instead of continuous or immediate reconnection requests, clients wait for a randomly determined period before attempting to reconnect, which distributes the reconnection load over time and prevents server processing capability from being exceeded.
2Quantity of substance
If server connection capability is increased to handle more clients, then service capacity is improved, but connection processing rate becomes bottleneck causing request backlog
Solution Approach 1:
The system applies dynamics by making the reconnection timing flexible and adaptive rather than fixed. The random delay time varies for different clients and different disconnection events, creating a dynamic reconnection pattern that adapts to server capacity and client needs, thereby balancing the number of connected clients with the processing rate.
Solution Approach 2:
The system changes parameters by adjusting the delay time parameter before reconnection attempts. By modifying this temporal parameter randomly, the system controls the flow of reconnection requests to match server processing capability, preventing request backlog even when many clients need to reconnect.
3Reliability
If exponential reconnection requests are allowed after client connection failure, then client connection recovery is improved, but service quality deteriorates due to request surge
Solution Approach 1:
The system performs preliminary action by establishing a random delay mechanism before clients attempt reconnection. This preliminary step ensures that connection recovery is systematic rather than chaotic, maintaining service quality by preventing exponential request surges while still enabling all clients to eventually recover their connections.
Data Source
AI summary
The present invention discloses a method for connecting clients with a server. The method includes: the client obtains random number seed information; the client calculates out a random delay time according to the random number seed information and a random function after the client is disconnected from the server, wherein the random delay time is a delay time for reconnection between the client and the server; and the client sends a connection request to the server upon expiry of the random delay time. Therefore, when the server is restarted or breaks down, each client delays the connection according to the random delay time calculated by them respectively, thereby preventing plenty of clients from requesting to connect to the server simultaneously and avoiding service interruption of the server.


