例によって未来の日記を書く。
今回はほぼ全面的に賛成。
問題は大きく分けて二つで、
- 現在動いているものを PHP 5 に移行させるためには基本的に PHP 4 でも 5 でも問題なく動くようにしないと移行できない
- つまり両方の検証環境を用意しないといけない
かな。
で、1 だけでも大変なんだけど、実は 2 がかなり大変。つまり、4 から 5 へのアップグレード自体が不可能なケースもあり得るので、システムのダウンタイムをどれだけ短くしたうえでリプレイスを行うか、という判断が必要になることがある。これはもはや開発者だけの話では済まない。
例えば Apache を変更せずに済むなら二つのバージョンの違う mod_php を抱えた Apache を別ポートで動かして rewrite するだけで対応できる場合もあるし、Apache そのもののバージョンや関連するライブラリの影響で、jail や VPS のような環境を用意して移行準備をしなければいけない場合もあるだろうし、極端な話 OS の根っこから入れ直しになる場合もある。IP アドレスも機械も潤沢に余ってて何の苦労もないならまったく別な機械を新規に立てて新しい環境をガシガシ作ってそのまま移行すればいいけど、そうでなかったら?
ただ、常に二つ以上のバージョンを動かせる用意はしておくべきだよね、とは思う。そのとき、常に物理的に別な機械を用意できるとは限らないので、仮想化の技術は絶対にあった方がいいなと思った。新しい環境の準備が楽だし。あと自動でバージョンが上がって自動で動作チェックを行うような仕組みを用意できるならしておくといいね。ここまでできてるところはかなりレベル高いと思う。できればそういうところで働きたいもんだ。
ところで、「もっと洗練された開発環境」って具体的になんだろう、ドキドキ。