Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Alguna idea?? (https://www.clubdelphi.com/foros/showthread.php?t=52460)

Libarra 22-01-2008 01:47:18

Alguna idea??
 
Que tal compañeros.. actualmente desarrollo una aplicacion con delphi 7 y MySQL y este es el panorama...

La idea es conectar 3 oficinas donde habra una Central y dos sucursales... las cuales conectare por medio de una VPN a traves de Internet (ese paso ya lo he superado), donde cada PC tendra su propio Mysql Server localmente, mi idea es que lo que se haga en cada Sucursal se vea reflejado en la Matriz pense en hacerlo por codigo en Delphi pero creo que la mejor opción es la Replicacion..

Entonces monte una Replica de Master a Slave como prueba que funciona bien.. pero mi pregunta surge despues, es posible que haya dos Master y un Solo Slave?
Que dentro del Slave tenga 2 BD y que cada master apunte a su respectiva BD?

Si existe algo mejor.. me encataria ponerlo a prueba..
Muchas Gracias de antemano por darse el tiempo de leer!

jachguate 22-01-2008 02:02:14

Si aún no has decidido la base de datos:
  • Oracle cuenta con la opción de replicación simétrica, donde la información fluye en todas las direcciones de manera fluida y bastante segura. Los métodos para resolver conflictos son bastante sofisticados, pero de darse requieren normalmente la intervención de un DBA.
  • Tengo entendido que SQL Server también cuenta con esta opción, aunque nunca la he usado
  • También hay soluciones de replicación simétrica para Firebird, aunque no tan buenas como la de oracle. Personalmente, he trabajado con una solución ad-hoc para replicar datos firebird entre muchas bases de datos (creeme, muchas) y el funcionamiento, aunque nunca fue perfecto, era aceptable, dado el costo.
  • Hay otras opciones donde no es necesario replicar la base de datos (por ejemplo, citrix), aunque estas requieren de un enlace vivo para funcionar.

Hasta luego.

;)

Libarra 22-01-2008 02:04:47

Gracias..
 
Cita:

Empezado por jachguate (Mensaje 259835)
Si aún no has decidido la base de datos:
  • Oracle cuenta con la opción de replicación simétrica, donde la información fluye en todas las direcciones de manera fluida y bastante segura. Los métodos para resolver conflictos son bastante sofisticados, pero de darse requieren normalmente la intervención de un DBA.
  • Tengo entendido que SQL Server también cuenta con esta opción, aunque nunca la he usado
  • También hay soluciones de replicación simétrica para Firebird, aunque no tan buenas como la de oracle. Personalmente, he trabajado con una solución ad-hoc para replicar datos firebird entre muchas bases de datos (creeme, muchas) y el funcionamiento, aunque nunca fue perfecto, era aceptable, dado el costo.
  • Hay otras opciones donde no es necesario replicar la base de datos (por ejemplo, citrix), aunque estas requieren de un enlace vivo para funcionar.
Hasta luego.

;)

Gracias por tu respuesta.. compañero.. pero de hecho si la BD ya la he decidido y usare MySQL la aplicacion ya la tengo avanzanda.. asi que no puedo cambiar de BD ejejje..

Gracias. .de cualquier manera..

AzidRain 22-01-2008 15:53:44

De hecho me parece que esta incorrecto tu diseño. Si tienes una matriz no es necesario tener otros servidores ni esclavos ni maestros. Basta con tener trabajando el servidor de la matriz y que las sucursales ahi almacenen sus datos. De esta forma los datos están disponibles para todos. Normalmente es el esquema que se maneja en casi todas las aplicaciones de sucursales, un servidor central y las sucursales conectándose.

Yo tengo una solución montada así y hasta ahora no he tenido problemas, bastante rápido y muy eficiente. Los datos inclusive puedes consultarlos via web de ser necesario.

juanelo 22-01-2008 16:35:30

Cita:

Empezado por AzidRain (Mensaje 259960)
De hecho me parece que esta incorrecto tu diseño. Si tienes una matriz no es necesario tener otros servidores ni esclavos ni maestros. Basta con tener trabajando el servidor de la matriz y que las sucursales ahi almacenen sus datos. De esta forma los datos están disponibles para todos. Normalmente es el esquema que se maneja en casi todas las aplicaciones de sucursales, un servidor central y las sucursales conectándose.

Yo tengo una solución montada así y hasta ahora no he tenido problemas, bastante rápido y muy eficiente. Los datos inclusive puedes consultarlos via web de ser necesario.

