エンタープライズ システムに関連する専門用語の 1 つは、「高可用性」システムです。高可用性システムを実現するための基本的な方法は、アプリケーションをクラスターとして展開し、1 つのノードがダウンしても他の ndoes が引き続き要求を処理できるようにすることだと理解しています。クラスタリング以上の高可用性がありますか?
1 に答える
はい、これだけではありません。
高可用性サービスの「難しい部分」の 1 つは、アプリケーションが必要とするデータを、要求処理サーバーのクラスター全体で長期間維持することです。これは、多くの場合、データベースまたはキー値ストアとレプリケーションを使用して実現されます。ここには、知っておくべきことがたくさんあります。
もう 1 つの課題は、着信要求を最も使用頻度の低い要求ハンドラーに転送することです。これは、多くの場合、F5 のような負荷分散ソフトウェア (またはハードウェア) を使用して支援されます。
サービスが成長するにつれて、ハンドラーとデータストアの両方の監視がますます重要になります。Splunk、nagios などが重要になります。また、クラウド サービスの管理ツールがどのように機能するかについても知りたいと思うでしょう (RightScale や他のツールが提供するツールは、それらのツールと、それらが監視/管理している環境に十分な経験がない限り、かなり不透明に見える可能性があります)。
アプリケーション レベルでは、静的データをどのように保存および配信するか (おそらく、S3 に保存されたアセットを配信する Akamai のような CDN?)、アプリケーションがクラスター全体でデータ アクセスを同期する方法 (スレッド化されたコードの記述 -- 些細なことではありません) と、アプリケーションが要求するハードウェア リソース (メモリ、CPU、ネットワークなど) を最適に管理する方法について説明します。
これらのことのそれぞれは、それ自体が深い研究の領域です。