System and method for autowiring of a microservice architecture

US11656852B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11656852-B2
Application numberUS-202117315088-A
CountryUS
Kind codeB2
Filing dateMay 7, 2021
Priority dateJun 28, 2019
Publication dateMay 23, 2023
Grant dateMay 23, 2023

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.

Disclosed is a computer implemented method for automatically connecting multiple components of a microservice architecture, comprising receiving a definition of a primary resource to be provided by a provider; determining a dependent resource of the primary resource based on the definition of the primary resource; requesting the primary resource to determine one or more shapes of the primary resource, wherein a shape is information about the primary resource that is necessary for the dependent resource to depend on the primary resource; receiving the one or more shapes of the primary resource; providing the one or more shapes of the primary resource to the dependent resource; and determining a provisioning object based on the one or more shapes of the primary resource, wherein, in use, the provisioning object can be used by a provisioning controller to provision the resource by the provider.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of instantiating a service supported by a microservices architecture having multiple microservice components that are automatically connected during a setup process, the method comprising: receiving an instruction to instantiate the service; retrieving an application graph from a datastore, the application graph comprising: a set of microservice nodes each referencing a respective one microservice that performs a function upon which the service depends; and a set of microservice edges, each respective microservice edge referencing at least two respective microservice nodes of the set of microservice nodes and comprising instructions for communicably intercoupling each of the at least two microservice nodes referenced by the respective microservice edge; defining a resource graph by: defining a set of resource nodes, the set of resource nodes comprising: a first resource node comprising at least two microservice nodes and at least one respective microservice edge that references each of the at least two microservice nodes; and a second resource node comprising only one microservice node of the set of microservice nodes; and defining a set of resource edges, each respective resource edge referencing at least two resource nodes and comprising instructions for communicably intercoupling the at least two resource nodes referenced by the respective edge node; and instantiating each resource of the resource graph to instantiate the service. 2. The method of claim 1 , wherein instantiating each resource of the resource graph comprises provisioning at least one microservice node of the application graph. 3. The method of claim 2 , wherein instantiating each resource of the resource graph comprises defining at least one resource edge by communicably coupling the respective at least two resource nodes referenced by the at least one resource edge. 4. The method of claim 1 , comprising defining an operation state of at least one instantiated resource node of the resource graph. 5. The method of claim 4 , comprising monitoring the operation state over time. 6. The method of claim 4 , comprising defining an operation status of the service based, at least in part, on the operation state of the at least one instantiated resource node. 7. The method of claim 6 , wherein: the operation state is a first operation state; and the method comprises defining a second operation state of at least one instantiated resource edge of the resource graph. 8. The method of claim 7 , comprising monitoring the second operation state over time. 9. The method of claim 8 , comprising updating the operation status of the service based, at least in part, on the second operation state. 10. A method of instantiating and updating an operational status of a service supported by a microservices architecture having multiple microservice components that are automatically connected during a setup process, the method comprising: retrieving an application graph from a datastore, the application graph comprising: a set of microservice nodes each referencing a respective one microservice; and a set of edges each intercoupling at least two microservice nodes; defining a resource graph from the application graph by: defining a first resource by identifying a first branch of the application graph comprising at least two microservice nodes intercoupled by at least one edge; defining a second resource by identifying a second branch of the application graph comprising at least one microservice node associated by at least one edge of the set of edges with at least one of the at least two microservice nodes of the first resource; defining a first status of the first resource; defining a second status of the second resource; defining an operational status of the service based on the first status and the second status; instantiating each microservice of the first resource; intercoupling each instantiated microservice of the first resource; instantiating each microservice of the second resource; intercoupling the instantiated first resource with the instantiated second resource; updating the first status and the second status upon a determination that the first resource and the second resource are successfully instantiated; and updating the operational status of the service based, at least in part, on the updated first status and the updated second status. 11. The method of claim 10 , comprising monitoring the first status over time and, in response to a change in the first status, updating the operational status of the service. 12. The method of claim 10 , comprising monitoring the second status over time and, in response to a change in the second status, updating the operational status of the service. 13. The method of claim 10 , wherein instantiating each microservice of the first resource comprises provisioning at least one virtual resource. 14. The method of claim 10 , wherein the first resource is a bundled resource of the resource graph and the second resource is an single-node resource of the resource graph. 15. The method of claim 10 , comprising: defining a third resource by identifying a third branch of the application graph comprising at least three microservice nodes intercoupled by at least one edge; and defining a third status of the third resource; wherein the operational status of the service is based, at least in part, on the third status. 16. The method of claim 10 , wherein the application graph has a greater number of nodes and edges than the resource graph. 17. A method of logically bundling microservices prior to instantiating a service supported by a microservices architecture having multiple microservice components that are automatically connected during a setup process, the method comprising: receiving an instruction to instantiate the service; selecting an original graph, the original graph comprising: a first set of nodes each referencing a respective one microservice; and a first set of edges each intercoupling at least two nodes of the first set of nodes; defining a condensed graph from the original graph by: defining a second set of nodes, at least one node of the second set of nodes comprising a branch of the original graph comprising two or more intercoupled nodes; defining a second set of edges intercoupling at least two nodes of the second set of nodes; and provisioning each microservice referenced by the condensed graph. 18. The method of claim 17 , wherein selecting the original graph comprises defining the original graph from a definition file retrieved from a datastore. 19. The method of claim 17 , wherein provisioning each microservice referenced by the condensed graph comprises instantiating dependent microservices prior to parent microservices. 20. The method of claim 17 , comprising defining an operational status of the service based, at least in part, on an operation status of at least one node of the second set of nodes.

Assignees

Inventors

Classifications

  • G06F8/36Primary

    Software reuse · CPC title

  • G06F8/60Primary

    Software deployment · CPC title

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 US11656852B2 cover?
Disclosed is a computer implemented method for automatically connecting multiple components of a microservice architecture, comprising receiving a definition of a primary resource to be provided by a provider; determining a dependent resource of the primary resource based on the definition of the primary resource; requesting the primary resource to determine one or more shapes of the primary re…
Who is the assignee on this patent?
Atlassian Pty Ltd, Atlassian Inc, Atlassian Us Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/36. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 23 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).