Locking Service for Clustered Messaging Data Traffic Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large clusters of network servers using J2EE architecture, each EJB container registering as a listener for a messaging topic results in messages being sent and received multiple times, causing data conflicts and increased traffic, as existing systems do not ensure unique message delivery.

Innovation Solution

Implement a locking service that allows only one server to register as a message listener for a particular messaging destination, preventing other servers from registering once the initial server is locked in, thereby ensuring messages are received only once and reducing data traffic within the cluster.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If each EJB container registers as a listener for a messaging topic, then all servers can receive messages, but messages are sent and received multiple times causing increased data traffic

Engineering Contradiction:
Improvemessage delivery completenessVSAvoidmessaging data traffic
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent introduces a locking service as an intermediary between the messaging service and EJB containers. This locking service acts as a mediator that receives listener registration requests, checks for existing locks, and either grants or denies registration based on lock status. The locking service thereby controls message flow to prevent duplicate deliveries while ensuring reliable message receipt.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If each EJB container registers as a listener for a messaging topic, then all servers can receive messages, but data conflicts occur due to multiple message receptions

Engineering Contradiction:
Improvemessage delivery completenessVSAvoiddata conflicts
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The locking service serves as an intermediary that prevents data conflicts by controlling which EJB containers can register as listeners. By mediating the registration process and enforcing a single-listener rule through locking mechanisms, the system ensures that only one container receives messages for a given topic, thereby eliminating data conflicts while maintaining complete message delivery.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of energy

If a locking service is implemented to prevent multiple servers from registering as listeners, then data traffic is reduced, but system complexity increases

Engineering Contradiction:
Improvemessaging data trafficVSAvoidsystem architecture
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The locking service is designed to be a universal component that can be integrated into existing J2EE messaging infrastructure without requiring fundamental architectural changes. It provides multiple functions including listener registration control, lock management, and message routing coordination, thereby reducing overall system complexity through consolidation while achieving traffic reduction.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Loss of energy

If only one server is allowed to register as a message listener, then messaging data traffic is reduced, but the system requires a locking mechanism increasing operational complexity

Engineering Contradiction:
Improvemessaging data trafficVSAvoidlistener registration process
Core Design Contradiction:
Loss of energyVSEase of operation

Solution Approach 1:

The locking service implements self-service mechanisms where EJB containers automatically attempt to acquire locks during the listener registration process. The service autonomously manages lock acquisition, release, and conflict resolution without requiring manual intervention or complex operational procedures. This automation simplifies the registration process while maintaining traffic reduction benefits.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7624144B1System and method for reducing data traffic associated with a messaging service in a clustered server environment
Publication Date: 2009.11.24 SAP SE
  • US7624144B1 patent drawing
  • US7624144B1 patent drawing
  • US7624144B1 patent drawing

AI summary

A system and method are described for reducing messaging data traffic within a cluster of servers. According to one embodiment, each server within the cluster initially attempts to register as a message listener for a particular messaging destination (e.g., JMS Topic). After one server successfully registers, a locking service locks out all other servers from registering as listeners. Subsequently, any messages directed to the messaging destination are forwarded only to the registered server and not the other servers in the cluster, thereby reducing messaging data traffic. If the registered server becomes inoperative, the cluster is notified and the other servers again attempt to register. The first to successfully register is again identified as the listener for the cluster.