Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of selecting a holding storage device, the method comprising: determining one or more properties of a message; determining a status of a candidate holding storage device, the candidate holding storage device having a storage type; determining one or more storage selection rules based on the one or more properties of the message, each of the one or more storage selection rules each having a weight value; identifying a first storage selection rule from the one or more storage selection rules that matches with the storage type; adjusting the weight value for the first storage selection rule based on the status of the candidate holding storage device; and selecting the candidate holding storage device based on the adjusted weight value.
2. The method of claim 1 , further comprising receiving the message from a sender.
3. The method of claim 1 , further comprising sending the message to the candidate holding storage device.
4. The method of claim 3 , further comprising: retrieving the message from the candidate holding storage device; and sending the message to a recipient.
5. The method of claim 1 wherein selecting the candidate holding storage device comprises: substituting one or more of the properties of the message into a Boolean expression associated with the first storage selection rule; and selecting the candidate holding storage device associated with the first storage selection rule when the Boolean expression evaluates to true.
6. The method of claim 1 wherein selecting the candidate holding storage device comprises: sorting the one or more storage selection rules by weight wherein a weight for the first storage selection rule is the adjusted weight value.
7. The method of claim 1 wherein each of the properties of the message are a property selected from a group consisting of a size of the message, an encoding type of the message, a desired queuing mechanism for the message, one or more contents of a header of the message, a sender of the message, a receiver of the message, and a client property of the message.
8. The method of claim 1 wherein the storage type is selected from a group consisting of a database, a file, a file system, a memory, and a storage grid.
9. The method of claim 1 wherein the status is based on an amount of available storage space.
10. The method of claim 1 wherein the status is based on a property of a network coupling the candidate holding storage device to a messaging system.
11. The method of claim 1 wherein the status is updated periodically.
12. The method of claim 1 wherein determining the one or more storage selection rules comprises receiving a first storage selection rule from a user.
13. The method of claim 1 wherein determining the one or more storage selection rules comprises receiving the first storage selection rule from another system.
14. A messaging system comprising: one or more holding storage devices; a hardware memory storing a plurality of storage selection rules each comprising a weight value; one or more processors coupled to the hardware memory and configured to perform steps comprising: determining one or more properties of a received message; determining one or more storage selection rules based on the one or more properties of the received message; determining a status of a candidate holding storage device from the one or more holding storage devices, the candidate storage device having a storage type; determining a first storage selection rule from the one or more storage selection rules that matches the storage type; adjusting a weight value for the first storage selection rule based on the status of the candidate holding storage device; selecting the candidate holding storage device based on the adjusted weight value; and sending the received message to the candidate holding storage device for temporary holding until the message can be sent to one or more recipients.
15. The messaging system of claim 14 wherein the storage type is selected from a group consisting of a database, a file, a file system, a memory, and a storage grid.
16. The messaging system of claim 14 wherein the steps further comprise: sorting the one or more storage selection rules based on weights assigned to the one or more storage selection rules; wherein a weight for the first storage selection rule is the adjusted weight value.
17. A non-transitory machine-readable medium comprising a first plurality of machine-readable instructions which when executed by one or more processors associated with a messaging system are adapted to cause the one or more processors to perform a method comprising: receiving a message from a producer, the message to be stored in a staging area of the messaging system; determining one or more characteristics of the message; determining a status of a first storage device of a storage type; determining one or more storage device rules based on the one or more characteristics of the message; identifying a first storage device rule from the one or more storage device rules that matches with the storage type adjusting a weight of the first storage device rule based on the status of the first storage device selecting the first storage device based on the adjusted weight; and sending the message to the first storage device.
Unknown
January 3, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.