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

Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Kick the Tires Before You Commit: A Hands-On Tour of the Splunk Observability Cloud ...

Evaluating an enterprise observability platform usually goes like this: fill out a form, get a free trial with ...

Deep insights, no barriers: Splunk Observability Cloud Free Edition

As software delivery cycles continue to accelerate, observability shouldn’t be a luxury — it should be a ...

Monitoring AI Agents with Splunk Observability Cloud

Let’s say I’m running a travel planning AI app in production. A user asks for three concise hotel options in ...