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

Limit the overall amount of connections in one configuration #3773

Open
balhar-jakub opened this issue Sep 17, 2024 · 0 comments
Open

Limit the overall amount of connections in one configuration #3773

balhar-jakub opened this issue Sep 17, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request Priority: Medium
Milestone

Comments

@balhar-jakub
Copy link
Member

As a System Programmer, I can limit the connections for all services across the API Mediation Layer for given time frame e.g. requests per minute.

Notes

  • This story reflects the limits only for a specific Gateway instance.
  • The implementation goes only in V3.

Acceptance Criteria:

  • There is no default limitation on connection to specific services.
  • There is a configuration that allows the limitation on connection documented in https://docs.zowe.org/stable/user-guide/api-mediation/configuration-routing and documented in example-zowe.yaml and schema
  • When the configuration has a value that is non zero positive integer, limit the amount of concurrent connection passed on to every specific service to the specified number.
    • When there is no space for further connection to the service, let the connection wait in queue
    • If there is new available space for further connection to the specific service, take the first in the queue
  • When the limit of connections is approached, log information that this happened with new code and Info as the log level
    • On the debug level, notify that the connection is waiting with info about what service it is waiting for.

Demonstration

  • Show 10 parallel connections to the same service with long-running operation
  • Change the configuration to 2 and show that only the first two connections are being processed while the rest waits in queue, Show the info message about the queue
  • For the third connection, show that the debug message appears.
@balhar-jakub balhar-jakub added enhancement New feature or request Priority: Medium labels Sep 17, 2024
@balhar-jakub balhar-jakub added this to the 3.1 milestone Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Priority: Medium
Projects
Status: In Progress
Development

No branches or pull requests

2 participants