IP Library Granted Patent US 7,590,138
Granted Patent B2
US 7,590,138 · App. 10/557,917 · Granted Sep 15, 2009

System for defining an alternate channel routing mechanism in a messaging middleware environment

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 7,590,138
App. No.
10/557,917
Granted
Sep 15, 2009
Kind
B2
Abstract

A method and system for routing channels in which messages are transmitted from a source application to a destination application. The system includes a finite-state machine, source message queues, and a source queue manager for managing the source message queues. The source message queues include a transmission queue for holding a first message for subsequent transmission of the first message from the transmission queue over a first channel to a local queue of the destination application. The method includes: activating the finite-state machine; and performing or not performing a channel routing action, by the finite-state machine, depending on: a channel event having caused the first channel to be started or stopped, a channel sender set for the first channel, and an event type characterizing the channel event as normal or abnormal. The channel routing action is a function of the channel event, the channel sender, and the event type.

Claims (32)

1. A method for routing channels in which messages are transmitted across a network from a source application to a destination application, said method comprising:

activating, by a background task, a finite-state machine, wherein the messages comprise a first message in a transmission queue of the source application for subsequent transmission of the first message from the transmission queue across the network over a first channel of said channels to a local queue of the destination application;

performing or not performing a channel routing action, by the activated finite-state machine, in dependence on: a channel event having caused the first channel to currently be staffed or stopped, a channel sender currently set for the first channel, and an event type characterizing the channel event as being normal or abnormal, wherein said channel routing action is a function of the channel event, the channel sender, and the event type;

prior to said activating the finite-state machine: inserting a second message into an event queue such that the second message denotes the channel event, detecting the second message in the event queue, and responsive to said detecting, invoking the background task, wherein said detecting and said invoking are performed by a trigger monitor;

putting an initiating message into an initiation queue in conjunction with said first message being in the transmission queue;

monitoring the initiation queue, by the trigger monitor, to detect the initiating message in the initiation queue; and

responsive to detection of the initiating message in the initiation queue by the trigger monitor, invoking the destination application by the trigger monitor.

2. A method for routing channels in which messages are transmitted across a network from a source application to a destination application, said method comprising:

activating, by a background task, a finite-state machine, wherein the messages comprise a first message in a transmission queue of the source application for subsequent transmission of the first message from the transmission queue across the network over a first channel of said channels to a local queue of the destination application;

performing or not performing a channel routing action, by the activated finite-state machine, in dependence on: a channel event having caused the first channel to currently be started or stopped, a channel sender currently set for the first channel, and an event type characterizing the channel event as being normal or abnormal, wherein said channel routing action is a function of the channel event, the channel sender, and the event type;

prior to said activating the finite-state machine: inserting a second message into an event queue such that the second message denotes the channel event, detecting the second message in the event queue, and responsive to said detecting, invoking the background task, wherein said detecting and said invoking are performed by a trigger monitor;

putting an initiating message into an initiation queue in conjunction with said first message being in the transmission queue;

monitoring the initiation queue, by a channel initiator, to detect the initiating message in the initiation queue;

responsive to detection of the initiating message in the initiation queue by the channel initiator, starting a message channel agent (MCA) by the channel initiator,

determining, by the MCA, the channel event; and

performing, by the MCA, said inserting the second message into the event queue.

3. A system for implementing a method for routing channels in which messages are transmitted across a network from a source application to a destination application, wherein the system comprises a finite-state machine, said method comprising:

activating, by a background task, the finite-state machine, wherein the messages comprise a first message in a transmission queue of the source application for subsequent transmission of the first message from the transmission queue across the network over a first channel of said channels to a local queue of the destination application;

performing or not performing a channel routing action, by the activated finite-state machine, in dependence on: a channel event having caused the first channel to currently be started or stopped, a channel sender currently set for the first channel, and an event type characterizing the channel event as being normal or abnormal, wherein said channel routing action is a function of the channel event, the channel sender, and the event type;

prior to said activating the finite-state machine: inserting a second message into an event queue such that the second message denotes the channel event, detecting the second message in the event queue, and responsive to said detecting, invoking the background task, wherein said detecting and said invoking are performed by a trigger monitor;

putting an initiating message into an initiation queue in conjunction with said first message being in the transmission queue;

monitoring the initiation queue, by the trigger monitor, to detect the initiating message in the initiation queue; and

responsive to detection of the initiating message in the initiation queue by the trigger monitor, invoking the destination application by the trigger monitor.

4. A system for implementing a method for routing channels in which messages are transmitted across a network from a source application to a destination application, wherein the system comprises a finite-state machine, said method comprising:

activating, by a background task, the finite-state machine, wherein the messages comprise a first message in a transmission queue of the source application for subsequent transmission of the first message from the transmission queue across the network over a first channel of said channels to a local queue of the destination application;

performing or not performing a channel routing action, by the activated finite-state machine, in dependence on: a channel event having caused the first channel to currently be started or stopped, a channel sender currently set for the first channel, and an event type characterizing the channel event as being normal or abnormal, wherein said channel routing action is a function of the channel event, the channel sender, and the event type;

prior to said activating the finite-state machine: inserting a second message into an event queue such that the second message denotes the channel event, detecting the second message in the event queue, and responsive to said detecting, invoking the background task, wherein said detecting and said invoking are performed by a trigger monitor;

putting an initiating message into an initiation queue in conjunction with said first message being in the transmission queue;

monitoring the initiation queue, by a channel initiator, to detect the initiating message in the initiation queue;

responsive to detection of the initiating message in the initiation queue by the channel initiator, starting a message channel agent (MCA) by the channel initiator,

determining, by the MCA, the channel event; and

performing, by the MCA, said inserting the second message into the event queue.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2006
From: BENARD, PATRICK; FAVRE, PHILIPPE
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 018682/0492 →