0% encontró este documento útil (0 votos)
68 vistas5 páginas

Transacciones Distribuidas en Sistemas Web

El documento habla sobre transacciones distribuidas. Explica las dos reglas de operación de los candados en transacciones, que cuando se aborta una transacción se deshacen sus cambios, y da ejemplos del uso de servicios web como agentes de viajes y Amazon. También describe problemas como escritura prematura y lecturas sucias, y características deseadas como acoplamiento débil en servicios web.

Cargado por

EDUARDO OCAÑA
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
68 vistas5 páginas

Transacciones Distribuidas en Sistemas Web

El documento habla sobre transacciones distribuidas. Explica las dos reglas de operación de los candados en transacciones, que cuando se aborta una transacción se deshacen sus cambios, y da ejemplos del uso de servicios web como agentes de viajes y Amazon. También describe problemas como escritura prematura y lecturas sucias, y características deseadas como acoplamiento débil en servicios web.

Cargado por

EDUARDO OCAÑA
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE INGENIERÍA INDUSTRIAL


CARRERA DE INGENIERÍA EN TELEINFORMÁTICA

CURSO:
9–1
PERIODO 2021-2022 CICLO II

MATERIA:
ARQUITECTURA CLIENTE SERVIDOR

TEMA:
TRANSACCIONES DISTRIBUIDAS

INTEGRANTES:
BAQUE BAJAÑA HUMBERTO DANIEL
BAQUE BAJAÑA IDANIA NOEMÍ
CIFUENTES TOMALÁ JIM JAVIER
JARRÍN SANTOS RONALD GEOVANNY
OBANDO HUAYAMAVE MARCELA YUSMEY
OCAÑA ROSERO EDUARDO JOSÉ
REINA VERA KAREN ALEJANDRA
RODRÍGUEZ CASTILLO KAREN BETZABE
SANTIANA BOZADA JEFFERSON GABRIEL

DOCENTE:
ING. ANGEL PLAZA VARGAS

GUAYAQUIL - ECUADOR
2022
Transacciones Distribuidas

1) Citar las dos reglas de operación de los candados en las transacciones.

Reglas en el bloqueo binario


 T debe emitir BLOQUEAR(X) antes de que se realice cualquier operación
LEER_ELEMENTO(X) o ESCRIBIR_ELEMENTO(X) en T
 T debe emitir DESBLOQUEAR(X) después de haber completado todas las operaciones
LEER_ELEMENTO(X) y ESCRIBIR_ELEMENTO(X) en T
 T no emitirá BLOQUEAR(X) si ya bloqueó X (posee su candado)
 T no emitirá DESBLOQUEAR(X) salvo si posee el bloqueo de X
o Sólo una transacción puede poseer el candado de X
o Dos transacciones no pueden tener acceso concurrente al mismo elemento.
Reglas en el bloqueo de modo múltiple
 T debe emitir BLOQUEAR_LECTURA(X) o BLOQUEAR_ESCRITURA(X) antes de que se
realice cualquier operación LEER_ELEMENTO(X) en T
 T debe emitir BLOQUEAR_ESCRITURA(X) antes de realizar cualquier
 operación ESCRIBIR_ELEMENTO(X) en T
 T debe emitir DESBLOQUEAR(X) una vez completadas todas las operaciones
LEER_ELEMENTO(X) y ESCRIBIR_ELEMENTO(X) de T
 T no emitirá BLOQUEAR_LECTURA(X) si ya posee un candado de lectura (compartido) o
de escritura (exclusivo) para X *puede permitir excepciones*
 T no emitirá BLOQUEAR_ESCRITURA(X) si ya posee un candado de lectura o de
escritura para el elemento X *esta regla puede permitir excepciones*
 T no emitirá DESBLOQUEAR(X) salvo si posee un candado de lectura (compartido) o de
escritura (exclusivo) para X

2) ¿Qué pasa con un dato cuando se aborta una transacción?

Cuando se aborta la transacción se recorre el log para deshacer los cambios. Después
de una caída temporal, se debe recorrer el log. Si una transacción no ha escrito su
registro de fin, se aborta. Si lo ha escrito, se hacen los cambios pendientes.

3) Citar algunos ejemplos del uso de los servicios web.

Un ejemplo es un agente de reservación de viajes. Para viajar, muchas personas


