2009年10月09日

[jython]ヒープサイズの調整

ASが一杯だ。いちいち管理コンソールとかやってられねぇ。面倒すぎる。
よろしい、ならばjythonだ。

(1)APサーバーを列挙

servers = AppConfig.list("Server")
for sv in servers.splitlines():
if(AdminConfig.showAttribute(sv,"serverType")=="APPLICATION_SERVER"):
#これでセル配下の全ASに大して同じ処理を実行できる。

(2)仮想マシンのIDを取得
jvms = AdminConfig.list("JavaVirtualMachine",sv)
for jvm in jvms.splitlines():

※JVMが複数あることは無いからループは無用だが、
 他の設定だと複数あることもあるので常にsplitlines()は意識
 しなければドツボにハマる。

(3)ヒープサイズ変更
最小ヒープサイズ=initialHeapSize
最大ヒープサイズ=maximumHeapSize

AdminConfig.modify(jvm,[["initialHeapSize",256],["maximumHeapSize",1024]])


変数名とかの調べ方
 ・上位のIDからAdminConfig.showAll()
 ・(WAS_INSTALL_ROOT)/profiles/(your profile)/config の
  XMLファイルから目星をつける
 ・InfoCenter

JVMの構成IDから変えることができるものとして他に、
verboseModeGarbageCollection(冗長GC)
genericJvmArguments(汎用JVM引数)
などなど。詳しくはshowAllしてくれ。

対象ASが100個有った場合、
一個処理するのに2分かかったとして200分の処理が
長くとも5分で終わる。
正しくセットできているかどうか、はそのセットした値を
逆にshowAttributeすれば証跡も残せる。
コンソールからだと画面のSSぐらいしかない。
(コンソールログというものがあり、証跡としてはこれでも十分だが
読めるようにするには編集をやらねばならんね。)
posted by koteitan at 15:27| Comment(0) | TrackBack(0) | jython | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック