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!

Prove Your Splunk Prowess at .conf25—No Prereqs Required!

Your Next Big Security Credential: No Prerequisites Needed We know you’ve got the skills, and now, earning the ...

Splunk Observability Cloud's AI Assistant in Action Series: Observability as Code

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

Splunk Answers Content Calendar, July Edition I

Hello Community! Welcome to another month of Community Content Calendar series! For the month of July, we will ...