
専用のサーバーで実行されるカスタム作成された e コマース アプリがあります。その定数 (データベース接続、ファイル パスなど) はすべて、単一の _constants.php ファイルで定義されています。コード全体は svn によって追跡されます (定数ファイルを除く)
現在、私たちは成長しています。専用の MySQL サーバーと専用の「共有」サーバーを備えた、3 サーバーの負荷分散された Apache システムに移行しています。共有サーバーは、各負荷分散サーバーからシンボリックリンクされています。lb1 はマスターであり、public_html ディレクトリを 1 分ごとに他のサーバーに fsync するように設定されています。
今、私はアプリを新しいサーバー設定に移行するという課題に直面しています。質問:
ファイル パス定数。負荷分散された各サーバーには、public_html フォルダーのファイル パスが異なります。ここで何をすればよいでしょうか。コードを lb1 にチェックアウトし、定数フォルダーを public_html の外に置くだけでよいのでしょうか。定数フォルダーを書き換えて、どのパスにあるかわかるようにすればよいのでしょうか。
画像、JavaScript、CSS などのすべての「共有」ファイルを共有サーバーに移動しています。次に、定数ファイルでそれらの参照パスを変更します。ただし、これらの共有ファイルを含むコード セット全体が 1 つの SVN リポジトリに含まれています。アクセスされるファイルは画像、JS、CSS のみですが、共有サーバー上のコード ベース全体をチェックアウトするだけと考えていました。LB1 でも同じです。コード ベース全体をチェックアウトします。その場所からグラフィックス、CSS、GFX がロードされることはありませんが。簡単になります。ハード ドライブのスペースを無駄にしていることはわかっていますが、この方法では個別の SVN リポジトリを維持する必要がありません。これは間違っていますか? 他にもっと良い方法はありますか?
Solr を実行している Tomcat サーバーがあります。ホストによると、サーバーは lb1 で実行されており、1 分ごとに Tomcat フォルダー全体を rsync するように設定されているそうです。これでよいのでしょうか?
スタッフ用の管理インターフェイスがあります。スタッフは製品を変更したり、注文を処理したりするためにログインします。スタッフが作業を行うために常に lb1 を指すサブドメインを設定する必要がありますか?
すべてのログ ファイルを共有に設定する予定です。よろしいでしょうか?
Cron ジョブ。マスター cron ジョブがあります。これは、db とログ ファイルにアクセスするコードを実行します。共有サーバーでのみこれを実行するつもりなので、コード ベース全体を共有サーバーに置くもう 1 つの理由になります。これはどう思いますか?
他に知っておくべき「ベストプラクティス」は何ですか。
この質問をするより良い場所があれば、お知らせください。
前もって感謝します。