Skip to content

Implement connectionPool into mysql scaler based on grpc connectionPool #6314

Closed
@bbrala

Description

@bbrala

Proposal

When using mysql scaler with a large amounts of namespaces, but against the same connection settings we run out of connections on the database. It seems the external scaler has a connectionPool implementation which could work for mysql also if we use the connection string as key.

Use-Case

When using a single connection string to scale multiple namespaces, for example; when you 'enable' en envoroment using a mysql database. It would be helpfull to poll using a single connection instead of ending up with 100 connections if you look at 100 namespaces/deployments.

Is this a feature you are interested in implementing yourself?

Maybe

Anything else?

Looks pretty simple to do, just not sure about the caveats of go and mysql connections. It looks like keda doesn't check parralel, but perhaps that could be an issue if multiple scalers try to use the same connection? Although this might be what the mutex is fixing in the keda grps scaler?

This also kinda assumed the queries are very very light. The ones we are using should be extremly easy (a simple where with 2 indexes, namespace and expires timestamp).

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature-requestAll issues for new features that have not been committed toneeds-discussionstaleAll issues that are marked as stale due to inactivity

    Type

    No type

    Projects

    • Status

      Ready To Ship

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions