Nous utilisons un outil de rapport de tiers. L'outil de rapport utilise active-x. Dans un premier temps, nous générons et exécutons une requête selon les filtres, puis un fichier de rapport est créé qui inculpe les données (résultat de la requête). Ensuite, le client télécharge le fichier de rapport. Mais l'opération écrite de dossier est un gros problème pour nous. Que pouvons-nous faire? Prendre des opérations écrites de fichiers dans une autre application et prendre cette application dans un autre pool d'applications peut être une solution? Avez-vous une suggestion? Et comment fonctionne le serveur web, s'exécute? Par exemple, 100 clients se connectent au serveur Web et essaient d'exécuter des rapports. Le serveur Web doit donc créer 100 fichiers pour ces clients. Donc, si les données d'un rapport sont très importantes et que d'autres attendent leur achèvement?problème de performance d'écriture de fichier de site Web
Répondre
Votre problème n'est pas très clair. Vous avez dit que l'écriture de fichier est un gros problème, qu'entendez-vous par là? Est-ce lent ou quoi?
Votre application est-elle conçue pour servir un client à la fois? Si non, pourquoi dites-vous que d'autres attendent son achèvement?
Je suppose que votre application peut servir plusieurs clients à la fois. Si la charge est élevée, l'écriture du fichier sera affectée car IO ralentira. Vous devez équilibrer l'application lorsque la charge est divisée entre les instances et que les E/S peuvent être améliorées. Bien sûr, les instances doivent être sur des machines différentes car le problème est d'ordre d'ES. Il pourrait y avoir d'autres problèmes aussi bien que la logique CPU intensive ainsi que la mémoire affamée. Vous devez profiler votre application pour trouver tous les problèmes.
Pour les rapports volumineux, vous pouvez placer les demandes dans une file d'attente de traitement et demander à vos clients d'attendre quelques minutes avant qu'ils soient prêts. La génération instantanée de rapports pour les grands ensembles de données met beaucoup de pression sur votre système, et il est difficile d'équilibrer la charge. Il se peut que votre site Web transmette des demandes à une file d'attente qui sera éventuellement traitée par des serveurs de génération de rapports distincts. Vous pouvez ajouter plus de ces serveurs pour traiter les éléments de la file d'attente, et ce traitement n'affectera pas les utilisateurs du site, ils devront simplement vivre avec des rapports qui ne sont pas instantanés.
Pensez également au traitement que vous pouvez faire avant de la main pour que tout le traitement ne soit pas «à la demande». S'ils ont les mêmes rapports tous les jours, autorisez-le à être planifié, afin que vos clients n'aient pas l'impression d'attendre trop longtemps pour les rapports.
Les E/S lourdes doivent être déchargées vers des serveurs qui ne traitent pas les requêtes Web client.
Merci. Nous utilisons l'équilibrage de charge. Il y a deux serveurs. Mais les deux traitent les requêtes web des clients. Nous créons donc un nouveau pool d'applications pour les rapports. Mais je ne sais pas exactement si cela peut résoudre le problème. Nous n'avons donc pas de serveurs supplémentaires seulement nous avons un nouveau pool d'applications. Pensez-vous que le web garden peut être une solution pour nous? Et il y a quelques paramètres ici: http://support.microsoft.com/?id=821268 Pensez-vous que ceux-ci peuvent nous aider? –
- 1. Problème de site Web Visual Studio 2008/
- 2. Problème de performance NFOP
- 3. Problème de performance de Weird Powershell
- 4. Y at-il un problème de performance lorsque l'authentification "Windows" est activée sur un site Web anonyme?
- 5. Problème de performance avec "nouvelle ReportDocument()"
- 6. Problème de performance SQL Server 2005
- 7. Transfert de site Web
- 8. Déploiement de site Web
- 9. Site Web de référence
- 10. iPhone "Erreur de site Web"
- 11. fichier de téléchargement de problème
- 12. fichier CSS dans le site Web de asp.net
- 13. problème de téléchargement de fichier
- 14. Performance de liaison WCF
- 15. Problème de performance avec Apache, PHP et Symfony ~
- 16. requête de site Web IIS
- 17. Exemple de site Web UML
- 18. outil de test de perfomance pour un site web
- 19. Références de l'installateur de site Web ASP.Net
- 20. Problème de création de site à l'aide de Microsoft Visual Web Developer Express 2008
- 21. Outils de débogage pour la performance de l'application web
- 22. problème de téléchargement de fichier
- 23. Site Web Visual Web Developer Nom de l'assembly
- 24. Les binaires de site Web dans le projet de site Web d'asp.net?
- 25. test de performance pour les services Web (outil de stress d'application Web de Microsoft?)
- 26. Fichier ASP.NET Problème de téléchargement
- 27. Cakephp, problèmes de performance étranges
- 28. outil de test de performance
- 29. Temps de performance Vb.exe
- 30. Problème de mise en évidence de texte bizarre sur le site Web
oui vous avez raison, ce n'est pas très clair. Nous avons créé des fichiers de rapport tels que report + userID. Donc, si l'utilisateur ouvre plus d'un navigateur et essaie de générer des rapports; la requête de trois navigateurs va essayer de générer des fichiers portant le même nom –
Mais les rapports sont-ils différents ou sont-ils identiques? Si différent, vous devriez utiliser une convention de nommage différente, probablement un horodatage également dans le nom. Si les rapports sont les mêmes et la génération prend beaucoup de temps, c'est un gaspillage que ça se duplique. Vous devriez mettre en place un mécanisme pour arrêter cela. Mais quel est votre problème actuel, mon explication ci-dessus n'est-elle pas utile? –