# US 10,310,919 B2 · Dynamic queue alias

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,310,919 B2
- Document ID: US10310919B2
- Status: Granted
- Kind: B2
- Application number: 15/057,452
- Filed: 2016-03-01
- Published: 2017-06-08
- Granted: 2019-06-04
- Earliest claimed: 2015-12-02
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Qian Li Jin; Yan Shi; Fan Yang; Shan Yu; Yang Zhang
- Web page: https://patentgrep.com/patent/US10310919B2

## CPC

- G06F 9/546: {Message passing systems or structures, e.g. queues}
- G06F 12/0806: Multiuser, multiprocessor or multiprocessing cache systems
- H04L 67/563: Data redirection of data network streams
- G06F 2212/62: Details of cache specific to multiprocessor cache arrangements
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Embodiments of the present invention provide methods, program products, and systems to increase efficiency in message oriented middleware. Embodiments of the present invention can, responsive to receiving from an application an open request for a queue alias of a queue manager, provide to the application target cache information which includes a target name and a change flag count associated with the queue alias. Embodiments of the present invention can, responsive to receiving a message from the application that includes respective target cache information including a target name and a change flag count, determine a target location, wherein if the change flag count of the received message matches a current change flag count of the queue alias, the determined target location is a target location associated with the received target name.

## Claims

### Claim 1

A method comprising:
responsive to receiving a message that includes respective target cache information including a target name and a change flag count from an application for a queue alias of a queue manager, enabling dynamic routing of the message between a plurality of data centers, wherein a first data center of the plurality of data centers becomes disabled, wherein enabling dynamic routing of the message comprises:
determining, by one or more computer processors, a target location, by:
comparing, by one or more computer processors, change flag counts associated with the queue alias and the received message,
identifying, by one or more computer processors, that the change flag counts associated with the queue alias and the received message are not equal,
responsive to identifying that the change flag counts associated with the queue alias and the received message are not equal, updating, by one or more computer processors, target cache information of the application and the message,
responsive to identifying that the change flag count of the received message matches a current change flag count of the queue alias, determining, by one or more processors, the target location is a target location associated with the received target name, and
responsive to determining that the first data center is available, altering the queue alias to resume message delivery to the first data center.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
sending, by one or more computer processors, the received message according to the determined target location.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
responsive to an altering of the target of the queue alias, updating the target cache information associated with the queue alias, wherein updating the target cache information includes updating the change flag value.

### Claim 4 (depends on 1)

The method of claim 1, further comprising: transmitting, by one or more computer processors, an indication that the change flag counts are not equal to the application.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
responsive to updating the message, sending, by one or more computer processors, the updated message.

### Claim 6

A computer program product comprising:
one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising:
program instructions to, responsive to receiving a message that includes respective target cache information including a target name and a change flag count from an application for a queue alias of a queue manager, enable dynamic routing of the message between a plurality of data centers, wherein a first data center of the plurality of data centers becomes disabled, wherein enabling dynamic routing of the message comprises:
program instructions to determine a target location, by:
program instructions to compare change flag counts associated with the queue alias and the received message,
program instructions to identify that the change flag counts associated with the queue alias and the received message are not equal,
program instructions to, responsive to identifying that the change flag counts associated with the queue alias and the received message are not equal, update target cache information of the application and the message,
program instructions to, responsive to identifying that the change flag count of the received message matches a current change flag count of the queue alias, determine the target location is a target location associated with the received target name, and
program instructions to, responsive to determining that the first data center is available, altering the queue alias to resume message delivery to the first data center.

### Claim 7 (depends on 6)

The computer program product of claim 6, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to send the received message according to the determined target location.

### Claim 8 (depends on 6)

The computer program product of claim 6, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to, responsive to an altering of the target of the queue alias, update the target cache information associated with the queue alias, wherein updating the target cache information includes updating the change flag value.

### Claim 9 (depends on 6)

The computer program product of claim 6, wherein the program instructions stored on the one or more computer readable storage media further comprise: program instructions to transmit an indication that the change flag counts are not equal to the application.

### Claim 10 (depends on 9)

The computer program product of claim 9, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to, responsive to updating the message, send the updated message.

### Claim 11

A computer system comprising:
one or more computer processors;
one or more computer readable storage media; and
program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising:
program instructions to, responsive to receiving a message that includes respective target cache information including a target name and a change flag count from an application for a queue alias of a queue manager, enable dynamic routing of the message between a plurality of data centers, wherein a first data center of the plurality of data centers becomes disabled, wherein enabling dynamic routing of the message comprises:
program instructions to determine a target location, by:
program instructions to compare change flag counts associated with the queue alias and the received message,
program instructions to identify that the change flag counts associated with the queue alias and the received message are not equal,
program instructions to, responsive to identifying that the change flag counts associated with the queue alias and the received message are not equal, update target cache information of the application and the message,
program instructions to, responsive to identifying that the change flag count of the received message matches a current change flag count of the queue alias, determine the target location is a target location associated with the received target name, and,
program instructions to, responsive to determining that the first data center is available, altering the queue alias to resume message delivery to the first data center.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to send the received message according to the determined target location.

### Claim 13 (depends on 11)

The computer system of claim 11, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to, responsive to an altering of the target of the queue alias, update the target cache information associated with the queue alias, wherein updating the target cache information includes updating the change flag value.

### Claim 14 (depends on 11)

The computer system of claim 11, wherein the program instructions stored on the one or more computer readable storage media further comprise: program instructions to transmit an indication that the change flag counts are not equal to the application.

### Claim 15 (depends on 14)

The computer system of claim 14, wherein the program instructions stored on the one or more computer readable storage media further comprise:
program instructions to, responsive to updating the message, send the updated message.
