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

Azure storage account queue scaler should allow users to select peek or approximate method #3555

Closed
wallflower762 opened this issue Aug 15, 2022 · 6 comments
Labels
feature-request All issues for new features that have not been committed to needs-discussion stale-bot-ignore All issues that should not be automatically closed by our stale bot

Comments

@wallflower762
Copy link

Proposal

Azure storage account queue scaler supports users defining the "peek" or "approximate" methods for evaluating the queue length.

Use-Case

Using Azure storage account queues to trigger a mix of short and longer running jobs using the Azure Functions runtime.

Anything else?

I have encountered a problem where KEDA ignores invisible messages (messages currently being processed) when evaluating the queue length for an Azure storage account queue. This gives a few outcomes:

  • Fewer pods are scheduled than should be as currently in progress messages are not considered
  • KEDA scales in pods more aggressively than it should, resulting in in progress messages being interrupted (most commonly encountered with longer running jobs)

A few issues have been raised in the past:

Scaled jobs have been suggested instead for long running tasks, but this doesn't necessarily solve the issues of:

  • Excluding in progress messages from the queue count impacts short running jobs as well, it's just more noticeable on longer running jobs
  • Users using the Azure Functions runtime to manage trigger lifecycle and per node scaling. To the best of my knowledge this runtime does not offer "execute one message" processing as required for scaled jobs

Based on the discussion in Issue 2385, it would be good if a user has the option to select the peek method, or approximate method.

As noted on Issue 2385, when using Azure functions on an App Service Plan, you can scale based on storage queue length. The implementation Azure has used for this is approximate message count, and does not offer any other method of scaling based on queue length.

A screenshot from the app service plan scale rules GUI:
184562934-543e0621-dbf4-4e6b-afd6-9a44a17f0831

@wallflower762 wallflower762 added feature-request All issues for new features that have not been committed to needs-discussion labels Aug 15, 2022
@kranthikumar-kvs-by
Copy link

Can't this issue be resolved by using the accurate strategy for sclaed job configuration?
#1227

@wallflower762
Copy link
Author

wallflower762 commented Sep 5, 2022

I believe that feature is for jobs rather than deployments. Please correct me if I have misunderstood.

@stale
Copy link

stale bot commented Nov 7, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale All issues that are marked as stale due to inactivity label Nov 7, 2022
@wallflower762
Copy link
Author

Leaving a comment to prevent the issue from being closed as stale. This is still critical to use Azure storage queues effectively.

@stale stale bot removed the stale All issues that are marked as stale due to inactivity label Nov 7, 2022
@stale
Copy link

stale bot commented Jan 6, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale All issues that are marked as stale due to inactivity label Jan 6, 2023
@tomkerkhove tomkerkhove added stale-bot-ignore All issues that should not be automatically closed by our stale bot and removed stale All issues that are marked as stale due to inactivity labels Jan 6, 2023
@wallflower762
Copy link
Author

Issue has been resolved with the above PR!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request All issues for new features that have not been committed to needs-discussion stale-bot-ignore All issues that should not be automatically closed by our stale bot
Projects
Archived in project
Development

No branches or pull requests

3 participants