I will need to recover my old-branch to give you some pointers about it…

I - A lot of the codecs are creating plenty of intermediate objects… 

Pseudo-Example on the messageCodec:  List… decodedProperties…

Message message = new Message(list.get(0), list.get(1)… );

it could be something done directly at wire layer without requiring the 
intermediate object. that’s putting some pressure at the GC.

There’s also a case now where having SASL is increasing the time response 
(having SASL is requiring having an intermediate buffer I believe)… 

And there are other cases that could go beyond simply the codec.. but I have 
more abstract concerns at this point.. where we could probably talk over the 
phone.. or have a dedicated session over IRC.

I have this transient branch containing some of the micro-benchmarks and some 
proposed changes I had a while ago. It’s probably not in a working state… but 
it would give you an idea where I was aiming for.


Reply via email to