#やりたいこと
オンプレのTomcat環境で複数のバージョンを並行稼働させたい。
#経緯
アプリ用のWebAPIをSpringBootで構築し、オンプレの環境で動かすことになりました。
その際にインターフェースで改修が発生した場合には、
アプリを強制アップロードさせ、古いバージョンを保守しない仕様となりました。
しかし、iOSの審査用にリリース前の最新環境を用意する必要があり、
複数のバージョンで動かす必要が出てきてしまいました。
#条件
・Java8
・Tomcat8
・インフラは基本的には手動で管理
・運用側にはあまり負担をかけたくない
(運用側にインフラに詳しい方がいらっしゃらないので)
・複雑なソース管理をあまりしたくはない
(バージョンごとにパッケージを切るなど)
・リリースは業務用アプリということもあり、3カ月に一回あるかないか
・API自体は一般には公開予定なし、アプリからのアクセスのみ
#こちらで想定した方法
・controller層で吸収
→ロジック部分に及ぶ改修が入った際に、吸収しきれないとの判断から没
・必要な分だけコピペで切り分けを行う
→旧バージョンをコピペした新バージョンのソースを作成し、
のちに削除する。
ソースコードが乱雑化しやすくなってしまうことや、
改修を行う人によって、コピペする基準が異なってしまうので没
・バージョンごとにパッケージを分けてソース管理
→プロジェクトパッケージ配下にv1、v2とパッケージを作成し切り分ける方法だが、過去ソースが追いにくくなるので非推奨状態
・複数のwarファイルを用意する
→リリースごとにバージョン名が入ったwarを用意し、
war単位で切り分けを行う。
現状これが一番有力
#聴きたいこと
・上記の解決案のほかに対応方法や、このようにやっているなど知見を共有していただけると助かります。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/07 01:53