一般的な J2EE Web アプリケーションの場合、データソース接続設定はアプリケーション サーバー構成の一部として保存されます。
これらの構成の詳細をバージョン管理する方法はありますか? データソースやその他のアプリケーション サーバー構成の変更をより詳細に制御したい。
これを行うための標準的な方法は何ですか?
一般的な J2EE Web アプリケーションの場合、データソース接続設定はアプリケーション サーバー構成の一部として保存されます。
これらの構成の詳細をバージョン管理する方法はありますか? データソースやその他のアプリケーション サーバー構成の変更をより詳細に制御したい。
これを行うための標準的な方法は何ですか?
WebSphereを使用する場合、最良のアプローチは、デプロイメントのスクリプトを作成し、そのスクリプトをバージョン管理と各ターゲット環境の応答ファイルの下に置くことであることがわかりました。
バージョン管理を通じてアプリケーション サーバーへの構成の変更を追跡することを求めるのは良いことです。ただし、管理 Web インターフェイスではなく、スクリプトを使用してすべての変更が行われることを意味します。私はお勧め
http://www.ibm.com/developerworks/java/library/j-ap01139/index.html?ca=drs-
このトピックに関する優れた背景情報記事として。
更新: つい最近、パート 2 がここで公開されました: http://www.ibm.com/developerworks/java/library/j-ap02109/index.html?ca=drs-
ディレクトリ構造がファイルの混乱であるため、Websphere は扱いにくい場合があります。多くの場合、重複しているように見え、バックアップ/復元する必要がある魔法のファイルを特定するのは困難です。これをどのように行うかという問題は、それを行う必要性を損なうべきではありません。-これは間違いなくイエスです。
アプリサーバーの設定には常にバージョン管理を使用しています。これは、weblogicサーバーディストリビューションの一部であるWLST(weblogicスクリプティングツール)と呼ばれるツールです。ドメイン構成はJythonスクリプト内に保存されます。このスクリプトはコマンドラインから簡単に実行できるため、ビルドツールのMavenと統合されています。
事前構成された実行中のweblogicドメインを作成するには、Mavenの目標を実行するだけです。誤って構成されたjdbc接続または間違ったjms宛先パラメーターのこれらの厄介な問題はすべてなくなりました。特定の時間にソースコードと一致するappserver構成が常にあります。作業中のプロジェクトのこの特定のバージョンにどのアプリサーバー設定を適用する必要があるかを覚えておく必要はありません。
私は本当にこれをお勧めします。
他のアプリケーションサーバーでも同様のソリューションが利用できるかどうかも知りたいです。私の知る限り、アリを介してグラスフィッシュを作る方法があります。これはJBossでどのように達成できますか?
しかし、これでアプリケーション サーバーのデータソース構成の変更を管理するにはどうすればよいでしょうか。シナリオは次のとおりです。
DBA は、データベース サーバーの接続パスワードを変更します。
Webspehere/Weblogic 管理者は、管理コンソールを使用してサーバー構成に対応する変更を行います。
上記の変更はバージョン管理されていないため、そのような変更の履歴を明確に知る方法はありません。
問題は、アプリケーションをどのように構成するかではなく、構成の変更をどのようにバージョン管理するかです。単純なプロジェクトではやり過ぎのように聞こえるかもしれませんが、一部のプロジェクトでは、このような変更を制御することが実際に問題になります。
私たちの (Spring) アプリには、Spring 構成ファイルにハードコーディングされた jndi 名があります。そうすれば、同じ耳を dev、qa、および prod 環境にデプロイでき、データベース接続の詳細について心配する必要がなくなります。
アプリ サーバーの管理者は、データソースがその jndi 名に対して登録されていることを確認し、各環境に応じて接続の詳細を確認します。
「X をバージョン管理すべきか」と自問するときはいつでも、デフォルトの答えは「はい」です。
より洗練された答えを得るには、次のことを自問してください。ファイルは人によって作成されたもの (ソース ファイルやドキュメントなど) ですか、それとも別のプログラムによって生成されたもの (オブジェクト ファイルや配布 PDF など) ですか?
人間によって作成および/または維持されるファイルは、構成管理下にある必要があります。