De hecho esta es una buena idea, pero como resuelves el que se vaya la conexion a internet?. Creo que la propuesta de LIbarra no es para nada mala, ya que cada sucursal puede trabajar de forma (hasta cierto punto) independiente de que haya no haya comunicacion con el server central.
Saludos

Libarra 22-01-2008 18:21:31

...
 
Cita:

Empezado por AzidRain (Mensaje 259960)
De hecho me parece que esta incorrecto tu diseño. Si tienes una matriz no es necesario tener otros servidores ni esclavos ni maestros. Basta con tener trabajando el servidor de la matriz y que las sucursales ahi almacenen sus datos. De esta forma los datos están disponibles para todos. Normalmente es el esquema que se maneja en casi todas las aplicaciones de sucursales, un servidor central y las sucursales conectándose.

Yo tengo una solución montada así y hasta ahora no he tenido problemas, bastante rápido y muy eficiente. Los datos inclusive puedes consultarlos via web de ser necesario.

Lo diseñe de esa manera porque quiero que puedan trabajar hasta cierto punto independiente ya que la conexion a Internet en las sucursales es proveida por un servicio satelital, el cual es confiable pero hasta cierto punto ya que el clima le afecta demasiado y donde se encuentran ubicadas las sucurslaes es una region donde llueve demasiado...asi que previendo eso es por eso que lo he diseñado.. asi.. jejee

Esstuve leyendo sobre Replicacion MASTER-MASTER y conectarle un Slave.. y ando analizando esa propuesta...

GRacias.. por leer!
Saludos!

sancarlos 22-01-2008 18:37:05

Yo lo haria asi
Partiendo de la que tenemos internet , pues coloco un servidor de base de datos en la oficina central, de alli hago mi aplicacion se conecten remotamente a el, con la ip, gracias a mysql, te recomiendo los componentes de dacmysql, si no los tienes escribeme a info@oliversoftcr.com.

Bueno gracias a esto, podemos tener la 3 oficinas conectadas a una sola base de datos.
y dejas de sufrir con VPN

Claro esta que la comunicacion dependera de los megas que tengas de internet , minimo 256/512, despues de alli tu sistema se vera muy bien.

Libarra 22-01-2008 19:10:04

...
 
Cita:

Empezado por sancarlos (Mensaje 260036)
Yo lo haria asi
Partiendo de la que tenemos internet , pues coloco un servidor de base de datos en la oficina central, de alli hago mi aplicacion se conecten remotamente a el, con la ip, gracias a mysql, te recomiendo los componentes de dacmysql, si no los tienes escribeme a info@oliversoftcr.com.

Bueno gracias a esto, podemos tener la 3 oficinas conectadas a una sola base de datos.
y dejas de sufrir con VPN

Claro esta que la comunicacion dependera de los megas que tengas de internet , minimo 256/512, despues de alli tu sistema se vera muy bien.

Gracias por tu comentario actualmento uno Zeoslib para la conexion con MySQL y me va muy bien pero no staria mal probar los componentes que mencionas. te mando un mail para que me los pases.. gracias!.. y sobre de tener un solo server no lo creo conveniente por lo que mencionaba hilos atras.. de que el internet se puede volver un poco inestable.. el acceso..

Gracias!

AzidRain 22-01-2008 19:44:50

De hecho los que usas (Zeos) son mejores que los dac, además de que son libres y los dac no. Son sencillos, fáciles y no dan problemas como seguramente ya comprobaste.

Ok, ahora si entiendo tu enfoque, pero entonces lo que quieres es un sistema redundante.

En ese caso lo que MySQL recomienda es usar un cluster de servidores, pero el detalle es que necesitas al menos 3 pero se recomiendan 5 y esa configuración es un poco más dificil de hacer. Aquí te dejo un artículo que enseña como hacer un cluster con solo 2 servidores.

En un cluster, para ilustrar un poco, tenemos servidores de administracion y servidores de almacenamiento, debe haber 1 de administración y al menos 1 de almacenamiento. Imagínate un RAID de discos duros, más o menos es la misma cosa, si desconectas, apagas o pierdes la conexión en algú nodo, los datos se toman de los nodos que si esten disponibles, en cuanto se vuelve a poner el servidor caído éste se actualiza con todos los datos.


La franja horaria es GMT +2. Ahora son las 11:25:08.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi