August 2022
Beginner to intermediate
280 pages
3h 50m
Japanese
私たちは、ディスカバリと合意形成を備えた本物の分散サービスを構築しました。これまでは、サーバに焦点を当ててきましたが、クライアントに関してはgRPCを使うこと以外の変更は行っていません。この章では、サービスの可用性、拡張性、ユーザ体験を向上させる、三つのクライアント機能に取り組みます。クライアントが自動的に、次のことを行うことを可能にします。
これらの改善が終わったら、デプロイの準備ができていることになります。
ディスカバリとロードバランスの問題を解決するために、三つの戦略が使えます。
サーバプロキシは、最も一般的に使われるディスカバリとロードバランスのパターンです。ほとんどのサーバは、ロードバランスがどのように動作するのかに関する制御を与えるほどにはクライアントを信頼していません。なぜなら、それらの決定はサービスの可用性に影響するかもしれないからです(たとえば、クライアントが一つのサーバを対象にして、そのサーバが使えなくなるまで呼び出すことを可能にします)。クライアントとサーバの間にプロキシを置き、信頼境界として機能させることができます。プロキシは、プロキシの背後にあるすべてのネットワークが外部から隔離されたネットワークであり、信頼され、制御下にあるため、システムがどのようにリクエストを取り込むかを制御できます。サーバプロキシは、サービスレジストリを維持したり呼び出したりして、プロキシ先のサーバを知ります。インターネットからの外部トラフィックをロードバランスするために、AWSのELB( ...
Read now
Unlock full access