vert-x3 / vertx-proton

Apache License 2.0
26 stars 26 forks source link

improve efficiency of writing output by using internal APIs #77

Closed franz1981 closed 6 years ago

franz1981 commented 6 years ago

ASAP I will provide some numbers to justify it

franz1981 commented 6 years ago

This one is making some difference here: I'm getting peaks of ~30% more throughput, but the broker isn't able to sustain it and seems more evident on producer side. I'm aware that it seems a sort of hack to use the internal API but I think that it worths it...

vietj commented 6 years ago

+1 from me

because it's an internal API that gives access to more bare bones Netty and that is used in some other places (like vertx-mqtt).

the API could change, but if it does so will this project be upgraded as test would break, worst case we revert to the supported Buffer API.

franz1981 commented 6 years ago

@vietj I want to get rid of the new byte[]allocation on ProtonDelivery send(byte[] tag, Message message, Handler<ProtonDelivery> onUpdated) too, but I need help from @gemmellr on it: I guess that there is some way to achieve it using the Proton send no copy API, but I'm not aware of other side effects :(