Ресурсы о программировании безопасной от катастрофического отказа и отказоустойчивости

Мне нравится статья LWN "Программное обеспечение Только для катастрофического отказа", и я хотел бы узнать больше о безопасном от катастрофического отказа и отказоустойчивом программировании.

Удивительно трудно гарантировать, что постоянное состояние последовательно в ситуациях с отказом. Здесь я даже не говорю о распределенных операциях: Это плохо обращается с единственным узлом, также: Даже нормальный DB Беркли (Хранилище данных BDB или Параллельное Хранилище данных BDB) мог бы иметь уничтоженную базу данных, если система отказывает. Не только, что ограничения приложения высокого уровня повреждаются, база данных не могла бы быть открыта правильно, если система отказывает.

Что является хорошими ресурсами о безопасных от катастрофического отказа и отказоустойчивых проектах, подходах и программировании.

Если бы ресурсы фокусируются на C++ и средах POSIX, я ценил бы это.

15
задан dmeister 30 July 2010 в 11:03
поделиться

2 ответа

Модель Aktor на языках Erlang и Scala, модель let it crash. См. Эту статью .

2
ответ дан 1 December 2019 в 05:07
поделиться

Akka - это фреймворк для Java и Scala, написанный с учетом принципа let-it-crash. См. эту статью и эту презентацию для введения в Actors и let-it-crash. Это также называется Fail-Fast и стиль работника/супервайзера.

Две хорошие презентации по Erlang: Systems that Never Stop (and Erlang) и Message Passing Concurrency in Erlang

Theron - библиотека акторов для C++, я также думаю, что есть что-то и в Boost.

Также Erlang может вызывать C или C++ код смотрите здесь для обсуждения. Java / Scala / Akka также могут вызывать C++ код.

(Если вам нравится C++, я советую вам взглянуть на Scala, очень хороший язык и лучше, чем Java, если вы пришли из C++.)

Также презентация Йонаса Бонерса Scalability, Availability & Stability Patterns является хорошей презентацией на эту тему.

6
ответ дан 1 December 2019 в 05:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: