Splunk AppDynamics

Difference between Sun Java Agent vs IBM Java Agent

CommunityUser
Splunk Employee
Splunk Employee

Hi

Can someone please explain the difference between the Sun Java Agent vs the IBM Java Agent?

I'm not quite sure what the difference between these two are and which are you suppose to use for the application stack:

1. Software AG WebMethods

2. Akana SOA

Thanks

Labels (1)
0 Karma
1 Solution

Peter_Holditch
Builder

Ronald,

The JVM originating from Sun/Oracle/OpenJDK allows agent to re-write application bytecode on the fly with no significant performance penalty, meaning that the agent can dynamically change instrumentation at runtime when necessary.

The J9 JVM from IBM allows the same capability, but even requesting it disables certain runtime code optimisations that the JVM can make, meaning that the CPU cost per unit of work in the J9 JVM is higher if this ability is enabled.

The only difference between our 2 flavours of java agent is that the "IBM Java Agent" does not request the ability to retransform classes at runtime, so as not to force applications to incur this performance penalty.  (Obviously, this has the downside that it cannot change instrumentation on the fly)

The above is entirely independent of what applications / frameworks you are running, so you should choose the agent based on whether the JVM is J9 or the HotSpot one.

Warm regards,

Peter

View solution in original post

Peter_Holditch
Builder

Ronald,

The JVM originating from Sun/Oracle/OpenJDK allows agent to re-write application bytecode on the fly with no significant performance penalty, meaning that the agent can dynamically change instrumentation at runtime when necessary.

The J9 JVM from IBM allows the same capability, but even requesting it disables certain runtime code optimisations that the JVM can make, meaning that the CPU cost per unit of work in the J9 JVM is higher if this ability is enabled.

The only difference between our 2 flavours of java agent is that the "IBM Java Agent" does not request the ability to retransform classes at runtime, so as not to force applications to incur this performance penalty.  (Obviously, this has the downside that it cannot change instrumentation on the fly)

The above is entirely independent of what applications / frameworks you are running, so you should choose the agent based on whether the JVM is J9 or the HotSpot one.

Warm regards,

Peter

Get Updates on the Splunk Community!

SplunkTrust Application Period is Officially OPEN!

It's that time, folks! The application/nomination period for the 2025 SplunkTrust is officially open! If you ...

Splunk Answers Content Calendar, June Edition II

Get ready to dive into Splunk Dashboard panels this week! We'll be tackling common questions around ...

Splunk Observability Cloud's AI Assistant in Action Series: Auditing Compliance and ...

This is the third post in the Splunk Observability Cloud’s AI Assistant in Action series that digs into how to ...