Pregunta

lo que la tecnología puedo utilizar para gestionar la conexión a Internet inestable en una aplicación cliente-servidor. sé principalmente PHP (+ Zend Framework), el aprendizaje de C # y ASP.NET MVC. oí WCF / MSMQ es algo que puede ayudar ... pero ¿cómo ... ¿hay algo de PHP (que estoy más familiarizado) puede hacer? pero también es bueno saber una alternativa .NET si su mejor

el fondo:

cliente *** *** s se conectarán al servidor db hacer CRUDs. pero si falla la conexión a Internet esto no será posible. Entonces, ¿cómo puedo solucionar esto?

Ahora la solución utilizada fue de localhost han db. al final del día, todos los clientes subir al servidor y descarga la mañana "consolidado" db del servidor. esto no es infalible como carga / descarga todavía puede fallar. y teniendo en cuenta las grandes AMTS de datos transferidos, en realidad, aumenta las posibilidades.

Actualizar : ¿hay un PHP / reemplazo de Zend Framework / MySQL para MSMQ / WCF

?
¿Fue útil?

Solución

WCF puede ayudar, porque es compatible con diversas tecnologías para la transferencia fiable de mensajes.

Una cosa que podría ayudarle es que los clientes hacen sus cambios de datos a nivel local, a continuación, cargar esos cambios en una cola de mensajes fiable. Usted no cargar todos los cambios en una sola transacción. Es posible cargar 10 a la vez, posiblemente, uno a la vez. Como los mensajes subidos se procesan en el servidor, el servidor escribirá los resultados de transacción a otra cola, única para cada cliente. Después de la subida (o tal vez al mismo tiempo), el cliente comprobar que la cola para ver cuál fue el resultado de cada carga. Si el resultado fue el éxito, entonces el cliente puede eliminar su base de datos local. Si el resultado fue un fracaso, entonces el cliente debe tratar de subir de nuevo.

Por supuesto, siempre se debe tener cuidado de que sus intentos de recuperación de errores no empeorar las cosas. Demasiado tráfico de reintento en un mal enlace muy bien puede causar más tráfico, lo que puede a su vez necesita de recuperación, etc.

Y, por supuesto, la mejor solución es avanzar hacia enlaces que son más fiables. No necesariamente más rápido, pero sólo más fiable.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top