La manera más eficiente de ...

26/01/2007 - 11:01 por JMT | Informe spam
Hola,

Tengo una aplicación con visual basic .net 2003 que utiliza una BB.DD en SQL
Server, ahora quiero implementar otro servidor de SQL Server con los mismos
datos que el primero por cuestiones de seguridad, ¿cual sería la manera más
eficiente de programar la aplicación para que cuando el servidor primero se
caiga por cualquier motivo, lo detecte y automáticamente se conecte al
segundo sin que ello afecte al rendimiento, rapidez?, por favor necesito
ideas.

Muchas gracias

Preguntas similare

Leer las respuestas

#1 Roberto M. Oliva
26/01/2007 - 11:25 | Informe spam
Hola!

Probablemente la manera mas eficiente y rapida de hacer lo que dices es
poner un cluster de servidores SQL Server.
Esto es hacer que dos ordenadores (o mas) funcionen como uno. Cuando se
caiga uno el otro seguira funcionando con lo que las aplicaciones no
notaran la diferencia.
Otra solucion bastante eficaz, menos costosa y mas facil de implementar
(aunque la aplicacion debe ser programada especialemente) es hacer una
replicacion de datos de un SQL Server a otro. Uno de los SQL Server es
el publicador de datos y otro es el subscriptor. Cuando el publicador
se cae, la aplicacion se conecta (habria que ver si de manera
automatica o no) al subsrciptor que tiene los datos actualizados.
Tienes mas informacion en el siguiente enlace:
http://www.monografias.com/trabajos...atos.shtml

A partir de aqui, hay muchas otras soluciones pero que son "menos
eficaces" y mas "dificiles" de programar, comparativamente como hacer
que la apliacion actualice a la vez dos bases de datos... etc.

Cada una de las soluciones tiene su coste y su complejidad.
Espero que te ayude

Saludos
Roberto M. Oliva


On 26 ene, 11:01, "JMT" wrote:
Hola,

Tengo una aplicación con visual basic .net 2003 que utiliza una BB.DD en SQL
Server, ahora quiero implementar otro servidor de SQL Server con los mismos
datos que el primero por cuestiones de seguridad, ¿cual sería la manera más
eficiente de programar la aplicación para que cuando el servidor primero se
caiga por cualquier motivo, lo detecte y automáticamente se conecte al
segundo sin que ello afecte al rendimiento, rapidez?, por favor necesito
ideas.

Muchas gracias
Respuesta Responder a este mensaje
#2 JMT
26/01/2007 - 11:42 | Informe spam
Gracias Roberto,

Exactamente había pensado en eso, en programar publicaciones y
subscripciones, pero efectivamente una vez que esté implementado es cuando
me surge la duda, ¿cómo detectará la aplicación cliente que el servidor
principal se ha caído?, había pensado que como trabajamos siempre en modo
desconectado y sólo se conecta para traer los datos o modificarlos, en hacer
una especie de ping o consulta que me indique si el servidor está activo y
si no lo está cambiar la conexión al otro servidor, pero esto me lleva a
pensar que no sería eficiente en cuanto a rapidez.

Saludos

"Roberto M. Oliva" escribió en el mensaje
news:
Hola!

Probablemente la manera mas eficiente y rapida de hacer lo que dices es
poner un cluster de servidores SQL Server.
Esto es hacer que dos ordenadores (o mas) funcionen como uno. Cuando se
caiga uno el otro seguira funcionando con lo que las aplicaciones no
notaran la diferencia.
Otra solucion bastante eficaz, menos costosa y mas facil de implementar
(aunque la aplicacion debe ser programada especialemente) es hacer una
replicacion de datos de un SQL Server a otro. Uno de los SQL Server es
el publicador de datos y otro es el subscriptor. Cuando el publicador
se cae, la aplicacion se conecta (habria que ver si de manera
automatica o no) al subsrciptor que tiene los datos actualizados.
Tienes mas informacion en el siguiente enlace:
http://www.monografias.com/trabajos...atos.shtml

