To improve sending/receiving of ObjectMessages I used another serialization framework (Kryo). I was a bit surprised, because the performance gain was not as big es expected.
- When using Kryo with ActiveMQ it improved sending/receiving message with about factor 2,5. - In my stand alone Java serialization test application (using ObjectOutputStream/ObjectInputStream vs. Kryo) I got about factor 4. In both cases I used the same object to (de-)serialize. Two questions: [1] Does ActiveMQ already use some kind of optimized Serializer? When looking in the source code of Active MQ I see something like this: DataOutputStream dataOut = new DataOutputStream(os); ObjectOutputStream objOut = new ObjectOutputStream(dataOut); [2] What's the purpose of slotting a DataOutputStream ahead of a ObjectOutputStream?