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

[broker] Limit the number of producers/consumers that can connect per topic for each IP address #10188

Merged
merged 4 commits into from
Apr 23, 2021

Conversation

massakam
Copy link
Contributor

Motivation

Occasionally, a client application developer makes an implementation mistake and increases the number of producers or consumers infinitely. If this happens, there is concern that all file descriptors on the broker server will be exhausted.

Brokers already have settings such as maxProducersPerTopic and maxConsumersPerTopic, which allow us to specify a maximum number of clients that can connect per topic. However, if one topic is used by multiple tenants, there is an issue that if one tenant accidentally increases the number of connected clients too much, other tenants will not be able to add new clients.

Modifications

Enable users to limit the number of producers or consumers which can connect to each topic with the same IP address.

@massakam massakam added type/enhancement The enhancements for the existing features or docs. e.g. reduce memory usage of the delayed messages area/broker labels Apr 12, 2021
@massakam massakam added this to the 2.8.0 milestone Apr 12, 2021
@massakam massakam self-assigned this Apr 12, 2021
@315157973
Copy link
Contributor

We have recently encountered a similar problem. We need a maximum number of connections based on IP.

@massakam
Copy link
Contributor Author

@315157973 Addressed your comments. PTAL.

@massakam massakam force-pushed the max-clients branch 2 times, most recently from 47dedc3 to cac8ab3 Compare April 15, 2021 02:08
@sijie
Copy link
Member

sijie commented Apr 20, 2021

@315157973 Can you review this PR again?

Copy link
Contributor

@315157973 315157973 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some comment.
@codelipenghui cc

@massakam
Copy link
Contributor Author

@315157973 PTAL

@codelipenghui codelipenghui merged commit 8535dee into apache:master Apr 23, 2021
@massakam massakam deleted the max-clients branch April 23, 2021 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/broker type/enhancement The enhancements for the existing features or docs. e.g. reduce memory usage of the delayed messages
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants