Skip to content

StressTest

Albert edited this page Jul 10, 2020 · 7 revisions

RemoraJ Stress Test Report

running jBoss 7.2 Remora 0.1.4-SNAPSHOT built 2020-02-28 and RemoraJ 0.1.9 built 2020-07-09 With testHarnesses built 2020-02-28:

Threads Schedulle (every ..) Target
ApacheHttpClientHarness 50 50ms Same jBoss
SQLHarness 50 50ms SQL server running the same machine
MQReceiveHarness 50 50ms MQ running on VirtualBox, same queue as send
MQSendHarness 50 50ms MQ running on VirtualBox, same queue as receive
WebsocketSendHarness 50 50ms Same jBoss, testHarnness endpoint
KafkaConsumerHarness 50 50ms Kafka running on the same machine
KafkaProducerHarness 50 50ms Kafka running on the same machine

Measuring with JConsole.

Results:

With RemoraJ 0.1.4-SNAPSHOT

Heap Memory Usage: ~900 CPU usage: 50-60

With RemoraJ 0.1.9

Heap Memory Usage: ~450 CPU usage: <10%

With RemoraJ without chronicle queue

The same test condition except chronicle queue opted out, no files are created or written.

Heap Memory Usage: ~900 CPU usage: 50-55%

Without RemoraJ

-javaagent option is commented out;

Heap Memory Usage: ~300 CPU usage: <10%

Conclusions

For test scenario where ~350 thread are running invoking various instrumented remote services (HTTP, JMS send and receive) scenario RemoraJ causes overhead as expected. This might be caused by GC as jBoss was running with „JAVA_OPTS=-Xms1G -Xmx1G -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m“. Further investigation needed.

|