|
||||||||||||
| 前のページ 1 2 3 4 次のページ | ||||||||||||
| コンテナ生成の比較 | ||||||||||||
|
Seasar2もSpringも、設定ファイルから管理するコンポーネント情報を構築します。設定ファイルの形式は両者ともXMLです。 コンテナ生成時にそれぞれが行っている処理は次のようになります。
表4:コンテナ生成時に行う処理 さて、どちらが速いでしょうか。処理が少ないぶんSpringの方が速そうですが、一方でDOMよりSAXの方が速いことを考えると逆のようにも思えてきます。 |
||||||||||||
| 測定プログラム | ||||||||||||
|
まず測定プログラムについて簡単に解説します。 コンポーネントを大量に記述した設定ファイルを用意して、それぞれのコンテナを生成するのに掛かった時間を測定しました。設定ファイルとプログラムは次のようになります。コンポーネント数は、1,000個/2,000個/5,000個/10,000個の4ケースで測定しました。 設定ファイル(Seasar2)
<components>
プログラム(Seasar2)
long start = System.currentTimeMillis();
設定ファイル(Spring)
<beans>
プログラム(Spring)
long start = System.currentTimeMillis();
ご覧になるとわかりますが、DIやAOPは使用していません。それでは実際の結果を見てみましょう。 |
||||||||||||
| コンテナ生成の結果 | ||||||||||||
|
実際の結果は図1になります。 ![]() 図1:コンテナ生成処理の比較 Seasar2とSpringの両方ともほぼ同じ速度になりました。リフレクション情報をキャッシュする分のオーバーヘッドがSAXとDOMの性能差で吸収されていると思われます。 |
||||||||||||
|
前のページ 1 2 3 4 次のページ |
||||||||||||
|
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||


