Discovery of remote storage services and associated applications
US-10673963-B1 · Jun 2, 2020 · US
US11765120B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11765120-B2 |
| Application number | US-202217666208-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 7, 2022 |
| Priority date | Mar 2, 2021 |
| Publication date | Sep 19, 2023 |
| Grant date | Sep 19, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Non-volatile memory may contain definitions of: (i) a plurality of message queue implementations respectively associated with different queue behaviors, the different queue behaviors specified by corresponding sets of modes, and (ii) an application programming interface (API) through which applications can access one or more message queues. One or more processors may be configured to: create a message queue of a particular message queue type, supported by a corresponding message queue implementation, by specifying a set of modes corresponding to a queue behavior; receive, from a producing application and by way of the API, one or more messages for the message queue; store the one or more messages in a data structure associated with the message queue; receive, from a consuming application and by way of the API, a request to read from the message queue; and provide a message from the message queue to the consuming application.
Opening claim text (preview).
What is claimed is: 1. A system comprising: non-volatile memory containing definitions of: a message producer, a message consumer, and a context specifying a plurality of instantiated queues, wherein each of the instantiated queues has a different respective set of queuing behaviors controlling storage of messages in that queue to be either in-memory or persistent and directionality of messages in that queue to be either unidirectional or bidirectional; and one or more processors configured to: receive, at the message producer and by way of a message queue application programming interface (API), a message from a first application; determine, at the message producer, a particular queue from the instantiated queues based on the context or metadata of the message; place, at the message producer, the message into the particular queue; receive, at the message consumer and by way of the message queue API, a request from a second application, wherein the respective set of queuing behaviors of the particular queue also include a queueing behavior controlling usage of the particular queue to be either point-to-point or publish/subscribe, wherein the usage being point-to-point results in the message being removed from the particular queue when provided to the second application, and wherein the usage being publish/subscribe results in the message persisting in the particular queue after being provided to the second application; identify, at the message consumer, the particular queue based on the context or the request; and provide, at the message consumer, the message from the particular queue to the second application. 2. The system of claim 1 , wherein the message producer and the message consumer operate independently from the first application and the second application. 3. The system of claim 1 , wherein the message queue API is part of a software library that provides the first application and the second application access to the message producer and the message consumer. 4. The system of claim 1 , wherein the metadata identifies a queue name of the particular queue. 5. The system of claim 1 , wherein the metadata identifies one or more queueing behaviors of the particular queue. 6. The system of claim 1 , wherein the context of the particular queue is determined by the message. 7. The system of claim 1 , wherein the storage and the directionality of the message are determined by the respective set of queueing behaviors of the particular queue. 8. The system of claim 1 , wherein the message includes a service header that contains one or more units of the metadata, wherein the one or more units of the metadata are not provided to the second application, and are used by the message producer or the message consumer. 9. The system of claim 8 , wherein the message also contains a body and a client header, wherein the body contains content from the first application that the message producer and the message consumer transparently provide to the second application, wherein the client header contains one or more further units of the metadata from the first application that the message producer and the message consumer transparently provide to the second application. 10. The system of claim 1 , wherein the storage being in-memory results in the being stored only in volatile memory, and wherein the storage being persistent results in the message being stored in the non-volatile memory. 11. The system of claim 1 , wherein the directionality being unidirectional results in messages in the particular queue only flowing from the first application to the second application, and wherein the directionality being bidirectional results in some of the messages in the particular queue flowing from the first application to the second application and other messages in the particular queue flowing from the second application to the first application. 12. A computer-implemented method comprising: receiving, at a message producer and by way of a message queue application programming interface (API), a message from a first application, wherein non-volatile memory contains definitions of: the message producer, a message consumer, and a context specifying a plurality of instantiated queues, wherein each of the instantiated queues has a different respective set of queuing behaviors controlling storage of messages in that queue to be either in-memory or persistent and directionality of messages in that queue to be either unidirectional or bidirectional; determining, at the message producer, a particular queue from the instantiated queues based on the context or metadata of the message; placing, at the message producer, the message into the particular queue; receiving, at the message consumer and by way of the message queue API, a request from a second application, wherein the respective set of queuing behaviors of the particular queue also include a queueing behavior controlling usage of the particular queue to be either point-to-point or publish/subscribe, wherein the usage being point-to-point results in the message being removed from the particular queue when provided to the second application, and wherein the usage being publish/subscribe results in the message persisting in the particular queue after being provided to the second application; identifying, at the message consumer, the particular queue based on the context or the request; and providing, at the message consumer, the message from the particular queue to the second application. 13. The computer-implemented method of claim 12 , wherein the metadata identifies a queue name of the particular queue. 14. The computer-implemented method of claim 12 , wherein the message includes a service header that contains one or more units of the metadata, wherein the one or more units of the metadata are not provided to the second application, and are used by the message producer or the message consumer. 15. The computer-implemented method of claim 14 , wherein the message also contains a body and a client header, wherein the body contains content from the first application that the message producer and the message consumer transparently provide to the second application, wherein the client header contains one or more further units of the metadata from the first application that the message producer and the message consumer transparently provide to the second application. 16. The computer-implemented method of claim 12 , wherein the storage being in-memory results in the being stored only in volatile memory, and wherein the storage being persistent results in the message being stored in the non-volatile memory. 17. The computer-implemented method of claim 12 , wherein the directionality being unidirectional results in messages in the particular queue only flowing from the first application to the second application, and wherein the directionality being bidirectional results in some of the messages in the particular queue flowing from the first application to the second application and other messages in the particular queue flowing from the second application to the first application. 18. An article of manufacture including a non-transitory computer-readable medium, having stored thereon program instructions that, upon execution by a computing system, cause the computing system to perform operations comprising: receiving, at a message producer and by way of a message queue application programming interface (API), a message from a first application, wherein non-volatile memory contains definitions of: the message producer, a message consumer,
Standardisation; Integration · CPC title
Delivery according to priorities · CPC title
Queue scheduling · CPC title
between virtual entities, e.g. orchestrators, SDN or NFV entities · CPC title
Message passing systems or structures, e.g. queues · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.