Presence Server Mediator Distribution for Scalability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional presence servers face scalability and performance issues in managing real-time presence information for large user communities, leading to lost messages and inaccurate data due to memory and processor limitations, especially when handling numerous updates and community connections via gateways.

Innovation Solution

A presence system that selects mediators to distribute presence information to subsets of users, offloading the burden from the primary presence server and allowing for autonomous management and optimization of presence data, thereby reducing the load and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the presence server uses more threads to handle more users and presence information updates, then the system can support larger user bases and higher update frequencies, but memory restrictions and central processor capabilities limit the ability to simply use more threads

Engineering Contradiction:
Improvepresence information update throughputVSAvoidmemory and processor resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent divides the user base into multiple communities, each handled by a dedicated thread. Instead of using one thread for all users (which would require excessive memory and processing), the system segments users into manageable groups. Each community thread manages presence information for its assigned users independently, reducing the memory footprint and processing burden per thread while maintaining overall system capacity to handle large user bases.

Inventive Principle:
Principle #1Segmentation

2Reliability

If messages are placed in FIFO queues for processing, then message delivery order is maintained, but messages that are not addressed within a prescribed time limit time out and are not delivered, resulting in lost messages and inaccurate presence information

Engineering Contradiction:
Improvepresence information accuracyVSAvoidmessage delivery delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements dynamic thread assignment where community threads are activated and deactivated based on real-time presence information activity. When presence information changes occur for users in a community, the corresponding community thread is activated to process and distribute updates. This dynamic approach ensures that messages are processed promptly when needed rather than waiting in static FIFO queues, reducing timeout occurrences while maintaining reliable presence information delivery.

Inventive Principle:
Principle #15Dynamics

3Speed

If the presence server handles all presence information distribution centrally, then real-time updates can be maintained, but scalability is limited by the server's processing capacity and message queue throughput

Engineering Contradiction:
Improvepresence information distribution speedVSAvoidsystem scalability
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent segments the centralized presence server functionality into multiple distributed community threads, each handling a specific group of users. This segmentation allows the system to scale horizontally by adding more community threads as the user base grows, rather than being limited by a single server's processing capacity. Each community thread maintains real-time presence information for its users, preserving update speed while enabling system scalability through distributed architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimension centralized server model to a multi-dimensional distributed thread model. Instead of one server handling all users sequentially or in a single queue, the system creates multiple parallel processing dimensions through community threads. This dimensional change allows simultaneous presence information distribution across multiple user groups, increasing overall system capacity and scalability while maintaining real-time update capabilities.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9544206B2Autonomic optimization of presence server performance
Publication Date: 2017.01.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9544206B2 patent drawing
  • US9544206B2 patent drawing
  • US9544206B2 patent drawing

AI summary

A presence system comprises a presence server and a plurality of users in a distributed community of users that are associated with the presence server. The presence server selects a set of mediators, e.g., based upon a predetermined event, or other suitable factors, wherein each mediator is associated with a subset of the plurality of users. The presence server communicates presence information to the mediators where each mediator receives presence information regarding subscribed-to presence information for the users in their associated subset of users. Each mediator communicates the subscribed-to presence information to associated ones of the users in their associated subset of users.