Client-Server Event Framework for Asynchronous AJAX Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing client-server computing systems are inefficient due to server-intensive frameworks that require multiple HTTP requests and page reloads for managing client-side events, leading to suboptimal use of networking and processing resources.
Innovation Solution
A framework divided between client and server, featuring a client-side controller for managing events and a server-side controller for responding to requests, enabling asynchronous communication and dynamic loading of new content without full page reloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If server-intensive frameworks are used with controller-model-view all located on server, then server can manage events centrally, but multiple HTTP requests and page reloads are required causing inefficient network and processing resource usage
Solution Approach 1:
The framework is divided into client-side and server-side controllers, each managing events in their respective environments. The client-side controller handles client events locally, while the server-side controller manages server events, reducing the need for constant server communication and page reloads.
Solution Approach 2:
An event manager acts as an intermediary between client and server, registering client events and retrieving server notifications asynchronously. This mediator enables efficient event coordination without requiring full page reloads or multiple HTTP requests for each event.
2Adaptability or versatility
If multiple events occur on a single webpage requiring multiple HTTP requests and responses, then each event can be processed independently, but the client experiences multiple page reloads resulting in poor resource utilization
Solution Approach 1:
The client-side controller continuously monitors for events and the server-side controller continuously provides notifications without requiring discrete HTTP requests for each event. This continuous asynchronous communication eliminates repeated page reloads and optimizes resource usage while maintaining independent event processing capability.
Solution Approach 2:
The system uses periodic polling where the client event manager retrieves notifications from the server controller at scheduled intervals. This periodic action allows multiple events to be processed efficiently without triggering multiple full page reloads, as notifications are retrieved asynchronously in a structured manner.
3Reliability
If frameworks provide comprehensive tools and APIs for development, then software quality and portability improve, but the complexity of the framework itself increases
Solution Approach 1:
The framework provides universal event management capabilities that work across different client-server configurations. The client-side and server-side controllers use standardized interfaces for event registration and notification retrieval, enabling the same framework to handle diverse event scenarios without increasing overall complexity.
Data Source
AI summary
A method and system for managing events associated with either the client or the server using a controller framework includes initiating a request at a client. The request triggers an event that is processed using a client controller on the client. The client controller registers the event on the client, forwards the event to a server controller on a server, polls the server controller on the server periodically for information related to the event and retrieves notifications in response to the request or upon a poll. The client controller communicates with the server controller using asynchronous communication. The response retrieved by the client controller is loaded onto the browser of the client dynamically and rendered at the client as and when notifications are received from the server.


