Wrong commit...
this is the culprit: commit 8fe9a12b1ad8dc9cd35324f4ed53bea9cb37ce22 Author: Robert Gemmell <[email protected]> Date: Fri Jun 27 10:07:47 2014 +0000 PROTON-597: update TransportOutputAdaptor and FrameParser to release buffers after use, reducing memory consumption when using large frame sizes Change from Marcel Meulemans git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1606010 13f79535-47bb-0310-9956-ffa450edef68 On Jul 2, 2014, at 11:40 AM, Clebert Suconic <[email protected]> wrote: > commit ccb7b03b8089c2fea329d44cea5dc06da6345ea6 > Author: Robert Gemmell <[email protected]> > Date: Fri Jun 27 10:08:24 2014 +0000 > > PROTON-597: only release transport buffers if they are above a threshold > capacity > > git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1606012 > 13f79535-47bb-0310-9956-ffa450edef68 > > > > It makes Proton pretty much useless... > > this code makes proton create a new buffer (a big buffer actually) every new > message written.. even minor messages. > The previous version before this would always use the same buffer, recycling > it... (making copies between my buffer and Proton), and then reseting the > buffer ready for the next usage. > > > with this new change in place, a benchmark that I was already struggling to > improve would make 2500 very small messages / second. With the new change you > get it to 333 small messages / second... > > > > > If you want to diminish the weight of each connection, then you need a proper > refactoring to Proton where you write to output buffers rather than internal > buffers. Proton needs this buffer as it is now unless you do a proper > refactoring.
