Replicating message queues between clustered email gateway systems
First Claim
1. A method for processing an email by a plurality of email gateway servers coupled in a cluster, the method comprising:
- receiving the email by a first email gateway server, the first email gateway server being configured to relay the email toward a destination and to assign a unique identifier to the email;
copying the email and the unique identifier to a second email gateway server, the second email gateway server being configured to relay the email toward the destination should the relay of the email by the first email gateway server fail; and
relaying the email toward the destination by the first email gateway server or the second email gateway server, wherein the relaying includes;
the first email gateway server sending the second email gateway server the unique identifier when the first email gateway server has relayed the email toward the destination;
the second email server monitoring the receipt of the unique identifier from the first email gateway server and, upon determining that a pre-selected time period has passed without receiving the unique identifier, the second email gateway server deeming the relaying of the email toward the destination by the first email gateway server to have failed and relaying the email toward the destination by the second email gateway server.
17 Assignments
0 Petitions
Accused Products
Abstract
A method of “stateful failover” is provided that allows email gateway systems in a cluster to deliver email messages that have been accepted for delivery by a member of the cluster, but has failed with out delivering the messages. The method involves creating a backup copy of the messages that have been accepted for delivery by one email gateway system in the stateful failover cluster on one or more other email gateway systems in the stateful failover cluster. Upon detecting the failure of the email gateway system that accepted the message, another member of the stateful failover cluster that has access to the backup copy of the message queue takes responsibility for the delivery of the messages on the mirrored queue.
-
Citations
23 Claims
-
1. A method for processing an email by a plurality of email gateway servers coupled in a cluster, the method comprising:
-
receiving the email by a first email gateway server, the first email gateway server being configured to relay the email toward a destination and to assign a unique identifier to the email; copying the email and the unique identifier to a second email gateway server, the second email gateway server being configured to relay the email toward the destination should the relay of the email by the first email gateway server fail; and relaying the email toward the destination by the first email gateway server or the second email gateway server, wherein the relaying includes;
the first email gateway server sending the second email gateway server the unique identifier when the first email gateway server has relayed the email toward the destination;
the second email server monitoring the receipt of the unique identifier from the first email gateway server and, upon determining that a pre-selected time period has passed without receiving the unique identifier, the second email gateway server deeming the relaying of the email toward the destination by the first email gateway server to have failed and relaying the email toward the destination by the second email gateway server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for replicating email messages in a stateful failover cluster, the method comprising:
-
receiving by a source email gateway system an email message to be transmitted to a destination; assigning a unique identifier to the received email message; transmitting the email message and the unique identifier from the source email gateway system to one or more sink email gateway systems in the stateful failover cluster; acknowledging receipt of the email message by the source email gateway system; forwarding the email message by the source email gateway system toward the destination; if the source email gateway system successfully forwards the email message, notifying the one or more sink email gateway systems to recover storage resources associated with the email message by identifying the successfully forwarded message with the unique identifier; and if the source server fails to successfully forward the email message as determined by the source email gateway system not notifying the one or more sink email gateway systems with the unique identifier, forwarding the message by the one or more sink email gateway systems. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. An email gateway cluster comprising:
-
a plurality of source email gateway servers, each of the source email gateway servers configured for receiving email messages and relaying the email messages toward a destination, each source email gateway server comprising a source message queue for storing the email messages, and a corresponding unique identifier assigned by the source email gateway server, from outside an email gateway cluster; and one or more sink email gateway servers communicatively coupled to each of the source email gateway servers, each sink email gateway server comprising a backup message queue for storing email messages and the corresponding unique identifiers from at least one source email gateway server, the sink email gateway servers being configured for relaying email messages to the destination should the respective source email gateway server fail, including monitoring by said one or more sink email gateway servers the relaying of the email by at least one of said plurality of source email gateway servers; and
, upon detecting that the relaying of the email by said at least one of said plurality of source email gateway servers was unsuccessful, by failing to receive a communication comprising the unique identifier from the at least one of said plurality of email gateway servers, relaying the email toward the destination by said one or more sink email gateway servers.
-
Specification