EJBの先にある大規模システム
パフォーマンスが重要視される大規模システムのリサーチをしています。
トレーディングや、携帯のサイトなどのシステムですが、驚いたことに、このようなシステムでは、もうJ2EEではない。
分散キャッシュを使った、イン・メモリーな処理になるのですが、いくつかのメーカーが、このようなグリッド製品を出しています。
GigaSpaces、Tangosol (現在はOracle)、Gemstone、Terracottaなどです。
この文献が、参考になります。
GigaSpacesとGemFireについては、評価版をダウンロードして、動作させてみました。プアーなマシンの上ですが。
このようなソフトのアーキテクチャには、層すらないのです。カルチャー・ショックですね。
層は複雑さや、ロードをシェアするために必須と思っていたのですが・・・。
それから、イン・メモリのデータ・ストアも、かなり衝撃ですね。
前述の文献では、「メモリ内に保存されたデータの依存関係が、ディスク上では損なわれることがあり、数秒もしくは数分、数時間にわたってデータを保存するには、結局のところハッシュマップやJavaSpaceが最も良い方法だということです。データの元の形を保ったまま、普通は保存しておける (恐らくオブジェクトかXML) のに、なぜこれをリレーショナル構造にマップし直さなくてはならないのでしょう。」と述べています。
大変勉強になります。
リサーチの機会を与えてくださったMさんに感謝です。


コメントする