[Seasar-user:15024] Re: [S2JDBC] SQL自動生成のメモリ消費
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2008年 7月 14日 (月) 17:00:19 JST
小林 (koichik) です.
Date: Mon, 14 Jul 2008 14:48:35 +0900
From: "Takashi ARAKANE" <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:15022] [S2JDBC] SQL自動生成のメモリ消費
> JdbcManager での SQL自動生成を行った場合と、updateBySqlを使用した場合とで、
> メモリの消費の仕方が明らかに異なるように思います。
>
> s2jdbc-tutorial を MySQL を使うように変更し、次の2つのコードを実行してみました。
(略)
> 特に -Xmx 等を指定せずに実行した場合には、EmployeeLogic の方は
> 徐々にメモリを消費していき、80MBytesを超えた後 OutOfMemoryが発生しますが、
> Employee2Logic の方は、25MBytes程度の消費で安定しています。
手元に MySQL の環境がないので,HSQLDB をクライアント・
サーバモードにして試してみましたが,どちらも 10 万件でも
20 万件でも成功しました.
# 50 万件だと HSQLDB のサーバがこけた.
VisualVM でヒープの使われ方も見てみましたが,SQL 自動生成の方が
文字列の処理が多いせいかメモリ使用量は多いものの,ヒープは最大でも
7M 程度しか使われませんし,GC の度に 4M 程度まで使用量が戻ることから,
リークがあるようには見えませんでした.
お手数ですが,JDK1.6.0u7 に含まれる VisualVM などを使用して
ヒープダンプを取得し,何がヒープを圧迫しているのか確認して
いただけないでしょうか.
--
<component name="koichik">
<property name="fullName">"Koichi Kobayashi"</property>
<property name="email">"[E-MAIL ADDRESS DELETED]"</property>
<property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
Seasar-user メーリングリストの案内