Dynamic Stateful routing (inter µ-service affinity) in Kubernetes / Istio
SummaryHow to dynamically establish affinity between two micro services inside the OKE cluster.
I have a ReplicaSet of a generic Java micro service ("DB service"), which can interface with any JDBC database, based on meta data. When an upstream micro service invokes this DB micro service, it will allocate a JDBC connection pool. Lets say the database DBA has given me 50 connections to work with for a specific use case (some meta data deployment unit my system can 'execute').
I would like to have two DB replicas each create 25 connections (MAX / 2) in a local connection pool. Henceforth the upstream micro service should now route it's invocations to these two replicas only, which now contain these 2 connection pools, while bypassing the other X DB replicas which have not created any connections.