×

Determinism for distributed applications

  • US 9,804,945 B1
  • Filed: 01/03/2013
  • Issued: 10/31/2017
  • Est. Priority Date: 01/03/2013
  • Status: Expired due to Fees
First Claim
Patent Images

1. A computing system comprising one or more computing nodes and one or more data stores in communication with the one or more computing nodes, the one or more data stores having stored thereon:

  • policy information comprising one or more determinism policies indicative of non-deterministic program conditions, responses to determinism violations, and criteria for dividing program code; and

    computer instructions that, upon execution by the one or more computing nodes, at least cause the computing system to;

    receive an application program operable for execution in a distributed computing environment comprising one or more computing devices;

    divide the application program into executable components in accordance with the criteria for dividing program code, the executable components being separately executable as independent processes;

    execute the executable components in a plurality of containers configured to instantiate an execution space for executing the executable components, wherein the containers are configured to independently execute the executable components using one or more shared states and wherein relationships between the executable components are defined by the one or more determinism policies; and

    in response to a determination that a non-deterministic event has occurred between at least two of the plurality of containers in accordance with the one or more determinism policies, applying one or more responses to the non-deterministic event in accordance with the one or more determinism policies in order to effectuate a deterministic result, wherein the one or more responses comprise terminating one of the plurality of containers.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×