Systems and methods for resilient communication protocols and interfaces

US11228656B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-11228656-B1
Application numberUS-202017078893-A
CountryUS
Kind codeB1
Filing dateOct 23, 2020
Priority dateOct 23, 2020
Publication dateJan 18, 2022
Grant dateJan 18, 2022

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.

An event processing system is provided for providing resilient message processing using asynchronous communications. The event processing device includes a processor and a memory. The event processing device is in communication with a publisher microservice and subscriber microservices. The processor is configured to receive an event including a collection of data from the publisher microservice. The processor is also configured to process the event to identify a recipient microservice. The processor is configured to update a queue with a queue entry for each of the at least one recipient microservices for the event. Each queue entry is associated with a priority. The processor is also configured to attempt to transmit the event to each of the at least one recipient microservices until a transmission confirmation message is received. The processor is further configured to update the queue by removing the queue entry for which the transmission confirmation message is received.

First claim

Opening claim text (preview).

What is claimed is: 1. An event processing system for providing resilient message processing using asynchronous communications comprising: a publisher microservice; at least one subscriber microservice; and an event processing device including a processor and a memory, said event processing device is in communication with the publisher microservice and the at least one subscriber microservice, wherein the event processing device includes an events API and a message broker service, wherein the processor is configured to: receive, at the events API, an event comprising a collection of data from the publisher microservice, wherein the event does not include protected payload data, wherein the event includes access information for making a request for the protected payload data from the publisher microservice; process the event to identify at least one recipient microservice from the at least one subscriber microservices; update a queue with a queue entry for each of the at least one recipient microservices for the event, wherein each queue entry is associated with a priority; attempt to transmit the event, including the access information, to each of the at least one recipient microservices until a transmission confirmation message associated with the transmission is received from the at least one recipient microservice, wherein the transmission of the event allows the recipient microservice to make a request for the protected payload data from the publisher microservice; and update the queue by removing the queue entry for which the transmission confirmation message is received. 2. The event processing system of claim 1 , wherein the processor is further configured to: transmit a receipt confirmation message to the publisher upon receiving the event. 3. The event processing system of claim 1 , wherein the processor is further configured to: receive enrollment definitions from the publisher and each subscriber microservice; identify routing rules based on the enrollment definitions; and process the event to identify at least one recipient microservice from the at least one subscriber microservices based at least partially on the routing rules. 4. The event processing system of claim 3 , wherein the processor is further configured to: identify a set of required definitional attributes associated with the publisher microservice and the subscriber microservices; validate the received event includes the set of required definitional attributes; and process the event if the received event is validated. 5. The event processing system of claim 1 , wherein the processor is further configured to: update the event to include at least a timestamp; and update the queue with the queue entry for each of the at least one recipient microservices for the event, wherein the priority is at least partially determined based on the timestamp. 6. The event processing system of claim 1 , wherein the processor is further configured to: identify a maximum number of event transmission attempts; attempt to transmit the event to each of the at least one recipient microservices until a transmission confirmation message associated with the transmission is received from the at least one recipient microservice; determine that the maximum number of event transmission attempts has been met; and wait a predetermined period before continuing to attempt to transmit the event. 7. The system of claim 1 , wherein the processor is further configured to: process the event to identify a group of recipient microservice from the at least one subscriber microservices; and attempt to simultaneously transmit the event to each of the group of recipient microservices. 8. An event processing device including a processor and a memory, the event processing device is in communication with a publisher microservice and at least one subscriber microservice, wherein the event processing device includes an events API and a message broker service, wherein the processor is configured to: receive, at the events API, an event comprising a collection of data from the publisher microservice, wherein the event does not include protected payload data, wherein the event includes access information for making a request for the protected payload data from the publisher microservice; process the event to identify at least one recipient microservice from the at least one subscriber microservices; update a queue with a queue entry for each of the at least one recipient microservices for the event, wherein each queue entry is associated with a priority; attempt to transmit the event, including the access information, to each of the at least one recipient microservices until a transmission confirmation message associated with the transmission is received from the at least one recipient microservice, wherein the transmission of the event allows the recipient microservice to make a request for the protected payload data from the publisher microservice; and update the queue by removing the queue entry for which the transmission confirmation message is received. 9. The event processing device of claim 8 , wherein the processor is further configured to: transmit a receipt confirmation message to the publisher upon receiving the event. 10. The event processing device of claim 8 , wherein the processor is further configured to: receive enrollment definitions from the publisher and each subscriber microservice; identify routing rules based on the enrollment definitions; and process the event to identify at least one recipient microservice from the at least one subscriber microservices based at least partially on the routing rules. 11. The event processing device of claim 10 , wherein the processor is further configured to: identify a set of required definitional attributes associated with the publisher microservice and the subscriber microservices; validate the received event includes the set of required definitional attributes; and process the event if the received event is validated. 12. The event processing device of claim 8 , wherein the processor is further configured to: update the event to include at least a timestamp; and update the queue with the queue entry for each of the at least one recipient microservices for the event, wherein the priority is at least partially determined based on the timestamp. 13. The event processing device of claim 8 , wherein the processor is further configured to: identify a maximum number of event transmission attempts; attempt to transmit the event to each of the at least one recipient microservices until a transmission confirmation message associated with the transmission is received from the at least one recipient microservice; determine that the maximum number of event transmission attempts has been met; and wait a predetermined period before continuing to attempt to transmit the event. 14. The event processing device of claim 8 , wherein the processor is further configured to: process the event to identify a group of recipient microservice from the at least one subscriber microservices; and attempt to simultaneously transmit the event to each of the group of recipient microservices. 15. A method for providing resilient message processing using asynchronous communications, the method performed by an event processing device including a processor and a memory, the event processing device is in communication with a publisher microservice and at least one subscriber microservice, wherein the event processing device includes an events API and a message broker service, the method comprising: receiv

Assignees

Inventors

Classifications

  • Event management; Broadcasting; Multicasting; Notifications · CPC title

  • H04L67/51Primary

    Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title

  • H04L67/55Primary

    Push-based network services · CPC title

  • Message passing systems or structures, e.g. queues · CPC title

  • H04L67/26Primary

    Electricity · mapped topic

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 US11228656B1 cover?
An event processing system is provided for providing resilient message processing using asynchronous communications. The event processing device includes a processor and a memory. The event processing device is in communication with a publisher microservice and subscriber microservices. The processor is configured to receive an event including a collection of data from the publisher microservic…
Who is the assignee on this patent?
Express Scripts Strategic Dev Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/51. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 18 2022 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).