×

Distributed state manager jury selection

  • US 9,852,221 B1
  • Filed: 03/26/2015
  • Issued: 12/26/2017
  • Est. Priority Date: 03/26/2015
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • one or more computing devices of a provider network, the one or more computing devices comprising one or more processors and memory storing program instructions that are executable by the one or more processors to instantiate a plurality of jury candidate servers (JCSs) of a distributed state manager (DSM), including a particular JCS, wherein one or more JCSs of the plurality of JCSs are designated as members of a jury responsible for determining whether to accept proposed transitions to at least a first state machine representing a distributed application; and

    one or more client nodes of the distributed application;

    wherein the particular JCS is configured to implement a sequence of configuration evaluation iterations, wherein a particular configuration evaluation iteration of the sequence comprises;

    obtaining, using one or more locally-stored records at the particular JCS, (a) a first view of a respective availability status of individual JCSs of the plurality of JCSs, and (b) a second view of membership of a current jury;

    generating one or more jury configuration options (JCOs) based at least in part on the first and second views, wherein a particular JCO of the one or more JCOs includes at least one change to the current jury;

    computing, based at least in part on a plurality of prioritized criteria including (a) a location diversity criterion assigned a first priority and (b) an availability status criterion assigned a lower priority than the first priority;

    a respective configuration quality score (CQS) of each of the one or more JCOs; and

    a CQS of the current jury; and

    proposing, for approval by the current jury, in response to a determination that a particular JCO'"'"'s CQS meets a threshold criterion with respect to the CQS of the current jury, a jury transition corresponding to the particular JCO; and

    in response to determining that the jury transition has been approved, storing a particular local record indicative of a new jury resulting from the jury transition; and

    wherein, in response to an approval by the new jury of a data modification request pertaining to the distributed application and received from a particular client node of the one or more client nodes, the particular JCS is configured to store an indication of the data modification corresponding to the data modification request.

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