synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "indika kumara" <>
Subject Re: Improving performance even more :)
Date Fri, 27 Jun 2008 07:43:28 GMT
Hi All

Some thought...

Currently message building and serializing is in transport layer. According
to the content type ,message is being built and we cannot control the
building process. For example , if the content type is corresponding to the
SOAP , then SOAP message is built and we cannot avoid it. This is fine only
if we use or access SOAP message. But if we can dispatch to
synapse,proxyservices,etc without touching SOAP message and if we will not
touch the SOAP message within synapse, then , we should not want a SOAP
message. But , currently , we have not that control .

If we can provide a option to transport to specify whether to build a
message or not (build and set as SOAP envelope ) and also if can provide a
way in synapse language to specify whether to build a message or not(Build
mediator which builds message and sets as SOAP envelope – default behavior
may use content-type, but we have to have options to override it.). One
other possibility is , with in transport layer , the message always set as
stream or OMDatasource (use BinaryBuilder ) irrespective of content type and
whenever try to access message on the first time
(messagecontext.getSOAPEnvelope()) and if SOAP envelope has not been built
yet, then builds it and sets as Envelope. This will be completely avoid
building message as a SOAP envelope , if we have not any interest in it.

For serialization part , we can do the same thing.

I don't know this is a good suggestion , but I believe , for scenarios, that
we don't access SOPA message, we have to completely avoid building it.


View raw message