Question

Je cherche des moyens d'améliorer une page Web qui initie une longue durée (> 2 minutes) tâche côté serveur. La version actuelle de la page, horloges pour toute la durée de la tâche, ce qui peut être très frustrant pour l'utilisateur.

J'ai déjà quelques idées sur la façon dont je pourrais améliorer l'expérience de l'utilisateur, mais ils ont tous impliquerait l'utilisation d'AJAX dans une certaine mesure. En raison des expériences précédentes que j'ai eu sur ce projet, je sais que tous les utilisateurs ont JavaScript activé ou disponibles.

En supposant que le processus côté serveur a déjà été optimisé, autant que possible, qu'est-ce que je pourrais faire pour améliorer l'expérience de tous les utilisateurs , autant que possible?

Était-ce utile?

La solution

Déplacer le processus serveur de longue durée hors bande.

Lorsque les utilisateurs initient la tâche de l'application peut écrire un message à une file d'attente d'une sorte; c'est généralement extrêmement rapide, afin que les utilisateurs obtenir le contrôle de retour rapidement. Une fois que le message est mis en attente, un autre processus spécialisé (un service, une tâche planifiée, une tâche cron, etc.), il ramasse et exécute la tâche appropriée à la première occasion.

Pour les utilisateurs avec JavaScript activé, vous pouvez configurer une minuterie pour vérifier l'état de la tâche via AJAX et les alertes lorsque la tâche est terminée.

Vous pouvez garder vos utilisateurs non informés javascript en affichant leurs en attente et les tâches accomplies dans une commune, endroit visible sur vos pages. Bien sûr, ils doivent continuer à naviguer à bénéficier de cela, vous devez donc aussi à préciser que les utilisateurs doivent parfois rafraîchir la page si elles attendent pour une tâche à la fin.

Autres conseils

  • créer la table de base de données (ou en mémoire objet)
  • tâche en cours d'exécution longue mettra à jour des progrès dans ce tableau (objet)
  • page Web affichera les données de ce tableau (ou objet). comment rafraîchir la page -. c'est votre choix
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top