BINDING CRUD-TYPE PROTOCOLS IN DISTRIBUTED AGREEMENT PROTOCOLS

Various embodiments enable redundant or replica services, such as "cloud" services, to be run at geographically distributed locations. Each replica is capable of performing operations that are generally, identically performed across all replicas. In the event of an interruption at one loca...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: PORTNOY, WILLIAM LAWRENCE, LANGWORTHY, DAVID E, SHEWCHUK, JOHN P
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Various embodiments enable redundant or replica services, such as "cloud" services, to be run at geographically distributed locations. Each replica is capable of performing operations that are generally, identically performed across all replicas. In the event of an interruption at one location, services in other locations can quickly and automatically take over operations. In one or more embodiments, a Distributed Agreement Protocol is utilized to bind a CRUD-type protocol as a state machine. Binding takes place through the use of a reverse proxy that is located at each of the locations at which the service is distributed. In at least some embodiments, the Distributed Agreement Protocol is implemented as the Paxos protocol or a variant thereof, and/or the CRUD-type protocol comprises the HTTP protocol. La présente invention concerne, dans divers modes de réalisation, la fourniture de services redondants ou de réplication, tels que des services « en nuage », à exécuter dans des sites répartis géographiquement. Chaque réplique peut effectuer des opérations qui sont généralement réalisées de façon identique sur toutes les répliques. En cas d'interruption sur un site, les services des autres sites peuvent rapidement et automatiquement prendre en charge les opérations. Dans un ou plusieurs modes de réalisation, un protocole d'accord distribué est utilisé pour lier un protocole de type CRUD, en tant que machine d'état. La liaison a lieu grâce à l'utilisation d'un proxy inverse, situé sur chacun des sites sur lesquels le service est distribué. Dans au moins certains modes de réalisation, le protocole d'accord distribué est mis en oeuvre comme protocole Paxos ou comme une variante de celui-ci et/ou le protocole de type CRUD comprend le protocole HTTP.