Message transmission for distributed computing systems

US9509641B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9509641-B1
Application numberUS-201514967731-A
CountryUS
Kind codeB1
Filing dateDec 14, 2015
Priority dateDec 14, 2015
Publication dateNov 29, 2016
Grant dateNov 29, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A message from a source computer that includes message information indicating a destination target computer system to receive the message, is received. The received message in a storage component, is stored. An entry to a virtual queue for the received message, wherein the entry in the virtual queue points to a memory address of the received message that is stored in the message component, is created. Responsive to determining that the destination target computer system is available, the received message to a physical queue component and assigning an expiration condition to the received message is enqueued. The enqueued message to the destination target computer system is transmitted. Responsive to determining that the expiration condition for the received message is met, the received message from the physical queue is removed.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for message queuing in a message-oriented middleware computer implemented in a distributed computing environment including a source computer and a plurality of target computers connected by a network, the method comprising: receiving, by one or more computer processors in a message-oriented middleware computer, a message from a source computer including message information indicating that a target computer is designated to receive the message; storing, by the one or more computer processors, the message in a non-transitory high speed computer readable storage medium of the message-oriented middleware computer configured for high speed read and write operations, wherein the message-oriented middleware computer includes the non-transitory high speed computer readable storage medium and a non-transitory low speed computer readable storage medium; creating, by the one or more computer processors, an entry in a virtual queue associated with the target computer for the message, wherein a pointer address of the entry points to a memory address of the message stored in the non-transitory high speed computer readable storage medium, and wherein each of the plurality of target computers is associated with a respective unique virtual queue; responsive to determining that the target computer is available to receive the message over the network: enqueuing, by the one or more computer processors, the message to a physical queue component; transmitting, by the one or more computer processors, the message from the physical queue component to the target computer; moving, by the one or more computer processors, the message from the non-transitory high speed computer readable storage medium to the non-transitory low speed computer readable storage medium, and updating the pointer address of the entry in the virtual queue to point to a memory address of the message stored in the non-transitory low speed computer readable storage medium; responsive to receiving a confirmation of message receipt from the target computer within a specified time, removing, by the one or more computer processors, the message from the physical queue component, removing the message from the non-transitory low speed computer readable storage medium, and removing the entry for the message in the virtual queue; and responsive to not receiving the confirmation of message receipt from the target computer within the specified time, removing, by the one or more computer processors, the message from the physical queue component, indicating in the entry of the virtual queue that the confirmation of message receipt was not received from the target computer within the specified time, and wherein the message remains in the non-transitory low speed computer readable storage medium. 2. The method of claim 1 , further comprising: responsive to not receiving the confirmation of message receipt from the target computer within the specified time, determining, by the one or more computer processors, whether the target computer is available to receive the message over the network. 3. The method of claim 1 , further comprising: responsive to determining that the message stored in the non-transitory high speed computer readable storage medium exceeds a specified time duration, moving, by the one or more computer processors, a storage location for the message from the non-transitory high speed computer readable storage medium to the non-transitory low speed computer readable storage medium, and updating the pointer address of the entry in the virtual queue to point to a memory address of the message stored in the non-transitory low speed computer readable storage medium; and responsive to determining that the non-transitory high speed computer readable storage medium does not have available storage resources to store the message, storing, by the one or more computer processors, the message in the non-transitory low speed computer readable storage medium, and pointing the pointer address of the entry in the virtual queue to a memory address of the message stored in the non-transitory low speed computer readable storage medium. 4. The method of claim 1 , wherein the specified time for receiving the confirmation of message receipt from the target computer is determined by a time difference between a time when the message is first enqueued in the physical queue component and a time when the confirmation of message receipt is received from the target computer. 5. A computer program product for message queuing in a message-oriented middleware computer implemented in a distributed computing environment including a source computer and a plurality of target computers connected by a network, the computer program product comprising: one or more non-transitory computer readable storage media and program instructions stored on the one or more non-transitory computer readable storage media, the program instructions comprising: program instructions to receive a message from a source computer including message information indicating that a target computer is designated to receive the message; program instructions to store the message in a non-transitory high speed computer readable storage medium of the message-oriented middleware computer configured for high speed read and write operations, wherein the message-oriented middleware computer includes the non-transitory high speed computer readable storage medium and a non-transitory low speed computer readable storage medium; program instructions to create an entry in a virtual queue associated with the target computer for the message, wherein a pointer address of the entry points to a memory address of the message stored in the non-transitory high speed computer readable storage medium, and wherein each of the plurality of target computers is associated with a respective unique virtual queue; program instructions to, responsive to determining that the target computer is available to receive the message over the network: program instructions to enqueue the message to a physical queue component; program instructions to transmit the message from the physical queue component to the target computer; program instructions to move the message from the non-transitory high speed computer readable storage medium to the non-transitory low speed computer readable storage medium, and update the pointer address of the entry in the virtual queue to point to a memory address of the message stored in the non-transitory low speed computer readable storage medium; program instructions to, responsive to receiving the confirmation of message receipt from the target computer within the specified time, remove the message from the physical queue component, remove the message from the non-transitory low speed computer readable storage medium, and remove the entry for the message in the virtual queue; and program instructions to, responsive to not receiving the confirmation of message receipt from the target computer within the specified time, remove the message from the physical queue component, indicate in the entry of the virtual queue that the confirmation of message receipt was not received from the target computer within the specified time, and wherein the message remains in the non-transitory low speed computer readable storage medium. 6. The computer program product of claim 5 , wherein the program instructions stored on the one or more non-transitory computer readable storage media further comprise: program instructions to, responsive to not receiving the confirmation of message receipt from the target computer within the specified time, determine whether the target computer is available to receive the message over the network. 7. The computer program product of claim 5 , wherei

Assignees

Inventors

Classifications

  • H04L49/90Primary

    Buffering arrangements · CPC title

  • replacing packets in a storage arrangement, e.g. pushout · CPC title

  • Router architectures · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9509641B1 cover?
A message from a source computer that includes message information indicating a destination target computer system to receive the message, is received. The received message in a storage component, is stored. An entry to a virtual queue for the received message, wherein the entry in the virtual queue points to a memory address of the received message that is stored in the message component, is c…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04L49/90. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 29 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).