IP Library › Granted Patent US 8,037,153
Granted Patent B2
US 8,037,153 · App. 10/026,385 · Granted Oct 11, 2011

Dynamic partitioning of messaging system topics

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,037,153
App. No.
10/026,385
Granted
Oct 11, 2011
Kind
B2
Abstract

A dynamic topic partitioning messaging system. The messaging system can include a message server; one or more topics stored in the message server; one or more subtopics associated with at least one of the topics in the message server; and, a dynamic topic partitioning system configured to partition the topics into the subtopics. Notably, the message server can be Java message service (JMS) compliant. In that regard, the message server can reside in a single process address space. For example, the process address space can be a Java virtual machine (JVM).

Claims (42)

1. A message system servicing method performed within a message server, comprising:

receiving, from a message publisher, a request to create a topic;

subdividing the topic into a plurality of subtopics;

storing, within separate ones of the plurality of subtopics, messages posted to the topic;

receiving, from a message subscriber, a request to retrieve messages from the topic;

upon determining that the messages exist, for the requested topic, within the separate ones of the plurality of subtopics, creating a separate retrieval thread of execution for each specific subtopic and subscriber pair; and

retrieving the messages, from within the separates ones of the plurality of subtopics, respectively using the separate retrieval thread of execution for each subtopic and subscriber pair.

2. The method of claim 1 , wherein said message server is Java message service (JMS) compliant.

3. The method of claim 1 , wherein said message server resides in at least one process address space.

4. The method of claim 3 , wherein said at least one process address space is a Java virtual machine.

5. A messaging computer system comprising:

a message server;

fixed storage configured to store

a plurality of topics, and

a plurality of subtopics associated with one of said topics; and

a dynamic topic partitioning system configured to

receive, from a message publisher, a request to create the one of said topics;

subdivide the one of said topics into the plurality of subtopics;

store, within separate ones of the plurality of subtopics,

messages posted to the one of said topics;

receiving, from a message subscriber, a request to retrieve messages from the one of said topics;

upon determining that the messages exist, for the requested one of said topics, within the separate ones of the plurality of subtopics, creating a separate retrieval thread of execution for each specific subtopic and subscriber pair; and

retrieving the messages, from within the separate ones of the plurality of subtopics, respectively using the separate retrieval thread of execution for each specific subtopic and subscriber pair.

6. The messaging computer system of claim 5 , wherein

said message server is Java message service (JMS) compliant.

7. The messaging computer system of claim 5 , wherein

said message server resides in at least one process address space.

8. The messaging computer system of claim 7 , wherein

said at least one process address space is a Java virtual machine.

9. A computer-readable storage device having stored thereon a computer program for performing message system servicing, said computer program comprising a routine set of instructions, which when executed by a messaging computer system, causing the message computer system to perform:

receiving, from a message publisher, a request to create a topic;

subdividing the topic into a plurality of subtopics;

storing, within separate ones of the plurality of subtopics, messages posted to the topic;

receiving, from a message subscriber, a request to retrieve messages from the topic;

upon determining that the messages exist, for the requested topic, within the separate ones of the plurality of subtopics, creating a separate retrieval thread of execution for each specific subtopic and subscriber pair; and

retrieving the messages, from within the separates ones of the plurality of subtopics, respectively using the separate retrieval thread of execution for each specific subtopic and subscriber pair.

10. The computer-readable storage device of claim 9 , wherein

said message server is Java message service (JMS) compliant.

11. The computer-readable storage device of claim 9 , wherein

said message server resides in at least one process address space.

12. The computer-readable storage device of claim 11 , wherein

said at least one process address space is a Java virtual machine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2001
From: MONTERO, GABRIEL G.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 012408/0202 →
Continuity (1)
Related Publication 20030120720A1 · Jun 26, 2003