Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
wants to merge 32 commits into
base: master
Choose a base branch
from

Conversation

erik777
Copy link

@erik777 erik777 commented Apr 27, 2022

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
Copy link
Author

erik777 commented Apr 27, 2022

I did not see a way to exclude files from the PR, so it includes our custom pom-as.xml which is not needed for the PR, but needed to build and deploy in our enviornment. Remaining are changes to two java files that make up this PR.

You can delete pom-as.xml.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants