Pregunta

Estoy intentando realizar algunos cálculos en un servidor. Para esto, el cliente ingresa inicialmente algunos datos que estoy capturando a través de Javascript. Ahora, tal vez haría una solicitud XMLHttpRequest a un servidor para enviar estos datos. Digamos que el cálculo toma una hora y el cliente abandona el sistema o lo apaga.

En la práctica, usaría quizás el sondeo del lado del cliente para determinar si el resultado está disponible. Pero, ¿hay alguna forma en que pueda implementar esto en forma de devolución de llamada, por ejemplo, la próxima vez que el cliente inicie sesión, me pondré en contacto con el Javascript del lado del cliente para pasar el resultado ... ¿Alguna sugerencia? Estoy pensando que todo esto requiere algún tipo de servidor web ubicado en el lado del cliente, pero me preguntaba si hay un mejor enfoque para hacer esto.

¿Fue útil?

Solución

Su mejor apuesta es simplemente realizar una encuesta cuando el usuario accede a la página web.

Lo que hice en algo similar fue cambiar gradualmente el tiempo de mi sondeo, así que comenzaría con varios segundos y luego aumentaría gradualmente el intervalo. En su caso, solo realice una encuesta después de 15 minutos, aumente cada 5 minutos cuando falle, y si el usuario cierra el navegador, puede comenzar la encuesta nuevamente.

Si desea una devolución de llamada, puede enviar un correo electrónico cuando haya terminado, para avisar al usuario.

Además, mientras realiza el procesamiento, intente dar alguna información sobre cuánto ha avanzado, cuánto tiempo puede durar, cualquier cosa que muestre que se está progresando, que el navegador no está bloqueado. Si no es nada más, muestre una hora con la duración del procesamiento, para que el usuario tenga una idea del progreso.

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