Peculiar JRE behaviour running RMI server under load, should I worry?

Posted by darri on Stack Overflow See other posts from Stack Overflow or by darri
Published on 2010-05-06T19:40:07Z Indexed on 2010/05/06 19:58 UTC
Read the original article Hit count: 168

Filed under:
|
|

I've been developing a minimalistic Java rich client CRUD application framework for the past few years, mostly as a hobby but also actively using it to write applications for my current employer.

The framework provides database access to clients either via a local JDBC based connection or a lightweight RMI server. Last night I started a load testing application, which ran 100 headless clients, bombarding the server with requests, each client waiting only 1 - 2 seconds between running simple use cases, consisting of selecting records along with associated detail records from a simple e-store database (Chinook).

This morning when I looked at the telemetry results from the server profiling session I noticed something which to me seemed strange (and made me keep the setup running for the remainder of the day), I don't really know what conclusions to draw from it.

Here are the results:

Memory
GC activity
Threads
CPU load

Interesting, right?

So the question is, is this normal or erratic? Is this simply the JRE (1.6.0_03 on Windows XP) doing it's thing (perhaps related to the JRE configuration) or is my framework design somehow causing this?

Running the server against MySQL as opposed to an embedded H2 database does not affect the pattern.

I am leaving out the details of my server design, but I'll be happy to elaborate if this behaviour is deemed erratic.

© Stack Overflow or respective owner

Related posts about java

Related posts about jre