vertx-tcp-eventbus-bridge icon indicating copy to clipboard operation
vertx-tcp-eventbus-bridge copied to clipboard

Created bridge event on client consumer handler to support backpressure and other use cases

Open erik777 opened this issue 2 years ago • 1 comments

Motivation:

We needed a way to manage backpressure of messages that clients consume. I simply used the current BridgeEvent handler and extended it to call checkCallHook from inside the consumer handler under the "register" case.

This allowed us, and anyone else, to intercept the messages with the event handler and drop them when we detected backpressure on the socket, which the bridge handling provides access to. The backpressure code is not included in this PR, but is possible by the changes in the PR.

I used the BridgeEventType.RECEIVE, which was not previously used on the server side of the bridge because it's doc description best fit this type of message.

Conformance:

Your commits should be signed and you should have signed the Eclipse Contributor Agreement as explained in https://github.com/eclipse/vert.x/blob/master/CONTRIBUTING.md Please also make sure you adhere to the code style guidelines: https://github.com/vert-x3/wiki/wiki/Vert.x-code-style-guidelines

erik777 avatar Apr 27 '22 18:04 erik777