Reducing write operations in middleware
AssigneeInternational Business Machines Corporation
InventorUmamahesh Ponnuswamy
Life of this patent
Estimating the term…
Abstract
Disclosed is a computer-implemented method for reducing write operations in a message system. The method includes receiving, by a message system, a message from a producer, wherein the message includes a first flag, the first flag indicating the message should be written to a recovery log, and the message is configured to be sent to a consumer. The method also includes adding the message to a queue. The method further includes determining, at a first time, the consumer is not available. The method includes verifying, in response to the consumer not being available at the first time, a trigger is not met. The method also includes determining, at a second time, the consumer is available. The method also includes sending, in response to determining the consumer is available, the message to the consumer.
Claims19
A computer-implemented method comprising:
- receiving, by a message system, a message from a producer, wherein the message is configured to be sent to a first remote system and a second remote system in a predetermined sequence, the message includes a first flag and a second flag, where the first flag indicating the message should be written to a recovery log in a persistent storage and the second flag indicates the messages should be written to a remote recovery log in the first remote system and the second remote system, and the message is configured to be sent to a consumer;
- adding the message to a queue;
- determining, at a first time, the consumer is not available;
- verifying, in response to the consumer not being available at the first time, a trigger is not met;
- determining, at a second time, the consumer is available;
- sending, by the message system, in response to determining the consumer is available and without writing the message to the recovery log, the message to the consumer:
- sending, the message to the first remote system;
- determining the second remote system is available;
- and
- sending, in response to determining the second remote system is available, and prior to writing the message to the remote recovery log of the first remote system, the message to the second remote system.
A system comprising:
- a processor;
- and
- a computer-readable storage medium communicatively coupled to the processor and storing program instructions which, when executed by the processor, are configured to cause the processor to:
- receive, by a message system, a message from a producer, wherein the message includes a first flag and a second flag, the first flag indicating the message should be written to a recovery log in a first remote system and the second flag indicates the message should be written to a remote recovery log in a second remote system, and the message is configured to be sent to a consumer, and the message is configured to be sent to a first remote system and a second remote system in a predetermined sequence;
- add the message to a queue;
- determine, at a first time, the consumer is not available;
- verify, in response to the consumer not being available at the first time, a trigger is not met;
- determine, at a second time, the consumer is available;
- and
- send, by the message system, in response to determining the consumer is available and without writing the message to the recovery log, the message to the consumer;
- send the message to the first remote system;
- determine the second remote system is available;
- and
- send, in response to determining the second remote system is available, and prior to writing the message to the remote recovery log of the first remote system, the message to the second remote system.
A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processing unit to cause the processing unit to:
- receive, by a message system, a message from a producer, wherein the message includes a first flag and a second flag, the first flag indicating the message should be written to a recovery log and the second flag indicates the message should be written to a remote recovery log in a first remote system and a second remote system, the message is configured to be sent to a consumer, and the message is configured to be sent to the first remote system and the second remote system in a predetermined sequence;
- add the message to a queue;
- determine, at a first time, the consumer is not available;
- verify, in response to the consumer not being available at the first time, a trigger is not met;
- determine, at a second time, the consumer is available;
- send, in response to determining the consumer is available, the message to the consumer
- send, the message to the first remote system;
- determine the second remote system is available;
- and
- send, in response to determining the second remote system is available, and prior to writing the message to the remote recovery log of the first remote system, the message to the second remote system.
Dependencies are inferred from the claim text.