問題タブ [fault-tolerance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - WCF プロキシに障害が発生するのはどのような場合ですか?
WCF プロキシ (vs2008 または svcutil によって生成された) が障害 (障害状態) になるのはどのような場合ですか? そのため、新しいインスタンスを再作成し、障害のあるインスタンスの使用を避けることができます。
現在、TimeoutException、FaultException、CommunicationObjectAbortedExceptionを処理しています
これらすべてのタイプを回避して、親の CommunicationException のみを処理できると思いますが、これで十分ですか? コメントが必要です
sqlite - 突然電源が落ちたり、OS がクラッシュした場合、SQLite3 のデータベース ファイルは破損しますか?
データベース ファイルを開き、sqlite3 の open() メソッドを使用してデータベース接続を取得すると、プログラムが終了するまで接続が閉じられません。コンピュータの突然の電源オフやOSのクラッシュなどの予期しないエラーが発生した場合、データベース ファイルのモードが破損したり、ハンドルが失われたりしませんか? より具体的には、コンピューターを再起動しても書き込み可能な状態を維持できますか? ところで、エラーが発生したときのデータ損失は気にしません。
どうもありがとうございました!
google-app-engine - Google App Engine インフラストラクチャはどのように耐障害性がありますか?
私は実際に Google App Engine で Web アプリケーションを実装しています。これにより、GAE の要件とベスト プラクティスを通じてデータベースとアプリケーションを再設計するのに、しばらく時間がかかりました。
私の問題は次のとおりです。GAE がフォールト トレラントであること、またはどの程度フォールト トレラントであることをどのように確認できますか? これに関する GAE のドキュメントは見つかりませんでした。これは、私にとって欠点となる可能性のある問題です。たとえば、私のアプリでは、データストアからエンティティを読み取り、それをアプリケーションで計算してから配置する必要があります。データストア上。この場合、これが正しく行われ、正しいデータが得られることをどのように確認できますか? たとえば、計算が行われたマシンがクラッシュした場合はどうすればよいでしょうか?
ご協力ありがとうございました!
configuration - デプロイされたコードを監視/構成するために利用できる Linux ツールは何ですか?
私はいくつかの通信ソフトウェアを作成しており、サーバーに展開された後にソフトウェアを監視および構成する方法を考案する必要があります。
私が働いている会社には現在、社内ソリューションがありますが、他のオプションを検討しています。
次のことを実行できる (できればすべてが 1 つのパッケージに含まれている) 利用可能なツール:
1) サーバー ファーム内の各サーバーにソフトウェア更新プログラムを配信します。
2) 構成テキスト ファイルを各サーバーに配信し、場合によってはソフトウェアを再起動して構成を読み込みます。
3) 各サーバーのソフトウェアを監視し、クラッシュした場合は再起動します。
(商用およびオープンソース/無料のソリューションは問題ありません)。
Linux でこれらの目標を達成するために利用できるツールは何ですか?
fault-tolerance - ソフトウェアシステム障害による壊滅的な災害
これはプログラミングの問題ではないことはわかっていますが、この問題はコンピューターシステムに関連しており、この質問を投稿しています。
ソフトウェアシステム障害による壊滅的な災害に関する情報を見つけるのに適した場所を誰か教えてくれませんか? たとえば、Therac-25 のような事件。
リスク ダイジェストは適切な場所ですが、ケースごとに提供される情報は私の要件には不十分です。
ありがとう
nosql - Cassandra クラスターには少なくとも 3 つのノード/サーバーが絶対に必要ですか、それとも 2 つあれば十分ですか?
確かに単一ノード クラスタを実行できますが、ある程度のフォールト トレランスが必要です。
現在、2 台のサーバー (8GB RAM、プライベート VLAN @1GigE) をリースする余裕がありますが、3 台はリースできません。
私の理解では、Cassandra クラスターに必要な最小ノード数は 3 です。これは、2 つのノード間に過半数が存在する可能性はなく、バージョニングの競合を解決するには過半数が必要であるためです。ちょっと待って、「ベクトルクロック」とRiakのことを考えていますか?あっ!Cassandra は競合解決にタイムスタンプを使用します。
2 ノードの場合、推奨される読み取り/書き込み戦略は何ですか? 通常、すべての (両方の) ノードに書き込み、1 つのノード (N=2; W=N/2+1; W=2/2+1=2) から読み取る必要がありますか? Cassandra は 2 つのノードに対しても通常どおり Hinted-Handoff を使用しますよね?
これらの 2 つのサーバーは、同じデータ センター FWIW にあります。
ありがとう!
c++ - クラッシュセーフおよびフォールト トレランス プログラミングに関するリソース
LWN の記事「Crash-only software」が好きで、クラッシュセーフでフォールト トレラントなプログラミングについてもっと学びたいと思っています。
永続的な状態が障害状況で一貫していることを保証することは驚くほど困難です。ここでは、分散操作については触れません。これは、単一のノードでも難しいことです。通常の Berkeley DB (BDB データ ストアまたは BDB コンカレント データ ストア) でさえ、システムがクラッシュすると、データベースが破壊される可能性があります。高レベルのアプリケーションの制約が破られるだけでなく、システムがクラッシュした場合、データベースが正しく開かれない可能性があります。
クラッシュセーフでフォールト トレラントな設計、アプローチ、およびプログラミングに関する優れたリソースは何ですか。
リソースが C++ および POSIX 環境に焦点を当てている場合は、それを歓迎します。
database - レプリケーションスキーム/アルゴリズムに関する記事?
特定のデータフローを含む分散システムを設計しています。少なくともN個のノードが常にほぼ最新のデータを持っていることを保証したいと思います。完全な一貫性は必要ありません。結果整合性のみが必要です(いつでも、データの現在のスナップショットは最終的に少なくともNノードに表示されます。ここで「現在」という用語を定義するのは難しいですが、それでも)。ノードはいつでも障害が発生して元に戻る可能性があり、単一の「中央」ノードはありません。
おおオーバーフロー!レプリケーションスキームを説明するいくつかの良い論文を指摘してください。私はこれまでに1つを見つけました:Optimistic Replication Algorithmsの整合性管理と、同じ著者によるより広範で最近の記事:OptimisticReplication。
fault - ソフトウェアのフォールトトレランス
航空交通管制システムにソフトウェアのフォールトトレランスがどのように実装されているか知っている人はいますか?
いくつかのURLは非常に役立ちます。
fault-tolerance - .NET の LINQ サポートを備えた優れたスケーラブルなフォールト トレラントなインメモリ データベース
LINQ と SQL Server の永続性をサポートする優れたメモリ内トランザクション データベースはありますか? 大規模なデータ ストアの完全な表現をメモリ内に作成し、それを SQL Server データベースに遅延的にコミットさせたいと考えていますが、水平方向にスケールアウトすることである程度のフォールト トレランスを維持したいと考えています。CouchDB のような非リレーショナル データグラムに依存したくありません。