Tecnología

Inicio

Técnicas de control de concurrencia

Técnicas de control de concurrencia


El control de concurrencia se ocupa de cuestiones relacionadas con permitir que varios usuarios al mismo tiempo el acceso a entidades compartidos, como una tabla de datos u otros objetos. En este caso, se requiere un método de control para gestionar las actualizaciones. El método universalmente aceptado era para serializar la ejecución de las actualizaciones. Pero no es aceptable en algunos contextos, como primer llegado, primer servido procesamiento. Existen varios métodos de control de concurrencia que se aplican en diferentes circunstancias.

Control de concurrencia pesimista

Este método implementa cerraduras que impide que los usuarios de alterar los datos de una manera que afecta a otros usuarios. Cuando un usuario realiza una acción en una entidad que aplica un bloqueo en la entidad, otros usuarios no pueden llevar a cabo acciones en esa entidad hasta que el propietario de la cerradura libera. El control pesimista se utiliza cuando existe una alta contención para datos.

Control de concurrencia optimista

Utilizando el método de control de concurrencia optimista, los usuarios no bloquean los datos cuando lo usan. Cuando un usuario actualiza los datos, el sistema comprueba la base de datos si otro usuario ha cambiado los datos después de leerlo. Tras la actualización de otro usuario, se genera un error. El usuario que recibe el error deshace la transacción y comienza de nuevo. Este método se utiliza cuando hay bajo la contención de los datos.

Dos técnicas de fase de bloqueo

El bloqueo es una operación que asegura un permiso de lectura o de escritura a una entidad. Por ejemplo, la cerradura (X). La entidad X está bloqueado por un usuario. Usando esta técnica, una transacción está bien formado si: que se bloquee una entidad antes de que lee o escribe a ella; que no debería cerrar una entidad cerrada y no debe intentar desbloquear una entidad libre.

Control de concurrencia basado en la marca de tiempo

Un número entero monótonamente creciente llamada marca de tiempo muestra la edad de una operación en una entidad. Un valor de marca de tiempo más grande representa una operación reciente. método basado en la marca de tiempo timestamp utiliza para controlar la ejecución de las transacciones concurrentes.