首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有关崩溃安全和容错编程的资源

有关崩溃安全和容错编程的资源
EN

Stack Overflow用户
提问于 2010-03-09 06:09:45
回答 4查看 2.1K关注 0票数 15

我喜欢LWN的文章"Crash-only software",我想了解更多关于崩溃安全和容错编程的知识。

令人惊讶的是,很难确保持久状态在故障情况下是一致的。在这里,我甚至不讨论分布式操作:这在单个节点上也很困难:如果系统崩溃,即使是普通的Berkeley DB (BDB Data Store或BDB Concurrent Data Store)也可能有一个被破坏的数据库。不仅高级应用程序约束被破坏,而且如果系统崩溃,数据库可能无法正确打开。

关于崩溃安全和容错设计、方法和编程,有哪些好的资源。

如果资源集中在C++和POSIX环境上,我将不胜感激。

EN

回答 4

Stack Overflow用户

发布于 2010-07-24 06:07:51

Akka是Java和Scala的一个框架,它在编写时就考虑到了让它崩溃。有关参与者和让它崩溃的介绍,请参阅此articlethis演示文稿。它也称为Fail-Fastworker/supervisor样式。

关于erlang的两个很好的演示是Systems that Never Stop (and Erlang)Message Passing Concurrency in Erlang

Theron是C++的一个演员库,我也认为Boost中也有一些东西。

此外,Erlang还可以调用C或C++ code,请参阅本文进行讨论。Java / Scala / Akka也可以调用C++代码。

(如果你喜欢Scala,我建议你去看看C++,这是一种非常好的语言,如果你来自C++,它比Java更好。)

另外,Jonas Boners presentation Scalability, Availability & Stability Patterns是关于这个主题的一个很好的演示。

票数 6
EN

Stack Overflow用户

发布于 2010-07-24 06:04:21

Erlang和Scala语言中的Aktor模型让它崩溃模型。请参阅此article

票数 1
EN

Stack Overflow用户

发布于 2012-02-04 22:30:06

除了上面的答案之外,还有GroovyGPars,它们都被遗漏了。当然,这不是C++。

在C++中还有另一个名为libcppa的实验库。Theron比这更成熟。

无论如何,您最好的选择是使用以下两种方法之一:

  1. Erlang
  2. Scala / Akka
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2405172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档