0

Web アプリケーションと MariaDB データベースをホストする 1 つの EC2 インスタンスがあり、ある時点で Web アプリケーションとデータベースを別々のインスタンスに分離してスケールアウトしたい場合、ダウンタイムを発生させずにスケールアウトするための標準的な方法は何ですか? 私には複雑な問題のように思えますが、Web 層とデータ層を最初から分離しておくことの利点について議論しているすべての投稿は、ほとんどがセキュリティの利点について述べており、スケーラビリティの利点を強調しているようには見えません。見た目ほど複雑な問題ではないと思います。

また、この同じシナリオで、スケールアップしてアプリケーションとデータベースの結合を維持することがそれほど複雑でないとしたら、どのように機能しますか? -- ダウンタイム 0 の要件を念頭に置いてください。

4

2 に答える 2

0

考えられる解決策の 1 つ:

EC2 インスタンスの前にロード バランサーを配置し、最初はトラフィックを単一のインスタンスに転送します。

ウェブサイトのコピーを実行する 2 番目のインスタンスをスピンアップし、構成をすべて取得して最初のインスタンスの DB をポイントし、それをロードバランサーに追加してトラフィックの取得を開始します。

オプション: 2 番目と同じように構成された 3 番目のインスタンスを追加し、Web サイトのコピーのみを実行します。

元のインスタンスを LB プールから取り出して、Web トラフィックが #2 と #3 だけに流れるようにします。

#1 インスタンスから Web サイトをアンインストールして、db サーバーのみを実行するようにします。

于 2016-10-03T11:36:33.783 に答える