Polling-Based Alert System In-Memory Caching and HTTP Protocol

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy systems using conventional polling architectures for message delivery face performance issues due to high database usage and network traffic, leading to reduced scalability and increased latency in communicating alerts to multiple clients.

Innovation Solution

Implementing in-memory caching to reduce database calls and switching from SOAP to a lightweight HTTP-based protocol for the GetUnreadAlerts call, which includes a temporary token for security, to decrease the payload and increase efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If conventional polling architecture is used for message delivery, then system simplicity is maintained, but database usage and network traffic increase significantly

Engineering Contradiction:
Improvesystem architecture simplicityVSAvoiddatabase usage and network traffic
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The system performs preliminary actions by establishing persistent connections and pre-fetching message data before clients actually need it. The server proactively pushes messages to clients as they arrive, rather than waiting for poll requests, thus reducing the need for repeated database queries and network transactions during polling cycles.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary caching layer between the database and the polling mechanism. Message data is cached in memory after initial retrieval, allowing multiple clients to access the same message data without triggering additional database queries. This intermediary layer significantly reduces database usage while maintaining system simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If polling frequency is increased to improve message delivery speed, then latency is reduced, but database usage and network traffic increase

Engineering Contradiction:
Improvemessage delivery speedVSAvoiddatabase usage and network traffic
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system implements continuous useful action through persistent connections that remain open between poll cycles. Messages are pushed continuously to clients as they arrive, eliminating the stop-start nature of traditional polling. This allows the system to maintain high message delivery speed without increasing polling frequency, thereby reducing database usage and network traffic overhead.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent creates copies of message data in client memory upon receipt. Once a client receives a message through the pushed model, the data is cached locally, eliminating the need for subsequent poll requests to retrieve the same message. This copying mechanism reduces network traffic and database usage while maintaining fast message delivery.

Inventive Principle:
Principle #26Copying

3Reliability

If SOAP protocol is used for GetUnreadAlerts calls, then security and standardization are maintained, but payload size and processing overhead increase

Engineering Contradiction:
Improvesecurity and standardizationVSAvoidpayload size and processing overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts only the essential security elements from the SOAP protocol for the GetUnreadAlerts calls. Instead of using full SOAP envelopes with extensive header information, the system uses a simplified protocol that includes only the necessary temporary token for authentication. This extraction reduces payload size and processing overhead while maintaining security through the token-based authentication mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

4Adaptability or versatility

If legacy polling system is used, then compatibility with existing infrastructure is maintained, but scalability is limited

Engineering Contradiction:
Improvecompatibility with existing infrastructureVSAvoidscalability
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system implements dynamics by allowing clients to operate in multiple modes. New clients can utilize the optimized pushed model with persistent connections for high scalability, while legacy clients continue to use traditional polling for compatibility. The server dynamically adapts its response mechanism based on client capabilities, enabling the system to scale efficiently without sacrificing compatibility with existing infrastructure.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9172765B2Polling-based secure network message notification system and method with performance enhancing features
Publication Date: 2015.10.27 DESKTOP ALERT
  • US9172765B2 patent drawing
  • US9172765B2 patent drawing
  • US9172765B2 patent drawing

AI summary

A method for the dissemination of an alert message to a plurality of personal computers using a network communications protocol from a server is disclosed that includes a first step wherein the client contacts the central server and requests the value of said alert ID number in said memory, a second step wherein said server transmits said value to said client, a third step wherein said client compares a stored value at the client with the value of the transmitted alert ID number, and if said transmitted value exceeds said stored value, a fourth step wherein said client transmits a second message to said server and requests for the server to transmit all unread alert messages in a GetUnreadAlerts SOAP request from said server that are specific to said client.