2 Replies Latest reply on Oct 21, 2004 10:15 AM by jhaddad

    Why serialize object message if using jvm invocation layer?

    jhaddad

      I've been doing performance analysis on my application which relies heavily on JMS enqueuing and MDB request processing. I use the jvm-il-service for optimum performance. One thing I see is that a lot of time is spent serializing and deserializing my message objects (I'm using ObjectMessage).

      I'm considering changing to MapMessage to avoid this hit, but I was curious if the developers considered special treatment of ObjectMessages when the JMV IL is being used?

        • 1. Re: Why serialize object message if using jvm invocation lay

          It is a spec requirement that the server's copy of a message cannot be modified by the
          client after it is sent or when it is received.

          I would consider a patch that disables the clone - serialize/deserialize
          for the JVM/IL.
          It would require that the clients using this ConnectionFactory don't try to modify the
          message after it is sent to the server. And the same after a client does a receive,
          although an optimization is possible on the receiving side since it is effectively delivered as
          "read only".

          • 2. Re: Why serialize object message if using jvm invocation lay
            jhaddad

            I get it. That would probably be asking too much of the clients - knowing that they can't modify the object. Maybe another way to optimize it could be calling clone() if Cloneable is implemented, or else take the hit with the current impl - (de)serialization?