web-dev-qa-db-ja.com

Wordpress 2台のサーバーへのインストール-ロードバランシング

別のサーバー上の1つのデータベースを共有する2つのサーバーにwordpress(1つのブログ、1つのドメイン、たとえばmycompany.com/blog)をインストールする必要があります。これらの2つのサーバーはロードバランサーとdbの背後にありますトラフィックが多いため、この方法を計画しています。

スタンドアロンで実行しましたwordpress IIS6、7などのWindows 2003、2008での単一サーバーへのインストール

私はこれをどのように実装するかについて調査中です。

これを達成するための手順は何ですか?検索時に、定期的に同期されるwp-content/uploadsディレクトリに関するいくつかの投稿を見ましたか?

読んでくれてありがとう


我々のしたこと :

a)sanクラスターに接続された2つのWebサーバーがありますb)sanにブログディレクトリを作成しましたc)両方のWebサーバーに仮想ディレクトリとしてそのブログディレクトリをマッピングしましたd)インストール済みwordpressいずれかにインストールしました)それらのうち(ドメインとIIS仮想ディレクトリは両方のサーバーで同じ-www.abc.comなど)e)このブログのデータベースは2つのMySQLボックスにあります

Wordpressはsanに座っているので、アップロードなどと競合することはありません。ブログのURLはwww.abc.com/blogであり、そのように設定されています。

それが誰かを助けることを願っています!

14
rihatum

それらのディレクトリを同一にする必要がある場合、それらを別のサーバーに配置して、NFS経由でリモートにマウントできますか?

4
Matt Simmons

wordpressパフォーマンスを向上させるための非常に多くの方法があり、2番目のサーバーとロードバランシングを必要としません。つまり、「すべてをキャッシュする」です。

  • Php opcode cacher(APC)を使用します。 64MB未満のメモリでwordpressを使用すると、90%のキャッシュヒット率を簡単に達成できます。

  • Mysqlクエリキャッシュを有効にします。非常に少ないメモリ(サイトに依存しますが、高すぎることはありません)で65%以上のキャッシュヒット率を簡単に達成できます。

最も重要なこと:

Wordpressは、ほとんどのリクエストが数百ページ(ブログ投稿)に制限されている、重い「読み取り」サイト(対書き込み)です。最も人気のある投稿の静的バージョンを提供することで、1秒あたりのリクエスト数を10倍に増やすことができます。そのための最良のプラグインはwp-super-cacheです。特定のプラグインが2k3と互換性があるかどうかはわかりませんが、ページの静的バージョンを自動的に作成し、定期的に更新して新しいコメントや編集などを含めるという一般的なアイデアが最善の策になるでしょう。

上記の一般的な拡張機能が実装されている場合、サイトが2つのWeb /アプリケーションサーバーを必要とするのに十分なトラフィックを実行していることを本当に疑います(上記はスラッシュドット効果を簡単に処理できます)。ただし、2台のWebサーバーは、フォールトトレランスのレベルを追加します。 1つのWebサーバーでパフォーマンスを実現できるため、アクティブ/パッシブセットアップを使用してフォールトトレランスを実現できます。これはより簡単で、セッション情報の共有を必要としません。

3
CarpeNoctem

私たちは同じ状況に遭遇し、wpアップロードディレクトリをホストするs3プラグインをインストールすることになったため、同期を処理する必要はありません。

これは私たちが使用したものです: http://tantannoodles.com/toolkit/wordpress-s3/

これまでのところ、うまく機能しています。

2
shennyg

セッションは、memcacheを介して、ファイルシステム上で共有する方が適切です。

0
Mike

サーバー間で、uploads/dirとセッションdirを共有する必要があります。通常は/ tmpにあります。

Php.iniでそれを変更し、samba、nfsなどを使用してサーバー間でセッションとアップロードされたファイルのfsを共有します。

0
sntg

まず、ここで非常に関連する質問に答えると、おそらく役立つでしょう: SAN + MySQLレプリケーション-は、負荷分散のために必要なものですDrupal cluster?

Webのクラスタリングはうさぎの穴にまで及ぶ可能性があるため、ビジネスの目標を念頭に置き、エンジニアの1人のアップマンシップで迷子にならないようにすることが重要です。たとえば、2つのWebサーバーと1つのデータベースサーバーを計画しているとしますが、データベースサーバーがボトルネックになっている場合はどうでしょうか。次に、2番目のWebサーバーが無駄になります。 1つのWebサーバーと1つのデータベースサーバーがあり、適切に構成されたwordpressを備えた最新のハードウェアでは、1秒あたり数百のリクエストを処理できます。それを期待していますか?そうでない場合、ロードバランシングに意味がありません。

0
cagenut