問題タブ [distributed-algorithm]
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++ - 分散アルゴリズムプログラミング用のヘルパーライブラリ?
分散アルゴリズムをコーディングするとき、プロセッサ、レジスタ、メッセージ、リンクなどの抽象的なものをモデル化するためにライブラリを使用しますか?それを行うライブラリはありますか?
たとえば、自己安定化最小スパニングツリーアルゴリズムのような自己安定化アルゴリズムについて考えています。
algorithm - オープンソースのゴシップベースのメンバーシッププロトコル?
ゴシップベースのメンバーシップ プロトコルを実装する分散アプリケーションにプラグインできるライブラリを探しています。
このようなライブラリを使用すると、メンバーシップ リストを送受信したり、受信したメンバーシップ リストをマージしたりできます。ライブラリがパフォーマンス O(logn) パフォーマンスを保証するプロトコルを実装していれば、さらに良いでしょう。
このようなオープンソースのライブラリを知っている人はいますか? 前述の要件をすべて満たす必要はありません。部分的に実装されたものでも役に立ちます。
distributed-system - ビュー変更アルゴリズムと paxos
ビュー変更アルゴリズムと Paxos の関係はどうなっているのだろうか? 私の講義ノートでは、「各ビューの参加者はプライマリに同意し、後でレプリケーション プロセスを管理する」と述べています。このコンテキストでのビューは何ですか? Paxos はこれにどのように関係していますか?
protocols - なぜ「エントロピー」という言葉が反エントロピープロトコルに存在するのですか?
アンチエントロピープロトコルは、ゴシッププロトコルの一種です。http://en.wikipedia.org/wiki/Gossip_protocol。ここでの単語エントロピーの重要性を誰かが説明できるかどうか疑問に思いました。
sql - データベース間の安全な値の転送
いくつか検索しましたが、検索する適切な用語が見つかりません。
完全に分離されていますが、信頼できるデータベースが 2 つあります。信頼性の低い (しかし安全な) 接続があります。両方のデータベースは異なるサーバーで実行されますが、サーバーに障害が発生する可能性があります。
両方のデータベースはお金で動作し、1 つのアカウント (データベース #1、サーバー #1) から別のアカウント (データベース #2、サーバー #2) にいくらかの金額を「転送」する必要があります。
これは、たとえ両方のサーバーがクラッシュして最悪の瞬間に復元されたとしても、「損失金」または「二重金」を引き起こさない方法で行う必要があります。
そのためには、誰かの一般的なアルゴリズムが必要だと思います。
java - Java でのこのアルゴリズムの実行の何が問題になっていますか?
次のツリーを検討してください。
私がやろうとしているのは、ツリー ウェーブ アルゴリズムをエミュレートすることです。これにより、ノードが直接接続されたネイバーの 1 つを除くすべてからトークンを受信した場合、そのサイレント ネイバーにトークンが送信されます (リーフ ノードの場合は常に true)。ノードがサイレント ネイバーからトークンを受信すると、決定が下されます。ノードは常に 7 であり、ツリー構造は同じであるため、各ノードの隣接ノード (直接接続されたノード) を常に把握しています。
ツリー アルゴリズムの擬似コード:
次のオブジェクトがあります。
run() メソッド内には while(condition) があり、これは実際には待機 (ネイバーからトークンを受信する) を意味し、ノードがトークンを受信しなかったネイバーが 1 つしかない場合は、そのノードにトークンを送信します。
これは、ノードを作成する方法と、相互に関連付ける方法です。
私がしていることは、実行するノードの順序をランダムに選択することです:
たとえば、ノードは任意の順序である可能性があります。
そして、私はスレッドを開始します:
期待される結果が得られる場合があります (2 つを決定する必要があります)。
しかし、通常、エラーが発生し、決定するのは1つだけです:
はい、これは割り当てのためです。私はこの人たちと本当に親しいです..しかし、私はこの問題に直面しています。
algorithm - コンシステントハッシュとコーンハッシュの違いは何ですか?
私が知っていることは次のとおりです。
- コンシステント ハッシュ: 均一な分散ストレージ システム
- コーン ハッシング: 不均一な分散ストレージ システム
私は知りたいです:
- 使い方?
- それの用途は何ですか?
- この 2 種類のハッシュの違いは何ですか?
この2つの違いを理解できません。誰かこれで私を助けてください!