A partir de aqui, hay muchas otras soluciones pero que son "menos
eficaces" y mas "dificiles" de programar, comparativamente como hacer
que la apliacion actualice a la vez dos bases de datos... etc.

Cada una de las soluciones tiene su coste y su complejidad.
Espero que te ayude

Saludos
Roberto M. Oliva


On 26 ene, 11:01, "JMT" wrote:
Hola,

Tengo una aplicación con visual basic .net 2003 que utiliza una BB.DD en
SQL
Server, ahora quiero implementar otro servidor de SQL Server con los
mismos
datos que el primero por cuestiones de seguridad, ¿cual sería la manera
más
eficiente de programar la aplicación para que cuando el servidor primero
se
caiga por cualquier motivo, lo detecte y automáticamente se conecte al
segundo sin que ello afecte al rendimiento, rapidez?, por favor necesito
ideas.

Muchas gracias
Respuesta Responder a este mensaje
#3 Roberto M. Oliva
26/01/2007 - 12:58 | Informe spam
Hola!

Bueno, todo dependera de con que frecuencia hagas el ping.
Evidentemente si el servidor principal se ha caido, en el peor de los
casos justo despues de lanzar el ultimo ping, la aplicacion tendra que
esperar: el tiempo que transcurra entre pings, timeout a la respuesta
desafortunada (normalmente si el servidor esta activo es inmediato,
pero si esta caido suele tener otro timeout de espera a respuesta), la
reconexion de la aplicacion al servidor de backup y, por fin, la
operacion a realizar.

Un saludo
Roberto M. Oliva


On 26 ene, 11:42, "JMT" wrote:
Gracias Roberto,

Exactamente había pensado en eso, en programar publicaciones y
subscripciones, pero efectivamente una vez que esté implementado es cuando
me surge la duda, ¿cómo detectará la aplicación cliente que el servidor
principal se ha caído?, había pensado que como trabajamos siempre en modo
desconectado y sólo se conecta para traer los datos o modificarlos, en hacer
una especie de ping o consulta que me indique si el servidor está activo y
si no lo está cambiar la conexión al otro servidor, pero esto me lleva a
pensar que no sería eficiente en cuanto a rapidez.

Saludos

"Roberto M. Oliva" escribió en el mensajenews:
Hola!

Probablemente la manera mas eficiente y rapida de hacer lo que dices es
poner un cluster de servidores SQL Server.
Esto es hacer que dos ordenadores (o mas) funcionen como uno. Cuando se
caiga uno el otro seguira funcionando con lo que las aplicaciones no
notaran la diferencia.
Otra solucion bastante eficaz, menos costosa y mas facil de implementar
(aunque la aplicacion debe ser programada especialemente) es hacer una
replicacion de datos de un SQL Server a otro. Uno de los SQL Server es
el publicador de datos y otro es el subscriptor. Cuando el publicador
se cae, la aplicacion se conecta (habria que ver si de manera
automatica o no) al subsrciptor que tiene los datos actualizados.
Tienes mas informacion en el siguiente enlace:http://www.monografias.com/trabajos...acion-d...

A partir de aqui, hay muchas otras soluciones pero que son "menos
eficaces" y mas "dificiles" de programar, comparativamente como hacer
que la apliacion actualice a la vez dos bases de datos... etc.

Cada una de las soluciones tiene su coste y su complejidad.
Espero que te ayude

Saludos
Roberto M. Oliva

On 26 ene, 11:01, "JMT" wrote:

> Hola,

> Tengo una aplicación con visual basic .net 2003 que utiliza una BB.DD en
> SQL
> Server, ahora quiero implementar otro servidor de SQL Server con los
> mismos
> datos que el primero por cuestiones de seguridad, ¿cual sería la manera
> más
> eficiente de programar la aplicación para que cuando el servidor primero
> se
> caiga por cualquier motivo, lo detecte y automáticamente se conecte al
> segundo sin que ello afecte al rendimiento, rapidez?, por favor necesito
> ideas.

> Muchas gracias
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida