Hola,
Tengo una base de datos duplicada en dos servidores
1 publicador: pub1
y 2 suscriptores: sus1,sus2
Publicación Transaccional
Subscripciones con actualización inmediata con actualización en cola.
Existe una tabla de clientes ( entre otras) con su clave primaria. Desde
cualquiera de los tres servidores los usuarios podrán crear nuevos clientes.
Hasta ahora no ha habido problemas, la tengo en prueba, aún los usuarios
no han empezado a atacar, pero me están surgiendo dudas.
Cuando los usuarios empiecen a acceder a las b.d. distribuidas y creen
nuevos clientes y esté la conexion con el publicador rota, esos clientes se
almacenarán en la cola.
La duda es si se han creado dos clientes con el mismo
identificador=misma clave, al intentar colocarlo en el servidor pub1 (cuando
se restablezca la conección) no podrán, ya que habría una duplicación de
clave.
¿COMO PUEDO EVITAR esto? Se me ocurre que añadiendo al identificador un
caracter para identificar la "localización o sevidor" de forma que no habría
dos claves idénticas nunca en distintos servidores / Otra idea es crear
rangos de numeros para las claves según el servidor, con la limitaciónes que
implica.
¿PERO CUAL SERÍA LA SOLUCIÓN IDEAL para este caso en que desde varios
servidores se puedan crear nuevos clientes y que se pueda dar el caso en que
la conexión no esté siempre establecida, y no queremos perder ninguno de los
nuevos clientes?
Gracias,
Maria
Leer las respuestas