MySQL 8.2 es lo que todos estábamos esperando para Kubernetes con Transparent Read/Write Splitting
Oracle ha anunciado recientemente la disponibilidad general de MySQL 8.2 , que incluye soporte para división de lectura/escritura (read/write splitting). Esta característica tan esperada se introdujo en la última versión de innovación (un equivalente a "release candidate"), que ayuda a optimizar el rendimiento y la escalabilidad de la base de datos.
Read-write splitting permite a las aplicaciones dirigir de forma transparente todo el tráfico de escritura a instancias de lectura-escritura (primarias/sources) y todo el tráfico de lectura a instancias de sólo lectura, dependiendo del tipo de instancia (InnoDB Cluster o Replica Cluster).
Frederic Descamps , administrador de la comunidad MySQL, explica:
"A gran escala, distribuimos las lecturas entre las réplicas, pero esto debe gestionarse de alguna manera en la aplicación: apuntando las escrituras a un lugar y las lecturas a otro lugar. Desde MySQL 8.2, MySQL Router ahora puede identificar las lecturas y escrituras, para luego enrutarlas a instancias primarias en el caso de un clúster InnoDB, o a una fuente de replicación asincrónica para las escrituras y a instancias secundarias o réplicas para las lecturas."
Puedes realizar tu mismo una simple PoC (proof of concept/prueba de concepto), utilizando mysql-operator:
Necesitarás desplegar los siguientes manifiestos:
kubectl apply -f "https://github.com/mysql/mysql-operator/blob/8.2.0-2.1.1/deploy/deploy-crds.yaml" # CRDs
kubectl apply -f "https://github.com/mysql/mysql-operator/blob/8.2.0-2.1.1/deploy/deploy-operator.yaml" # Operator
kubectl apply -f "https://github.com/mysql/mysql-operator/blob/8.2.0-2.1.1/samples/sample-secret.yaml" # Secret (recomendado editar)
kubectl apply -f "https://github.com/mysql/mysql-operator/blob/8.2.0-2.1.1/samples/sample-cluster.yaml" # Cluster 3 instancias 1 router
Basado en: https://www.infoq.com/news/2023/11/mysql-read-write-splitting/
Lectura complementaria: https://lefred.be/content/mysql-8-2-read-write-splitting-a-what-cost/
- Register with Email
- Login with LinkedIn
- Login with GitHub