Je génère des rapports à la volée en utilisant l'excellent outil SpreadSheetGear. Au début, les choses allaient bien parce que les rapports étaient simples et faits en moins d'une seconde. Maintenant, je suis à des rapports plus complexes et ils prennent environ 30 secondes jusqu'à 1 minute. Ce n'est pas un problème, nous jetons juste une image d'activité et laissons l'utilisateur attendre, bien par nous.Tâche longue ASP.NET se bloque d'autres pages?
Le problème que j'ai trouvé est lorsque deux utilisateurs viennent sur le site.
- utilisateur 1 arrive sur le site
- utilisateur 1 exécute un rapport qui prend 30 secondes.
- L'utilisateur 2 arrive sur le site
- L'utilisateur 2 attend jusqu'à ce que l'utilisateur 1 ait terminé le rapport, puis la page se charge. Le rapport en cours d'exécution pour l'utilisateur 1 raccroche le site jusqu'à ce qu'il soit terminé.
Que se passe-t-il et comment puis-je résoudre ce problème?
On dirait que vos rapports sont traités par un seul thread. Il est difficile de dire pourquoi, vous devriez poster quelques détails de mise en œuvre. – Restuta
Le code de la page: http://pastebin.com/GSdT7cN6 La page derrière le code http://pastebin.com/m2FAdf1Z Il retourne effectivement le fichier xlsx dans la réponse qui est ce que nous voulons. –