編集:私がWeb開発に不慣れだったときに3〜4年前にこの質問をしましたが、質問は今日私には少しばかげています。他のホスティングプロバイダーに依存せずに独自のサーバー設定を作成したいと思いました。この質問を削除したかったのですが、いくつかのいい答えがあるので、そのままにしておきます。
Webサイトを複数の物理サーバーに展開したい。
サーバーが次のジョブを実行できるように、すべての物理サーバーにファイルと設定(およびユーザー入力)を保存する方法はありますか?
webサイトは引き続き動作し、中断やデータの損失はありません。
このトピックに関するオンラインコースや包括的なチュートリアルについて知っている人はいますか?
正しい思考。
すべてのサーバーは異なるプロバイダーからのインターネット接続を持っています。インターネットプロバイダーのいずれかがダウンした場合、またはb。ハードウェアまたは電源の障害が発生しても、Webサイトは中断することなく、またデータの損失もなく実行されます。
そのため、複数のホスティングサービスに依存している場合、Webサイトが大きくなると維持するのが難しくなります。
あなたの目的のために、コンテンツ配信ネットワーク(CDN)ベースの企業からホスティングサービスを利用する必要があります。
コンテンツ配信ネットワーク(CDN)は、インターネットの複数のデータセンターに配置されたサーバーの大規模な分散システムです。 CDNの目標は、高可用性と高性能でコンテンツをエンドユーザーに提供することです。 CDNは、Webオブジェクト(テキスト、グラフィック、URL、スクリプト)、ダウンロード可能なオブジェクト(メディアファイル、ソフトウェア、ドキュメント)、アプリケーション(eコマース、ポータル)、ライブストリーミングメディア、ストリーミングメディアとソーシャルネットワークを要求します。 -ウィキペディアから
以下のリソースが役立つ場合があります
パフォーマンスの向上を求めている場合、高可用性またはフォールトトレランス。あなたは後者だけを探していると思います。
あなたができることは2つ(またはそれ以上)のサーバーを持っていることです。 1つはアクティブ、もう1つはフォールバック用です。たとえば、メインサーバーを実行し、必要なすべてのことを実行できますが、otherサーバーはそれと同期し続け(おそらくNFSまたはSSHを介して)、CURLでテストして、すべてが生きていることを確認します数分(または秒)。
メインサーバーが応答していないことを検出すると、メインサーバーが自身のHDでWebサーバーソフトウェアを起動し、これまでに同期されたすべてのデータを、アクティブサーバーとして事実上宣言します。
以前ダウンしていたメインサーバーが再びアップした場合、最初に行うのは、もう一方のサーバーが現在アクティブサーバーである(または1つになっている)かどうかを確認することです。もしそうなら、それはそれ自身を二次的なものとして効果的に宣言します。それ以外の場合は、単に独自のWebサーバーを再起動します。
CDNは、Webサイトがキャッシュに対応している場合(何度も読み取りを繰り返す場合)に、必要な処理を実行します。
ただし、そうでない場合は、この複数のインターネット接続->ファイアウォール->ルーター->ロードバランサー->複数のWebサーバー->共有SANのように設定します。これにより、すべてのWebサーバーが同じ場所に保存されます。サーバーを広い範囲に分散させたい場合は、サーバー間で何らかの待ち時間が発生するため、完全には一致しないことに注意する必要があります。