realizan la reservación de vuelos, hoteles y alquiler de coches en línea por medio de
diferentes sitios web. Si cada uno de estos sitios web es para proporcionar una interfaz
de servicios web estándar, entonces un “servicio de agente de viajes” podría utilizar sus
operaciones para proporcionar a un cliente viajero una combinación de estos servicios.
Otro ejemplo de servicio web sería Amazon. La organización cuenta con una red de
tiendas online y sistemas de entrega. Proporciona un servicio web que solicita los
precios de los productos vendidos en línea a través de [Link]. El front-end o capa
de presentación puede estar en .Net o Java, pero cualquier lenguaje de programación
interactúa con el servicio web a su manera. Tiene lugar en una plataforma común.

4) Desarrollar un ejemplo de escritura prematura para una concurrencia.

Dos transacciones A y B sobre una cuenta.


Saldo inicial 100 Bs. A pone balance en 105, B en 110, son secuencialmente
equivalentes. B ejecuta después de A.
Si B aborta y después A, coloca 100 en balance.
Si A aborta y después B, coloca 105 en balance.

5) Indicar la razón principal por la que los servicios web son soportados
por el TCP.

Los servicios web se pueden utilizar sobre cualquier protocolo, sin embargo, TCP es el
más común. Se utiliza con HTTP sobre TCP en el puerto de red 80, dado que las
organizaciones protegen sus redes mediante firewalls (que filtran y bloquean gran parte
del tráfico de Internet), cierran casi todos los puertos TCP salvo el 80, que es,
precisamente, el que usan los navegadores web. Los servicios Web usan este puerto
porque no son bloqueados.

6) Explicar el caso de una lectura sucia en una transacción.

El problema de lecturas sucias ocurre cuando una transacción exitosa lee datos que han
sido afectados por una transacción abortada. Una solución a este problema es retrasar
la decisión de declarar exitosa una transacción hasta que todas las transacciones
relacionadas sean exitosas.

7) ¿Por qué el "acoplamiento débil" es una característica deseada en los


servicios web?

Porque intercambian información entre sí mediante el uso de estándares y lenguajes de


comunicación Web universales, con el propósito de reducir el riesgo, para que un
servicio web tenga un efecto en cadena sobre otros servicios, logrando un interés en la
articulación flexible en los sistemas distribuidos, que se refiere a minimizar las
dependencias entre servicios, con el fin de tener una arquitectura subyacente flexible.
8) Describir un ejemplo de transacción anidada

BEGIN TRAN
-- Primer BEGIN TRAN y ahora @@TRANCOUNT = 1
BEGIN TRAN
-- Ahora @@TRANCOUNT = 2
COMMIT TRAN
-- Volvemos a @@TRANCOUNT = 1
-- Pero no se guarda nada ni se hacen efectivos los posibles cambios
COMMIT TRAN
-- Por fin @@TRANCOUNT = 0
-- Si hubiera cambios pendientes se llevan a la base de datos
-- Y volvemos a un estado normal con la transacción acabada

CREATE TABLE Tabla1 (Columna1 varchar(50))


GO

BEGIN TRAN
INSERT INTO Tabla1 VALUES ('Primer valor')
SAVE TRAN Punto1
INSERT INTO Tabla1 VALUES ('Segundo valor')
ROLLBACK TRAN Punto1
INSERT INTO Tabla1 VALUES ('Tercer valor')
COMMIT TRAN

SELECT * FROM Tabla1


Columna1
--------------------------------------------------
Primer valor
Tercer valor
(2 filas afectadas)

Un ROLLBACK a un SAVE TRAN no deshace la transacción en curso ni modifica


@@TRANCOUNT, simplemente cancela lo ocurrido desde el 'SAVE TRAN nombre' hasta
su 'ROLLBACK TRAN nombre'
9) Describir un ejemplo de transacción distribuida

Transacciones para SQL Managed Instance

Las transacciones distribuidas se admiten entre bases de datos dentro de varias


instancias. Cuando las transacciones cruzan los límites de las instancias administradas,
las instancias participantes deben estar en una relación de comunicación y seguridad
mutua. Esto se hace mediante la creación de un grupo de confianza del servidor,
operación que se puede realizar mediante Azure Portal, Azure PowerShell o la CLI de
Azure. Si las instancias no están en la misma red virtual, es necesario configurar el
emparejamiento de red virtual y las reglas de entrada y salida del grupo de seguridad
de red deben permitir los puertos 5024 y 11000-12000 en todas las redes virtuales que
participan.

10) ¿Cuál es la función de los candados en una transacción?

La función de los candados es la de sincronizar el acceso a los elementos de la base de


datos por parte de transacciones concurrentes.

También podría gustarte