kedacore / keda

KEDA is a Kubernetes-based Event Driven Autoscaling component. It provides event driven scale for any container running in Kubernetes
https://keda.sh
Apache License 2.0
8.29k stars 1.05k forks source link

Provide configuration option for counting invisible/visible messages in Azure Storage Queue scaler #4478

Open tomkerkhove opened 1 year ago

tomkerkhove commented 1 year ago

Proposal

I believe we should introduce a new configuration option that will influence this:

  metadata:
    queueName: orders
    queueLength: '5'
+   queueLengthStrategy: Default|VisibleOnly|InvisibleOnly
    activationQueueLength: '50'
    connectionFromEnv: STORAGE_CONNECTIONSTRING_ENV_NAME
    accountName: storage-account-name
    cloud: AzureUSGovernmentCloud

Use-Case

We've been going back and forward if Azure Storage Queue scaler should consider invisible during evaluation or not, but this is not ideal for everyone. Example https://github.com/kedacore/keda/issues/4432.

Is this a feature you are interested in implementing yourself?

No

Anything else?

No response

spewu commented 3 months ago

This would be perfect for us. For some specific queues, we leverage the visibility of messages in the queue, to postpone processing them. The current implementation means that KEDA will keep scaling up, because there are invisible messages in the queue, but the jobs it creates have nothing to do, since there are no visible messages in the queue.

So, being able to specify that for this particular trigger, we only want to consider the visible messages, would allow this to work for us without continuously creating useless jobs in the cluster.

dgancho commented 2 months ago

Hi @tomkerkhove et al, is there any known solution/workaround here or a path forward? The issue still persists and blocks from using Azure Container App Jobs as advertised.

tomkerkhove commented 2 months ago

The PR is open as you can see above your comment.

Azure Container App Jobs as advertised

Mind elaborating on this? =)