Failures in a distributed system are not only possible but expected and notoriously difficult to handle. For this reason, it is imperative to provide system-level means for building failure-transparent services, i.e., services which transparently recover from failures, effectively masking them. Towards this, this paper presents a syntax and semantics for compositionally failure-transparent actors. It is structured around three kinds of failure-transparent compositions: composition within a system; between systems; and application-level composition. For the former two, we prove that the semantics is failure transparent by simulation using prophecy variables. For the latter, we discuss its implementation; additionally, we discuss the necessity for leaking system-level failures to the application-level. The presented material provides low-level building blocks for failure-transparent services, thus greatly simplifying their construction.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Failure-Transparent Actors

  • Jonas Spenger,
  • Paris Carbone,
  • Philipp Haller

摘要

Failures in a distributed system are not only possible but expected and notoriously difficult to handle. For this reason, it is imperative to provide system-level means for building failure-transparent services, i.e., services which transparently recover from failures, effectively masking them. Towards this, this paper presents a syntax and semantics for compositionally failure-transparent actors. It is structured around three kinds of failure-transparent compositions: composition within a system; between systems; and application-level composition. For the former two, we prove that the semantics is failure transparent by simulation using prophecy variables. For the latter, we discuss its implementation; additionally, we discuss the necessity for leaking system-level failures to the application-level. The presented material provides low-level building blocks for failure-transparent services, thus greatly simplifying their construction.