Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20200322_Amazon Builder's Library オンライン輪読会 vol.7

20200322_Amazon Builder's Library オンライン輪読会 vol.7

SadayoshiTada

March 22, 2020
Tweet

More Decks by SadayoshiTada

Other Decks in Technology

Transcript

  1. Amazon Builder's Library オンライ Amazon Builder's Library オンライ Amazon Builder's

    Library オンライ Amazon Builder's Library オンライ Amazon Builder's Library オンライ Amazon Builder's Library オンライ ン輪読会 vol.7 ン輪読会 vol.7 ン輪読会 vol.7 ン輪読会 vol.7 ン輪読会 vol.7 ン輪読会 vol.7 - 2020/03/22 - - 2020/03/22 - - 2020/03/22 - - 2020/03/22 - - 2020/03/22 - - 2020/03/22 - 1 / 15
  2. 目次 目次 目次 目次 目次 目次 リーダー選挙について リーダー選挙について リーダー選挙について リーダー選挙について

    リーダー選挙について リーダー選挙について リーダー選挙のメリット・デメリット リーダー選挙のメリット・デメリット リーダー選挙のメリット・デメリット リーダー選挙のメリット・デメリット リーダー選挙のメリット・デメリット リーダー選挙のメリット・デメリット Amazon のリーダー選挙方法 Amazon のリーダー選挙方法 Amazon のリーダー選挙方法 Amazon のリーダー選挙方法 Amazon のリーダー選挙方法 Amazon のリーダー選挙方法 Amazon のリーダー選挙のベストプラクティス Amazon のリーダー選挙のベストプラクティス Amazon のリーダー選挙のベストプラクティス Amazon のリーダー選挙のベストプラクティス Amazon のリーダー選挙のベストプラクティス Amazon のリーダー選挙のベストプラクティス                         2 / 15
  3. リーダー選挙について リーダー選挙について リーダー選挙について リーダー選挙について リーダー選挙について リーダー選挙について リーダー選挙は、分散システム内の1 つ( プロセス、ホスト、ス リーダー選挙は、分散システム内の1

    つ( プロセス、ホスト、ス リーダー選挙は、分散システム内の1 つ( プロセス、ホスト、ス リーダー選挙は、分散システム内の1 つ( プロセス、ホスト、ス リーダー選挙は、分散システム内の1 つ( プロセス、ホスト、ス リーダー選挙は、分散システム内の1 つ( プロセス、ホスト、ス レッド、オブジェクト、人間) に権限を与える方法 レッド、オブジェクト、人間) に権限を与える方法 レッド、オブジェクト、人間) に権限を与える方法 レッド、オブジェクト、人間) に権限を与える方法 レッド、オブジェクト、人間) に権限を与える方法 レッド、オブジェクト、人間) に権限を与える方法 権限には、作業を割り当てデータの一部を変更する機能、シ 権限には、作業を割り当てデータの一部を変更する機能、シ 権限には、作業を割り当てデータの一部を変更する機能、シ 権限には、作業を割り当てデータの一部を変更する機能、シ 権限には、作業を割り当てデータの一部を変更する機能、シ 権限には、作業を割り当てデータの一部を変更する機能、シ ステム内のすべてのリクエストを処理する責任が含まれる ステム内のすべてのリクエストを処理する責任が含まれる ステム内のすべてのリクエストを処理する責任が含まれる ステム内のすべてのリクエストを処理する責任が含まれる ステム内のすべてのリクエストを処理する責任が含まれる ステム内のすべてのリクエストを処理する責任が含まれる             3 / 15
  4. 分散システムにおけるリーダー選挙 分散システムにおけるリーダー選挙 分散システムにおけるリーダー選挙 分散システムにおけるリーダー選挙 分散システムにおけるリーダー選挙 分散システムにおけるリーダー選挙 分散システムのリーダー選挙は複数のサーバーに分散された 分散システムのリーダー選挙は複数のサーバーに分散された 分散システムのリーダー選挙は複数のサーバーに分散された 分散システムのリーダー選挙は複数のサーバーに分散された

    分散システムのリーダー選挙は複数のサーバーに分散された 分散システムのリーダー選挙は複数のサーバーに分散された タスクの取りまとめ役で1 つのプロセスを指定する過程*1 タスクの取りまとめ役で1 つのプロセスを指定する過程*1 タスクの取りまとめ役で1 つのプロセスを指定する過程*1 タスクの取りまとめ役で1 つのプロセスを指定する過程*1 タスクの取りまとめ役で1 つのプロセスを指定する過程*1 タスクの取りまとめ役で1 つのプロセスを指定する過程*1 耐障害性の観点でどのサーバーをプライマリとするか等 耐障害性の観点でどのサーバーをプライマリとするか等 耐障害性の観点でどのサーバーをプライマリとするか等 耐障害性の観点でどのサーバーをプライマリとするか等 耐障害性の観点でどのサーバーをプライマリとするか等 耐障害性の観点でどのサーバーをプライマリとするか等 サーバーは相互に通信を行なって、競合なくリーダーを決め サーバーは相互に通信を行なって、競合なくリーダーを決め サーバーは相互に通信を行なって、競合なくリーダーを決め サーバーは相互に通信を行なって、競合なくリーダーを決め サーバーは相互に通信を行なって、競合なくリーダーを決め サーバーは相互に通信を行なって、競合なくリーダーを決め る る る る る る 例えばネットワーク内で持っている固有のID で最も大きい 例えばネットワーク内で持っている固有のID で最も大きい 例えばネットワーク内で持っている固有のID で最も大きい 例えばネットワーク内で持っている固有のID で最も大きい 例えばネットワーク内で持っている固有のID で最も大きい 例えばネットワーク内で持っている固有のID で最も大きい ものがリーダーにする等 ものがリーダーにする等 ものがリーダーにする等 ものがリーダーにする等 ものがリーダーにする等 ものがリーダーにする等 *1 引用先: *1 引用先: *1 引用先: *1 引用先: *1 引用先: *1 引用先: リーダー選出 リーダー選出 リーダー選出 リーダー選出 リーダー選出 リーダー選出                         4 / 15
  5. リーダー選挙のメリット リーダー選挙のメリット リーダー選挙のメリット リーダー選挙のメリット リーダー選挙のメリット リーダー選挙のメリット システムの部分的な障害を減らす システムの部分的な障害を減らす システムの部分的な障害を減らす システムの部分的な障害を減らす

    システムの部分的な障害を減らす システムの部分的な障害を減らす 変更に関する他のシステムに簡単に通知できる 変更に関する他のシステムに簡単に通知できる 変更に関する他のシステムに簡単に通知できる 変更に関する他のシステムに簡単に通知できる 変更に関する他のシステムに簡単に通知できる 変更に関する他のシステムに簡単に通知できる クライアントに一貫性を提供できる クライアントに一貫性を提供できる クライアントに一貫性を提供できる クライアントに一貫性を提供できる クライアントに一貫性を提供できる クライアントに一貫性を提供できる 一貫したキャッシュを提供することにより、パフォーマンス 一貫したキャッシュを提供することにより、パフォーマンス 一貫したキャッシュを提供することにより、パフォーマンス 一貫したキャッシュを提供することにより、パフォーマンス 一貫したキャッシュを提供することにより、パフォーマンス 一貫したキャッシュを提供することにより、パフォーマンス を改善したり、コスト削減が可能 を改善したり、コスト削減が可能 を改善したり、コスト削減が可能 を改善したり、コスト削減が可能 を改善したり、コスト削減が可能 を改善したり、コスト削減が可能 他のシステムが同じ状態で同時に動作している可能性がある 他のシステムが同じ状態で同時に動作している可能性がある 他のシステムが同じ状態で同時に動作している可能性がある 他のシステムが同じ状態で同時に動作している可能性がある 他のシステムが同じ状態で同時に動作している可能性がある 他のシステムが同じ状態で同時に動作している可能性がある ことを考慮する必要がない ことを考慮する必要がない ことを考慮する必要がない ことを考慮する必要がない ことを考慮する必要がない ことを考慮する必要がない                               5 / 15
  6. リーダー選挙のデメリット 1/2 リーダー選挙のデメリット 1/2 リーダー選挙のデメリット 1/2 リーダー選挙のデメリット 1/2 リーダー選挙のデメリット 1/2

    リーダー選挙のデメリット 1/2 単一のリーダーは下記の点でデメリットになる 単一のリーダーは下記の点でデメリットになる 単一のリーダーは下記の点でデメリットになる 単一のリーダーは下記の点でデメリットになる 単一のリーダーは下記の点でデメリットになる 単一のリーダーは下記の点でデメリットになる 障害点になる 障害点になる 障害点になる 障害点になる 障害点になる 障害点になる 拡張性がない 拡張性がない 拡張性がない 拡張性がない 拡張性がない 拡張性がない リーダーへの変更がシステム全体への影響がある リーダーへの変更がシステム全体への影響がある リーダーへの変更がシステム全体への影響がある リーダーへの変更がシステム全体への影響がある リーダーへの変更がシステム全体への影響がある リーダーへの変更がシステム全体への影響がある デプロイ手法が限定的になる デプロイ手法が限定的になる デプロイ手法が限定的になる デプロイ手法が限定的になる デプロイ手法が限定的になる デプロイ手法が限定的になる                               6 / 15
  7. リーダー選挙のデメリット 2/2 リーダー選挙のデメリット 2/2 リーダー選挙のデメリット 2/2 リーダー選挙のデメリット 2/2 リーダー選挙のデメリット 2/2

    リーダー選挙のデメリット 2/2 リーダー選挙のデメリットはリーダーの範囲を慎重に選択す リーダー選挙のデメリットはリーダーの範囲を慎重に選択す リーダー選挙のデメリットはリーダーの範囲を慎重に選択す リーダー選挙のデメリットはリーダーの範囲を慎重に選択す リーダー選挙のデメリットはリーダーの範囲を慎重に選択す リーダー選挙のデメリットはリーダーの範囲を慎重に選択す れば軽減できる れば軽減できる れば軽減できる れば軽減できる れば軽減できる れば軽減できる リーダーがどの範囲までデータを保有しているかどうか リーダーがどの範囲までデータを保有しているかどうか リーダーがどの範囲までデータを保有しているかどうか リーダーがどの範囲までデータを保有しているかどうか リーダーがどの範囲までデータを保有しているかどうか リーダーがどの範囲までデータを保有しているかどうか デメリットに対策の方法としてシャーディングがある デメリットに対策の方法としてシャーディングがある デメリットに対策の方法としてシャーディングがある デメリットに対策の方法としてシャーディングがある デメリットに対策の方法としてシャーディングがある デメリットに対策の方法としてシャーディングがある シャーディングはデータを分割してパーティションに割り シャーディングはデータを分割してパーティションに割り シャーディングはデータを分割してパーティションに割り シャーディングはデータを分割してパーティションに割り シャーディングはデータを分割してパーティションに割り シャーディングはデータを分割してパーティションに割り 当てる技術 当てる技術 当てる技術 当てる技術 当てる技術 当てる技術 シャーディングによってデータが損失したとても影響範囲 シャーディングによってデータが損失したとても影響範囲 シャーディングによってデータが損失したとても影響範囲 シャーディングによってデータが損失したとても影響範囲 シャーディングによってデータが損失したとても影響範囲 シャーディングによってデータが損失したとても影響範囲 を小さくすることが可能 を小さくすることが可能 を小さくすることが可能 を小さくすることが可能 を小さくすることが可能 を小さくすることが可能                               7 / 15
  8. Amazon のリーダー選挙方法 1/2 Amazon のリーダー選挙方法 1/2 Amazon のリーダー選挙方法 1/2 Amazon

    のリーダー選挙方法 1/2 Amazon のリーダー選挙方法 1/2 Amazon のリーダー選挙方法 1/2 リーダー選出はPaxos やApache Zookeeper 等様々な方法があ リーダー選出はPaxos やApache Zookeeper 等様々な方法があ リーダー選出はPaxos やApache Zookeeper 等様々な方法があ リーダー選出はPaxos やApache Zookeeper 等様々な方法があ リーダー選出はPaxos やApache Zookeeper 等様々な方法があ リーダー選出はPaxos やApache Zookeeper 等様々な方法があ るが、リースがAmazon のリーダー選挙のメカニズム るが、リースがAmazon のリーダー選挙のメカニズム るが、リースがAmazon のリーダー選挙のメカニズム るが、リースがAmazon のリーダー選挙のメカニズム るが、リースがAmazon のリーダー選挙のメカニズム るが、リースがAmazon のリーダー選挙のメカニズム リースは組み込みの耐障害性を提供し、現在のリーダーを保 リースは組み込みの耐障害性を提供し、現在のリーダーを保 リースは組み込みの耐障害性を提供し、現在のリーダーを保 リースは組み込みの耐障害性を提供し、現在のリーダーを保 リースは組み込みの耐障害性を提供し、現在のリーダーを保 リースは組み込みの耐障害性を提供し、現在のリーダーを保 存する単一のデータベースを持つことで機能する 存する単一のデータベースを持つことで機能する 存する単一のデータベースを持つことで機能する 存する単一のデータベースを持つことで機能する 存する単一のデータベースを持つことで機能する 存する単一のデータベースを持つことで機能する リースはリーダーに定期的にハートビートを行う リースはリーダーに定期的にハートビートを行う リースはリーダーに定期的にハートビートを行う リースはリーダーに定期的にハートビートを行う リースはリーダーに定期的にハートビートを行う リースはリーダーに定期的にハートビートを行う ハートビートに失敗した場合、他のリーダー候補が引き継ぐ ハートビートに失敗した場合、他のリーダー候補が引き継ぐ ハートビートに失敗した場合、他のリーダー候補が引き継ぐ ハートビートに失敗した場合、他のリーダー候補が引き継ぐ ハートビートに失敗した場合、他のリーダー候補が引き継ぐ ハートビートに失敗した場合、他のリーダー候補が引き継ぐ                         8 / 15
  9. Amazon のリーダー選挙方法 2/2 Amazon のリーダー選挙方法 2/2 Amazon のリーダー選挙方法 2/2 Amazon

    のリーダー選挙方法 2/2 Amazon のリーダー選挙方法 2/2 Amazon のリーダー選挙方法 2/2 リースおよび分散ロックにおいてリーダーがロックを保持し リースおよび分散ロックにおいてリーダーがロックを保持し リースおよび分散ロックにおいてリーダーがロックを保持し リースおよび分散ロックにおいてリーダーがロックを保持し リースおよび分散ロックにおいてリーダーがロックを保持し リースおよび分散ロックにおいてリーダーがロックを保持し ていることを確認するのが難しい ていることを確認するのが難しい ていることを確認するのが難しい ていることを確認するのが難しい ていることを確認するのが難しい ていることを確認するのが難しい Amazon DynamoDB Lock Client とZAB といった耐障害性の Amazon DynamoDB Lock Client とZAB といった耐障害性の Amazon DynamoDB Lock Client とZAB といった耐障害性の Amazon DynamoDB Lock Client とZAB といった耐障害性の Amazon DynamoDB Lock Client とZAB といった耐障害性の Amazon DynamoDB Lock Client とZAB といった耐障害性の あるリーダーを選出する、リースベースのロッククライアン あるリーダーを選出する、リースベースのロッククライアン あるリーダーを選出する、リースベースのロッククライアン あるリーダーを選出する、リースベースのロッククライアン あるリーダーを選出する、リースベースのロッククライアン あるリーダーを選出する、リースベースのロッククライアン トがある トがある トがある トがある トがある トがある リーダー選挙で最もテストかつ簡単な方法を提供するたこ リーダー選挙で最もテストかつ簡単な方法を提供するたこ リーダー選挙で最もテストかつ簡単な方法を提供するたこ リーダー選挙で最もテストかつ簡単な方法を提供するたこ リーダー選挙で最もテストかつ簡単な方法を提供するたこ リーダー選挙で最もテストかつ簡単な方法を提供するたこ れらを使うとよい れらを使うとよい れらを使うとよい れらを使うとよい れらを使うとよい れらを使うとよい                   9 / 15
  10. リーダー選挙が失敗する時の影響 リーダー選挙が失敗する時の影響 リーダー選挙が失敗する時の影響 リーダー選挙が失敗する時の影響 リーダー選挙が失敗する時の影響 リーダー選挙が失敗する時の影響 リーダー選挙が失敗した時に次のリーダーがタスクをどう完 リーダー選挙が失敗した時に次のリーダーがタスクをどう完 リーダー選挙が失敗した時に次のリーダーがタスクをどう完 リーダー選挙が失敗した時に次のリーダーがタスクをどう完

    リーダー選挙が失敗した時に次のリーダーがタスクをどう完 リーダー選挙が失敗した時に次のリーダーがタスクをどう完 了させるか、システムは正常化どうかを確認する 了させるか、システムは正常化どうかを確認する 了させるか、システムは正常化どうかを確認する 了させるか、システムは正常化どうかを確認する 了させるか、システムは正常化どうかを確認する 了させるか、システムは正常化どうかを確認する Amazon では、データの耐障害性を第一に優先するし、デー Amazon では、データの耐障害性を第一に優先するし、デー Amazon では、データの耐障害性を第一に優先するし、デー Amazon では、データの耐障害性を第一に優先するし、デー Amazon では、データの耐障害性を第一に優先するし、デー Amazon では、データの耐障害性を第一に優先するし、デー タの損失を許容する タの損失を許容する タの損失を許容する タの損失を許容する タの損失を許容する タの損失を許容する 障害を許容するために単一のリーダーはいない 障害を許容するために単一のリーダーはいない 障害を許容するために単一のリーダーはいない 障害を許容するために単一のリーダーはいない 障害を許容するために単一のリーダーはいない 障害を許容するために単一のリーダーはいない                   10 / 15
  11. Amazon でリーダー選挙を使用するシ Amazon でリーダー選挙を使用するシ Amazon でリーダー選挙を使用するシ Amazon でリーダー選挙を使用するシ Amazon でリーダー選挙を使用するシ

    Amazon でリーダー選挙を使用するシ ステムの例 ステムの例 ステムの例 ステムの例 ステムの例 ステムの例 RDBMS への読み書きはリーダーデータベースに依存する RDBMS への読み書きはリーダーデータベースに依存する RDBMS への読み書きはリーダーデータベースに依存する RDBMS への読み書きはリーダーデータベースに依存する RDBMS への読み書きはリーダーデータベースに依存する RDBMS への読み書きはリーダーデータベースに依存する リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ リーダー選挙でEBS は一貫性保持のため読み書きの順序づけ をする をする をする をする をする をする DynamoDB/QLDB/Kinesis も同じアプローチ DynamoDB/QLDB/Kinesis も同じアプローチ DynamoDB/QLDB/Kinesis も同じアプローチ DynamoDB/QLDB/Kinesis も同じアプローチ DynamoDB/QLDB/Kinesis も同じアプローチ DynamoDB/QLDB/Kinesis も同じアプローチ KCL がリースを使用してKinesis ストリームのスケールアウト KCL がリースを使用してKinesis ストリームのスケールアウト KCL がリースを使用してKinesis ストリームのスケールアウト KCL がリースを使用してKinesis ストリームのスケールアウト KCL がリースを使用してKinesis ストリームのスケールアウト KCL がリースを使用してKinesis ストリームのスケールアウト を容易にする を容易にする を容易にする を容易にする を容易にする を容易にする                         11 / 15
  12. Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ

    Amazon のリーダー選挙のベストプラ クティス 1/2 クティス 1/2 クティス 1/2 クティス 1/2 クティス 1/2 クティス 1/2 リースの残り時間を頻繁に確認する リースの残り時間を頻繁に確認する リースの残り時間を頻繁に確認する リースの残り時間を頻繁に確認する リースの残り時間を頻繁に確認する リースの残り時間を頻繁に確認する リースの残り時間が期限切れになる可能性の考慮 リースの残り時間が期限切れになる可能性の考慮 リースの残り時間が期限切れになる可能性の考慮 リースの残り時間が期限切れになる可能性の考慮 リースの残り時間が期限切れになる可能性の考慮 リースの残り時間が期限切れになる可能性の考慮 バックグラウンドスレッドでのハートビートリースを避ける バックグラウンドスレッドでのハートビートリースを避ける バックグラウンドスレッドでのハートビートリースを避ける バックグラウンドスレッドでのハートビートリースを避ける バックグラウンドスレッドでのハートビートリースを避ける バックグラウンドスレッドでのハートビートリースを避ける                   12 / 15
  13. Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ Amazon のリーダー選挙のベストプラ

    Amazon のリーダー選挙のベストプラ クティス 2/2 クティス 2/2 クティス 2/2 クティス 2/2 クティス 2/2 クティス 2/2 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 リーダーが処理可能なメトリックを頻繁に確認し、容量が不 足する前にスケーリングするよう計画 足する前にスケーリングするよう計画 足する前にスケーリングするよう計画 足する前にスケーリングするよう計画 足する前にスケーリングするよう計画 足する前にスケーリングするよう計画 監査証跡またはリーダーのログを保持する 監査証跡またはリーダーのログを保持する 監査証跡またはリーダーのログを保持する 監査証跡またはリーダーのログを保持する 監査証跡またはリーダーのログを保持する 監査証跡またはリーダーのログを保持する TLA+ などのツールを使用して、分散アルゴリズムの正確性を TLA+ などのツールを使用して、分散アルゴリズムの正確性を TLA+ などのツールを使用して、分散アルゴリズムの正確性を TLA+ などのツールを使用して、分散アルゴリズムの正確性を TLA+ などのツールを使用して、分散アルゴリズムの正確性を TLA+ などのツールを使用して、分散アルゴリズムの正確性を モデル化し検証する モデル化し検証する モデル化し検証する モデル化し検証する モデル化し検証する モデル化し検証する                   13 / 15
  14. まとめ まとめ まとめ まとめ まとめ まとめ リーダー選挙は、Amazon 全体のシステムで使用される強力な リーダー選挙は、Amazon 全体のシステムで使用される強力な

    リーダー選挙は、Amazon 全体のシステムで使用される強力な リーダー選挙は、Amazon 全体のシステムで使用される強力な リーダー選挙は、Amazon 全体のシステムで使用される強力な リーダー選挙は、Amazon 全体のシステムで使用される強力な ツールであり、システムの耐障害性を高め、運用を容易にする ツールであり、システムの耐障害性を高め、運用を容易にする ツールであり、システムの耐障害性を高め、運用を容易にする ツールであり、システムの耐障害性を高め、運用を容易にする ツールであり、システムの耐障害性を高め、運用を容易にする ツールであり、システムの耐障害性を高め、運用を容易にする リースの実装によって提供される保証についてはシステムの リースの実装によって提供される保証についてはシステムの リースの実装によって提供される保証についてはシステムの リースの実装によって提供される保証についてはシステムの リースの実装によって提供される保証についてはシステムの リースの実装によって提供される保証についてはシステムの 正確性に焦点を当てる 正確性に焦点を当てる 正確性に焦点を当てる 正確性に焦点を当てる 正確性に焦点を当てる 正確性に焦点を当てる TLA+ などの手法を使う TLA+ などの手法を使う TLA+ などの手法を使う TLA+ などの手法を使う TLA+ などの手法を使う TLA+ などの手法を使う                   14 / 15
  15. 参考資料 参考資料 参考資料 参考資料 参考資料 参考資料 分散システムデザインパターン 分散システムデザインパターン 分散システムデザインパターン 分散システムデザインパターン

    分散システムデザインパターン 分散システムデザインパターン 分散システムについて語らせてくれ 分散システムについて語らせてくれ 分散システムについて語らせてくれ 分散システムについて語らせてくれ 分散システムについて語らせてくれ 分散システムについて語らせてくれ 分散システムの限界について知ろう 分散システムの限界について知ろう 分散システムの限界について知ろう 分散システムの限界について知ろう 分散システムの限界について知ろう 分散システムの限界について知ろう 情報工学レクチャーシリーズ 分散処理システム 情報工学レクチャーシリーズ 分散処理システム 情報工学レクチャーシリーズ 分散処理システム 情報工学レクチャーシリーズ 分散処理システム 情報工学レクチャーシリーズ 分散処理システム 情報工学レクチャーシリーズ 分散処理システム リーダ選出: ring アルゴリズム リーダ選出: ring アルゴリズム リーダ選出: ring アルゴリズム リーダ選出: ring アルゴリズム リーダ選出: ring アルゴリズム リーダ選出: ring アルゴリズム                               15 / 15