Quantification of compute performance across multiple independently executed microservices with a state machine supported workflow graph

US2020210252A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2020210252-A1
Application numberUS-202016812359-A
CountryUS
Kind codeA1
Filing dateMar 8, 2020
Priority dateApr 14, 2018
Publication dateJul 2, 2020
Grant date

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.

A bipartite workflow graph, representing an understanding of an overall service, comprises two different graph elements: entities and processes and each individual microservice defines their logical constructs as either an entity or a process in accordance with a universal schema. Notifications from such microservices conform to the universal schema, thereby enabling microservices to individually change how they operate internally, without affecting an understanding of the overall system as represented by the workflow graph. Each graph element has its state maintained by a separately addressable execution unit executing a state machine, which can be individually updated based on information received from the microservices. Changes to the workflow graph are logged and an insight engine monitors such a log to insert insight markers in accordance with predefined events, thereby enabling the collection of metrics on a service wide basis and across multiple microservices.

First claim

Opening claim text (preview).

1 . A set of one or more computing devices, in aggregate comprising: one or more processing units; and one or more computer-readable storage media comprising computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: receive a schematized notification of a first event from a service, the schematized notification conforming to a universal predefined schema; update a first state machine in accordance with the received schematized notification, the first state machine corresponding to a state of a first process identified by the schematized notification of the first event, the service comprising the first process; and update a second state machine in accordance with the received schematized notification, the second state machine corresponding to a state of a first entity identified by the schematized notification of the first event, the first entity being either an input data or an output data of the first process; wherein the first event is one of: the first entity being produced by the first process; the first entity being consumed by the first process; a first intent specifying that the first process intends to produce the first entity; or a second intent specifying that the first process intends to consume the first entity. 2 - 3 . (canceled) 4 . The set of computing devices of claim 1 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: generate a workflow graph comprising: a first graph element corresponding to the first process; a second graph element corresponding to the first entity; and a first graph edge between the first and second graph elements, the first graph edge being defined by the first event. 5 . The set of computing devices of claim 1 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: insert a first marker into a log listing updates to a workflow graph, the first marker being inserted with a first update to the workflow graph associated with the first event; insert a second marker in the log, the second marker being inserted with a second update to the workflow graph, the second update being logged after the first update and being associated with a second event occurring after the first event; generate a first notification based on a difference between the first marker and the second marker. 6 . The set of computing devices of claim 5 , wherein the first notification triggers an alert regarding operation of the service. 7 . (canceled) 8 . The set of computing devices of claim 5 , wherein the first notification comprises contextual information of the service. 9 . The set of computing devices of claim 8 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: receive a first key/value pair specifying a portion of the contextual information and hierarchical information associated with the first key/value pair; update a context graph to incorporate the first key/value pair in accordance with the hierarchical information; and provide the contextual information to be included as part of the first notification from the context graph. 10 . (canceled) 11 . The set of computing devices of claim 5 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: receive a specification of an insight for which metrics are to be collected, the specification comprising: an identified starting event of the insight and an identified ending event of the insight; trigger the inserting the first marker based on a determination that the first event is the identified starting event of the insight; and trigger the inserting the second marker based on a determination that the second event is the identified ending event of the insight. 12 . A set of one or more computing devices, in aggregate comprising: one or more processing units; and one or more computer-readable storage media comprising computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: monitor a log listing updates to a workflow graph, the workflow graph linking entities to processes that either consume or produce the entities through one of four linkings: (1) a production of an entity by a process, (2) a consumption of the entity by the process, (3) an intent by the process to subsequently produce the entity or (4) an intent by the process to subsequently consume the entity; insert a first start marker into the log corresponding to a first update to the workflow graph; insert a first end marker into the log corresponding to a second update to the workflow graph; and generate a first notification based on a first difference between the inserted first start marker and the inserted first end marker. 13 . The set of computing devices of claim 22 , wherein the first notification comprises an alert regarding operation of at least one of the first service or the second service. 14 . The set of computing devices of claim 12 , wherein the first notification comprises storing the first difference into a historical metrics database. 15 . The set of computing devices of claim 22 , wherein the first notification comprises additional metrics of a first insight demarcated by the first start marker and the first end marker, the additional metrics quantifying aspects of at least one of entities or processes whose changes were logged between the first update and the second update in the log listing the updates to the workflow graph. 16 . The set of computing devices of claim 22 , wherein the first notification comprises contextual information of at least one of the first service or the second service. 17 . The set of computing devices of claim 16 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: receive a first key/value pair specifying a portion of the contextual information and hierarchical information associated with the first key/value pair; update a context graph to incorporate the first key/value pair in accordance with the hierarchical information; and provide the contextual information to be included as part of the first notification from the context graph. 18 . The set of computing devices of claim 12 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when executed by the one or more processing units, cause the set of computing devices to: detect that a difference between a current state of one or more of the entities or processes linked by the workflow graph and a state of the one or more of the entities or processes at the first start marker is greater than a specified threshold; and generate a second notification based on the detecting. 19 . The set of computing devices of claim 22 , wherein the one or more computer-readable storage media comprise further computer-executable instructions which, when execu

Assignees

Inventors

Classifications

  • G06F9/542Primary

    Event management; Broadcasting; Multicasting; Notifications · CPC title

  • G06F9/5072Primary

    Grid computing · CPC title

  • Performance evaluation by statistical analysis · CPC title

  • for load management (allocation of a server based on load conditions G06F9/505; load rebalancing G06F9/5083; redistributing the load in a network by a load balancer H04L67/1029) · CPC title

  • Event-based monitoring · 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 US2020210252A1 cover?
A bipartite workflow graph, representing an understanding of an overall service, comprises two different graph elements: entities and processes and each individual microservice defines their logical constructs as either an entity or a process in accordance with a universal schema. Notifications from such microservices conform to the universal schema, thereby enabling microservices to individual…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/542. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jul 02 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).