Webエンジニア susumuis の技術ブログ

このブログの内容は個人の見解であり、所属する組織の公式見解ではありません

WicketのCPU負荷

Wicketはメモリをいっぱい消費することは有名ですが、メモリ管理を自動で行ってくれるので、不要になったデータはハードディスクに保存されたり、破棄されたりするので、これは比較的問題なさそうです。

実際のところ、どうなのか、jconsoleで実験してみました。

実験内容:
ページ1枚を表示し、ひたすらF5を連打
※ページの内容がどのようなものなのかは、お見せできないことはご容赦ください。
 CSSなどでフルデザイン済みの一覧ページです。パネル3枚くらい使用しています。

10〜15MBの間で推移しています。
サーバに数GBのメモリを積めば問題なさそうですね。

しかし、新たに問題を感じてきたのがCPU負荷です。

以下は、Servletを使った、古いアプリでの実験結果です。

JSPコンパイル時に高い負荷がかかっていますが、F5連打中は負荷らしい負荷がありません。

※ここで言う負荷とは、APサーバのCPU負荷で、DBサーバは下記両者とも、同条件にしているため、無視します。

一方、下記がWicketを使用したページでの結果です。

あきらかに、Wicketの場合は、ページ描画時に一生懸命CPUが処理していますという感じがしました。

この差は大きいかもしれません。
というのも、ECサイトでは、1時間あたり最大数万PVを処理する必要があるからです。
負荷が高いのはアクセスが集中した一瞬とはいえ、無視できないかもしれません。

今後要調査です。


追記:
実験環境

1枚目は、デスクトップPC Core2Duo, メモリ4GB
2,3枚目はノートPC PentiumM 1.1GB メモリ1.2GB