Client-Side Traffic Throttling for Web Server Overload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Web servers face challenges in managing abnormal peak traffic during promotional events, leading to server overload, bad customer experience, and potential perception of unreliability, with existing solutions being costly and resource-intensive.
Innovation Solution
Implementing a client-side solution where a 'rich' client application caches content and manages user interactions during peak times, using time intervals to throttle connections and provide asynchronous communication, allowing users to interact with pre-downloaded content without constant server connections, and employing contests or games to gradually reduce the number of active users.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the Web server handles peak traffic by increasing server capacity, then the server can accommodate more connection requests, but the cost and resource consumption increase significantly
Solution Approach 1:
The system performs preliminary actions by having clients download and cache promotion content before the actual peak traffic event. The client application pre-loads promotional materials, product information, and other static content so that during peak traffic, users can access this cached content without requiring server connections, thereby reducing the number of servers needed during high-demand periods
Solution Approach 2:
The system creates copies of promotion content and stores them in the client application's local storage. Instead of requiring all users to connect to the server for every promotion detail, the server provides content once, and the client stores copies that can be accessed locally. This copying approach significantly reduces the server connection burden during peak traffic while maintaining full functionality for users
2Productivity
If the Web server increases connection handling capacity, then more users can access the promotion page simultaneously, but the server may still overload and refuse connection requests
Solution Approach 1:
The system performs preliminary content retrieval and caching before peak traffic occurs. Clients download promotion pages, product details, and other static content in advance, so that during peak traffic periods, users can access this pre-fetched content without requiring new server connections. This preliminary action prevents server overload by eliminating the need for continuous connection handling during high-demand periods
Solution Approach 2:
The client application acts as an intermediary between the user and the server. Instead of users directly connecting to the server for every content request, the client application mediates by providing cached content locally. This intermediary approach reduces the number of direct server connections needed, preventing overload while maintaining service availability
3Adaptability or versatility
If users continuously refresh the promotion page to gain better positions, then they may secure better promotion access, but the number of connection requests to the server increases exponentially
Solution Approach 1:
The system performs preliminary content caching so that promotion pages and related content are available locally in the client application before peak traffic. Users can view promotion details, compare offers, and access all necessary information without continuously refreshing pages or making new connection requests. The content is pre-loaded and stored, eliminating the need for repetitive connection attempts while still allowing users to secure their desired promotion positions
Solution Approach 2:
The client application creates and stores copies of promotion page content locally. Instead of requiring users to make multiple connection requests to refresh pages and check for better positions, the system provides copies of the promotion information that can be accessed repeatedly from local storage. This copying mechanism maintains user ability to evaluate and secure promotion positions while dramatically reducing the number of server connection requests
Data Source
AI summary
Users are allowed to communicate with a server via a local client even when the server experiences an abnormal peak of traffic. The local client is configured to send a new connection request only after a specified time interval passes from a previous connection. The local client presents content, such as a game, that makes it appear to the user as if the user is interacting with the server while the local client is waiting for reconnection to the server. The user interactions during the time interval are locally stored and later provided to the server for further process.


