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

SQS: Possibility to manage back pressure based on Rate Limiter #481

Open
jeroenvandevelde opened this issue Aug 24, 2022 · 1 comment
Open
Labels
component: sqs SQS integration related issue type: enhancement Smaller enhancement in existing integration
Milestone

Comments

@jeroenvandevelde
Copy link

Type: Feature

Is your feature request related to a problem? Please describe.
We want to be able to manage the max number of messages that are being polled from SQS so that we can protect external systems. Our application processes SQS messages which end up in HTTP calls to external systems. Those external systems have a maximum number of HTTP requests per second they can manage. So we would like a way to be certain we never poll more messages than that we are allowed to send out to those external systems.

Eg. External system A has a limit of 50 messages per second, then we would like to be able to tweak application B which consumes the SQS messages which result in HTTP calls to system A so that it at max polls 50 messages per second.

Describe the solution you'd like
We would like a way to configure the SQS Listener to be certain that they don't poll more than a configurable x messages per a configurable x seconds. I am not certain how this solution would best look like. As i still need to think and investigate how this library currently handles the polling mechanism internally and how we can best fit it in.

@tomazfernandes and @maciejwalkowiak already gave some ideas on how this can be implemented in this discussion.

Describe alternatives you've considered
We are currently using java-dynamic-sqs-listener for this purpose which we have configured in this manner.

Additional context
#479
JaidenAshmore/java-dynamic-sqs-listener#372 (comment)

@maciejwalkowiak maciejwalkowiak added the component: sqs SQS integration related issue label Aug 31, 2022
@maciejwalkowiak maciejwalkowiak added this to the 3.x milestone Aug 31, 2022
@tomazfernandes tomazfernandes changed the title SQS: Possibility to manage the max number of messages that are being polled SQS: Possibility to manage back pressure based on Rate Limiter Sep 5, 2022
@tomazfernandes tomazfernandes added the type: enhancement Smaller enhancement in existing integration label Jan 5, 2024
@sureshkmit
Copy link

Thanks for the ask and the wonderful library. We are having a similar use case. Waiting for this to be implemented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: sqs SQS integration related issue type: enhancement Smaller enhancement in existing integration
Projects
None yet
Development

No branches or pull requests

4 participants