Can you rather have a proper parameter on Transport such as setBufferReleaseThreshold than a static attribute for the whole VM?
Default is fine.. but I have no way to control such parameter. (I actually think the default should be 2X maxFrameSize.. or something like that). On Jul 2, 2014, at 12:28 PM, Robbie Gemmell <[email protected]> wrote: > Discussed with Clebert on IRC. There is a threshold where it changes > behaviour and that was set too low, so it has now been raised significantly > such that most people continue seeing the prior behaviour and those who > want it can opt in with the property. > > Robbie > > On 2 July 2014 16:42, Clebert Suconic <[email protected]> wrote: > >> 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. >> >>
