Léxico TI › Bases de datos › Bloqueo consultivo

Bloqueo consultivo

Bases de datos Svenska → Actualizado: 2026-08-12

Función de PostgreSQL: bloqueos definidos por la aplicación, sin vínculo con filas ni tablas. SELECT pg_advisory_lock(12345). La base de datos lleva la cuenta pero no hace nada con los datos —la semántica la pone la aplicación. Herramienta de coordinación para sistemas distribuidos.

Casos de uso: garantizar un único ejecutor para tareas cron (un pod toma el bloqueo consultivo y los demás fallan; si el pod muere, el bloqueo se libera solo), bloqueo de recursos a nivel de aplicación, elección de líder. Se distingue del bloqueo de fila: no está atado a datos concretos. Versión de dos claves: pg_advisory_lock(class_id, obj_id) para espacios de nombres. De ámbito de sesión (se libera al desconectar) o de ámbito de transacción. Competidores: SETNX de Redis, lease de etcd, nodos efímeros de ZooKeeper —todos el mismo patrón. Patrón clásico de aplicación distribuida: usar el PostgreSQL que ya tienes en lugar de desplegar Redis solo para bloquear.

← Volver al léxico