S_a_k_Uの日記みたいなDB

~サクゥーと呼ばないで~

クラスローダとSingleton

SpringでSingletonっても、所詮アプリケーション内でのみのスコープとなってしまう。
結構アプリケーションってサブシステム的な形が多い。
で、例えば組織情報とかSingletonとしたとしても、アプリケーション毎にインスタンスがある訳で。
とりあえずEJBという方向があるのはあるけど、いろいろコスト的どうなん?ということで、アプリケーションを超えてJavaVM内でSingletonを実現するには?みたいに考えてみた。
Singletonのオブジェクトを辿ると、staticの変数に行き着くハズなので、アプリケーションより上位?下位?のクラスローダのレベルで、staticの変数を持つクラスをロードさせればええんか?と思ってみる。
@IT総合トップ > テクノロジー > Java Solution > Java TIPS
クラスローダの仕組みを知る
ということで、%TOMCAT_HOME%/libの下にstaticの変数を持つクラスを置いてみたら、複数のアプリケーションから参照できた。
そのアプリケーションサーバを占有して使えるんなら、こういう手を考えてもええかも。
SpringならApplicationContextがアプリケーションコンテキストでなくて、JavaVMコンテキストって感じになるか。
でも、本来アプリケーションコンテキストとしたい情報はどうすんな?という問題があるか?
自分でSpringをラップするような仕組み(クラス群)を作って、それをアプリケーションサーバのレベルのクラスローダでロードさせればよさげ?