タイトルにあるように、誰かが素晴らしいシステムやアイデアを持っていますか?
PHPで記述されApacheによって提供されるWebアプリの製品版をリリース1234からリリース1235に切り替えたいのですが、その前に、すべてのファイルをすでにオペコードキャッシュ(APC)に入れておきます。次に、切り替え後、リリース1234からファイルの古いキャッシュエントリを削除します。
私が考える限り、あるバージョンから次のバージョンにアトミックに切り替える簡単な方法は3つあります。
- / liveなどのシンボリックリンクがあります。これは常にドキュメントルートですが、あるバージョンから次のバージョンを指すように変更されています。
同様に、常にドキュメントルートであるディレクトリ/ liveがありますが、
mv live oldversion && mv newversion live
新しいバージョンに切り替えます。
- Apache構成を編集して、ドキュメントルートをnewversionに変更してから、apacheを再起動します。
3を実行する必要がない方が望ましいと思いますが、とにかくすべてのphpファイルをプリコンパイルし、1または2を使用してリリースを切り替えることは考えられません。
それで、誰かが私にオプション3に頼っても大丈夫だと説得するか、1または2で作業する方法を教えてくれるか、または私が考えていない他のオプションを明らかにすることができますか?