Mon entreprise publie un site web qui a vu sa fréquentation augmentée de
manière considérable.
Nous utilisons :
Un serveur web :
a.. quadri processeur Xeon à 2 GHz et 1 Go de RAM
b.. Windows 2003 Server Standard Edition
c.. IIS 6.0
d.. ASP.NET
La publication du serveur web est assurée par un serveur ISA 2004.
a.. bi Xeon 3 GHz
b.. 2 Go de RAM
Les données du serveur sont stockées dans une BDD sur un autre serveur sous
SQL server 2000.
Aux heures de pointes d'utilisation du site, le site ralentit puis devient
inutilisable, nous sommes alors obligé de recycler le pool d'application du
site pour qu'il refonctionne. Comme cette manipulation est nécessaire de
plus en plus souvent, nous avons décidé d'opérer des changements physiques.
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas
très évoluée et aucune optimisation particulière n'a été effectuée. IIS peut
il être optimisé pour mieux tenir la charge?
Dans le cas où il faille intervenir physiquement sur notre architecture nous
avons pensé séparer nos flux. Nous sommes une administration et nous avons
des bornes internet dans nos locaux qui accèdent aussi au site et enfin le
site propose aussi des outils de gestion réservés aux administratifs. Nous
avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur :
a.. Internautes
b.. Bornes internet locales
c.. Agents administratifs
Mais il y a un inconvénient à cela, le site utilise un répertoire dans
lequel sont stockés les fichiers autres que asp et html, c'est à dire les
images etc. Ce répertoire doit être tenu à jours entre les différentes
versions du site.
Donc deux solutions :
a.. soit nous centralisons tous les fichiers du site html compris (sur un
serveur de fichier) et les serveurs web ont un répertoire virtuel pointant
sur le partage du serveur de fichier. Ce qui a pour avantage de regrouper
tous les fichiers à un seul endroit. Une modification serait alors
immédiatement impactée sur les trois sites (puisqu'ils publiraient le meme
répertoire). Mais l'inconvénient serait d'avoir un flux énorme entre les
serveurs web et le serveur de fichier. Est ce une solution envisageable?
a.. soit nous synchronisons les différentes instances du site. Dans ce cas
les flux sont réellement séparés mais la maintenance en est que plus
complexe.
On a essayé la solution 1 mais cela retourne erreur http 500 lorsque l'on
essai d'accéder au site.
Existe-il un moyen de diagnostiquer le problème? Puis qu'il peut venir soit
:
a.. Du serveur ISA qui ne tient plus la charge
b.. Du serveur web qui ne tient plus la charge
c.. Du serveur sql qui ne tient plus la charge
Y'a t il un moyen d'optimiser Windows ou IIS 6.0 pour qu'il tienne mieux la
charge?
L'une des 2 solutions est elle bonne? ou existe-t-il un 3ième solution?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe [MS]
Le plus simple n'est pas nécessairement de gonfler le serveur Web mais plutôt de mettre en place une ferme de serveur (utilisation par exemple de NLB (solution logicielle - intégré à l'OS) ou d'un ALTEON (solution matérielle) pour gérer l'équilibrage de charge entre les machines).
Pour la mise à jour, il est possible de gérer un environnement sur un serveur de référence et d'utiliser par exemple un bête ROBOCOPY (avec les bon paramètres permettant de ne mettre à jour que ce qui a été modifié).
La philosophie des produits Ms pour la montée en charge est plutôt de répartir sur n machines que de centraliser sur des gros serveurs. L'avantage c'est que rajouter un serveur additionnel coûte moins cher que de tout remplacer pour disposer d'une plus grosse machine.
En résumé : n x serveurs constituant la ferme Web + un serveur de données (éventuellement redondant avec un cluster pour géréer la tolérance de panne si nécessaire).
Phil.
"Davy HUBERT" wrote in message news:
Bonjour,
Mon entreprise publie un site web qui a vu sa fréquentation augmentée de manière considérable.
Nous utilisons :
Un serveur web :
a.. quadri processeur Xeon à 2 GHz et 1 Go de RAM b.. Windows 2003 Server Standard Edition c.. IIS 6.0 d.. ASP.NET La publication du serveur web est assurée par un serveur ISA 2004.
a.. bi Xeon 3 GHz b.. 2 Go de RAM Les données du serveur sont stockées dans une BDD sur un autre serveur
sous
SQL server 2000.
Aux heures de pointes d'utilisation du site, le site ralentit puis devient inutilisable, nous sommes alors obligé de recycler le pool d'application
du
site pour qu'il refonctionne. Comme cette manipulation est nécessaire de plus en plus souvent, nous avons décidé d'opérer des changements
physiques.
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas très évoluée et aucune optimisation particulière n'a été effectuée. IIS
peut
il être optimisé pour mieux tenir la charge?
Dans le cas où il faille intervenir physiquement sur notre architecture
nous
avons pensé séparer nos flux. Nous sommes une administration et nous avons des bornes internet dans nos locaux qui accèdent aussi au site et enfin le site propose aussi des outils de gestion réservés aux administratifs. Nous avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur
:
a.. Internautes b.. Bornes internet locales c.. Agents administratifs Mais il y a un inconvénient à cela, le site utilise un répertoire dans lequel sont stockés les fichiers autres que asp et html, c'est à dire les images etc. Ce répertoire doit être tenu à jours entre les différentes versions du site.
Donc deux solutions :
a.. soit nous centralisons tous les fichiers du site html compris (sur
un
serveur de fichier) et les serveurs web ont un répertoire virtuel
pointant
sur le partage du serveur de fichier. Ce qui a pour avantage de regrouper tous les fichiers à un seul endroit. Une modification serait alors immédiatement impactée sur les trois sites (puisqu'ils publiraient le meme répertoire). Mais l'inconvénient serait d'avoir un flux énorme entre les serveurs web et le serveur de fichier. Est ce une solution envisageable? a.. soit nous synchronisons les différentes instances du site. Dans ce
cas
les flux sont réellement séparés mais la maintenance en est que plus complexe. On a essayé la solution 1 mais cela retourne erreur http 500 lorsque l'on essai d'accéder au site.
Existe-il un moyen de diagnostiquer le problème? Puis qu'il peut venir
soit
:
a.. Du serveur ISA qui ne tient plus la charge b.. Du serveur web qui ne tient plus la charge c.. Du serveur sql qui ne tient plus la charge Y'a t il un moyen d'optimiser Windows ou IIS 6.0 pour qu'il tienne mieux
la
charge?
L'une des 2 solutions est elle bonne? ou existe-t-il un 3ième solution?
Voila par avance merci.
Le plus simple n'est pas nécessairement de gonfler le serveur Web mais
plutôt de mettre en place une ferme de serveur (utilisation par exemple de
NLB (solution logicielle - intégré à l'OS) ou d'un ALTEON (solution
matérielle) pour gérer l'équilibrage de charge entre les machines).
Pour la mise à jour, il est possible de gérer un environnement sur un
serveur de référence et d'utiliser par exemple un bête ROBOCOPY (avec les
bon paramètres permettant de ne mettre à jour que ce qui a été modifié).
La philosophie des produits Ms pour la montée en charge est plutôt de
répartir sur n machines que de centraliser sur des gros serveurs. L'avantage
c'est que rajouter un serveur additionnel coûte moins cher que de tout
remplacer pour disposer d'une plus grosse machine.
En résumé : n x serveurs constituant la ferme Web + un serveur de données
(éventuellement redondant avec un cluster pour géréer la tolérance de panne
si nécessaire).
Phil.
"Davy HUBERT" <davy.hubert@crous-montpellier.fr> wrote in message
news:OFmLoVRtEHA.3556@TK2MSFTNGP10.phx.gbl...
Bonjour,
Mon entreprise publie un site web qui a vu sa fréquentation augmentée de
manière considérable.
Nous utilisons :
Un serveur web :
a.. quadri processeur Xeon à 2 GHz et 1 Go de RAM
b.. Windows 2003 Server Standard Edition
c.. IIS 6.0
d.. ASP.NET
La publication du serveur web est assurée par un serveur ISA 2004.
a.. bi Xeon 3 GHz
b.. 2 Go de RAM
Les données du serveur sont stockées dans une BDD sur un autre serveur
sous
SQL server 2000.
Aux heures de pointes d'utilisation du site, le site ralentit puis devient
inutilisable, nous sommes alors obligé de recycler le pool d'application
du
site pour qu'il refonctionne. Comme cette manipulation est nécessaire de
plus en plus souvent, nous avons décidé d'opérer des changements
physiques.
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas
très évoluée et aucune optimisation particulière n'a été effectuée. IIS
peut
il être optimisé pour mieux tenir la charge?
Dans le cas où il faille intervenir physiquement sur notre architecture
nous
avons pensé séparer nos flux. Nous sommes une administration et nous avons
des bornes internet dans nos locaux qui accèdent aussi au site et enfin le
site propose aussi des outils de gestion réservés aux administratifs. Nous
avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur
:
a.. Internautes
b.. Bornes internet locales
c.. Agents administratifs
Mais il y a un inconvénient à cela, le site utilise un répertoire dans
lequel sont stockés les fichiers autres que asp et html, c'est à dire les
images etc. Ce répertoire doit être tenu à jours entre les différentes
versions du site.
Donc deux solutions :
a.. soit nous centralisons tous les fichiers du site html compris (sur
un
serveur de fichier) et les serveurs web ont un répertoire virtuel
pointant
sur le partage du serveur de fichier. Ce qui a pour avantage de regrouper
tous les fichiers à un seul endroit. Une modification serait alors
immédiatement impactée sur les trois sites (puisqu'ils publiraient le meme
répertoire). Mais l'inconvénient serait d'avoir un flux énorme entre les
serveurs web et le serveur de fichier. Est ce une solution envisageable?
a.. soit nous synchronisons les différentes instances du site. Dans ce
cas
les flux sont réellement séparés mais la maintenance en est que plus
complexe.
On a essayé la solution 1 mais cela retourne erreur http 500 lorsque l'on
essai d'accéder au site.
Existe-il un moyen de diagnostiquer le problème? Puis qu'il peut venir
soit
:
a.. Du serveur ISA qui ne tient plus la charge
b.. Du serveur web qui ne tient plus la charge
c.. Du serveur sql qui ne tient plus la charge
Y'a t il un moyen d'optimiser Windows ou IIS 6.0 pour qu'il tienne mieux
la
charge?
L'une des 2 solutions est elle bonne? ou existe-t-il un 3ième solution?
Le plus simple n'est pas nécessairement de gonfler le serveur Web mais plutôt de mettre en place une ferme de serveur (utilisation par exemple de NLB (solution logicielle - intégré à l'OS) ou d'un ALTEON (solution matérielle) pour gérer l'équilibrage de charge entre les machines).
Pour la mise à jour, il est possible de gérer un environnement sur un serveur de référence et d'utiliser par exemple un bête ROBOCOPY (avec les bon paramètres permettant de ne mettre à jour que ce qui a été modifié).
La philosophie des produits Ms pour la montée en charge est plutôt de répartir sur n machines que de centraliser sur des gros serveurs. L'avantage c'est que rajouter un serveur additionnel coûte moins cher que de tout remplacer pour disposer d'une plus grosse machine.
En résumé : n x serveurs constituant la ferme Web + un serveur de données (éventuellement redondant avec un cluster pour géréer la tolérance de panne si nécessaire).
Phil.
"Davy HUBERT" wrote in message news:
Bonjour,
Mon entreprise publie un site web qui a vu sa fréquentation augmentée de manière considérable.
Nous utilisons :
Un serveur web :
a.. quadri processeur Xeon à 2 GHz et 1 Go de RAM b.. Windows 2003 Server Standard Edition c.. IIS 6.0 d.. ASP.NET La publication du serveur web est assurée par un serveur ISA 2004.
a.. bi Xeon 3 GHz b.. 2 Go de RAM Les données du serveur sont stockées dans une BDD sur un autre serveur
sous
SQL server 2000.
Aux heures de pointes d'utilisation du site, le site ralentit puis devient inutilisable, nous sommes alors obligé de recycler le pool d'application
du
site pour qu'il refonctionne. Comme cette manipulation est nécessaire de plus en plus souvent, nous avons décidé d'opérer des changements
physiques.
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas très évoluée et aucune optimisation particulière n'a été effectuée. IIS
peut
il être optimisé pour mieux tenir la charge?
Dans le cas où il faille intervenir physiquement sur notre architecture
nous
avons pensé séparer nos flux. Nous sommes une administration et nous avons des bornes internet dans nos locaux qui accèdent aussi au site et enfin le site propose aussi des outils de gestion réservés aux administratifs. Nous avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur
:
a.. Internautes b.. Bornes internet locales c.. Agents administratifs Mais il y a un inconvénient à cela, le site utilise un répertoire dans lequel sont stockés les fichiers autres que asp et html, c'est à dire les images etc. Ce répertoire doit être tenu à jours entre les différentes versions du site.
Donc deux solutions :
a.. soit nous centralisons tous les fichiers du site html compris (sur
un
serveur de fichier) et les serveurs web ont un répertoire virtuel
pointant
sur le partage du serveur de fichier. Ce qui a pour avantage de regrouper tous les fichiers à un seul endroit. Une modification serait alors immédiatement impactée sur les trois sites (puisqu'ils publiraient le meme répertoire). Mais l'inconvénient serait d'avoir un flux énorme entre les serveurs web et le serveur de fichier. Est ce une solution envisageable? a.. soit nous synchronisons les différentes instances du site. Dans ce
cas
les flux sont réellement séparés mais la maintenance en est que plus complexe. On a essayé la solution 1 mais cela retourne erreur http 500 lorsque l'on essai d'accéder au site.
Existe-il un moyen de diagnostiquer le problème? Puis qu'il peut venir
soit
:
a.. Du serveur ISA qui ne tient plus la charge b.. Du serveur web qui ne tient plus la charge c.. Du serveur sql qui ne tient plus la charge Y'a t il un moyen d'optimiser Windows ou IIS 6.0 pour qu'il tienne mieux
la
charge?
L'une des 2 solutions est elle bonne? ou existe-t-il un 3ième solution?
Voila par avance merci.
Christophe Lauer [MS]
Bonjour,
Davy HUBERT wrote:
Mon entreprise publie un site web qui a vu sa fréquentation augmentée de manière considérable.
(...)
Aux heures de pointes d'utilisation du site, le site ralentit puis devient inutilisable, nous sommes alors obligé de recycler le pool d'application du site pour qu'il refonctionne. Comme cette manipulation est nécessaire de plus en plus souvent, nous avons décidé d'opérer des changements physiques.
Quelle est la technologie utilisée pour développer ce site : est-ce de l'ASP 3.0 "classique", ou bien de l'ASP.NET faisant appel à des composants ou bibliothèques externes en code natif non managé, ou bien une application ASP.NET "pûre" ?
Devoir recourrir à un recyclage de l'App Pool me semble indiquer un soucis sous-jacent important...
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas très évoluée et aucune optimisation particulière n'a été effectuée. IIS peut il être optimisé pour mieux tenir la charge?
Oui, effectivement, il existe de nombreux paramètre et possibilités de configurer IIS 6.0, surtout à partir du moment ou votre machine est multi-processeurs (WebGarden, ...)
Dans le cas où il faille intervenir physiquement sur notre architecture nous avons pensé séparer nos flux. Nous sommes une administration et nous avons des bornes internet dans nos locaux qui accèdent aussi au site et enfin le site propose aussi des outils de gestion réservés aux administratifs. Nous avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur :
Vous comprendrez qu'il nous est quasiment impossible de vous donner une réponse avec si peu d'éléments. Il faudrait envisager au mieux une mission d'audit de votre configuration et de conseil (De nombreux Partenaires Microsoft, ou bien même Microsoft Services peuvent traiter ce type de besoin). Le but étant - avant d'envisager une quelconque modification à l'architecture matérielle ou à la configuration - d'identifier avec certitude et précision la ou les cause(s) de ces dégradations de performances.
Par ailleurs, le site MSDN comporte de nombreux documents sur le sujet de l'optimisation des applications ASP.NET, et de IIS 6.0 sur Windows 2003. Je vous invite à vous reporter à cette littérature afin de faire les premières vérifications (voir la check-list suivante) puis à observer les Compteurs de Performance de vos différents serveurs afin de caractériser la cause de ces ralentissements.
-- Christophe Lauer Relations Techniques Editeurs de Logiciels Division Développeurs et Plateforme d'Entreprise - Microsoft France http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no rights.
Bonjour,
Davy HUBERT wrote:
Mon entreprise publie un site web qui a vu sa fréquentation augmentée
de manière considérable.
(...)
Aux heures de pointes d'utilisation du site, le site ralentit puis
devient inutilisable, nous sommes alors obligé de recycler le pool
d'application du site pour qu'il refonctionne. Comme cette
manipulation est nécessaire de plus en plus souvent, nous avons
décidé d'opérer des changements physiques.
Quelle est la technologie utilisée pour développer ce site : est-ce de l'ASP
3.0 "classique", ou bien de l'ASP.NET faisant appel à des composants ou
bibliothèques externes en code natif non managé, ou bien une application
ASP.NET "pûre" ?
Devoir recourrir à un recyclage de l'App Pool me semble indiquer un soucis
sous-jacent important...
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est
pas très évoluée et aucune optimisation particulière n'a été
effectuée. IIS peut il être optimisé pour mieux tenir la charge?
Oui, effectivement, il existe de nombreux paramètre et possibilités de
configurer IIS 6.0, surtout à partir du moment ou votre machine est
multi-processeurs (WebGarden, ...)
Dans le cas où il faille intervenir physiquement sur notre
architecture nous avons pensé séparer nos flux. Nous sommes une
administration et nous avons des bornes internet dans nos locaux qui
accèdent aussi au site et enfin le site propose aussi des outils de
gestion réservés aux administratifs. Nous avons donc pensé monter 3
serveurs chacun pour une catégorie d'utilisateur :
Vous comprendrez qu'il nous est quasiment impossible de vous donner une
réponse avec si peu d'éléments. Il faudrait envisager au mieux une mission
d'audit de votre configuration et de conseil (De nombreux Partenaires
Microsoft, ou bien même Microsoft Services peuvent traiter ce type de
besoin). Le but étant - avant d'envisager une quelconque modification à
l'architecture matérielle ou à la configuration - d'identifier avec
certitude et précision la ou les cause(s) de ces dégradations de
performances.
Par ailleurs, le site MSDN comporte de nombreux documents sur le sujet de
l'optimisation des applications ASP.NET, et de IIS 6.0 sur Windows 2003. Je
vous invite à vous reporter à cette littérature afin de faire les premières
vérifications (voir la check-list suivante) puis à observer les Compteurs de
Performance de vos différents serveurs afin de caractériser la cause de ces
ralentissements.
--
Christophe Lauer
Relations Techniques Editeurs de Logiciels
Division Développeurs et Plateforme d'Entreprise - Microsoft France
http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no
rights.
Mon entreprise publie un site web qui a vu sa fréquentation augmentée de manière considérable.
(...)
Aux heures de pointes d'utilisation du site, le site ralentit puis devient inutilisable, nous sommes alors obligé de recycler le pool d'application du site pour qu'il refonctionne. Comme cette manipulation est nécessaire de plus en plus souvent, nous avons décidé d'opérer des changements physiques.
Quelle est la technologie utilisée pour développer ce site : est-ce de l'ASP 3.0 "classique", ou bien de l'ASP.NET faisant appel à des composants ou bibliothèques externes en code natif non managé, ou bien une application ASP.NET "pûre" ?
Devoir recourrir à un recyclage de l'App Pool me semble indiquer un soucis sous-jacent important...
Toutefois, il faut savoir que la configuration réalisée sur IIS n'est pas très évoluée et aucune optimisation particulière n'a été effectuée. IIS peut il être optimisé pour mieux tenir la charge?
Oui, effectivement, il existe de nombreux paramètre et possibilités de configurer IIS 6.0, surtout à partir du moment ou votre machine est multi-processeurs (WebGarden, ...)
Dans le cas où il faille intervenir physiquement sur notre architecture nous avons pensé séparer nos flux. Nous sommes une administration et nous avons des bornes internet dans nos locaux qui accèdent aussi au site et enfin le site propose aussi des outils de gestion réservés aux administratifs. Nous avons donc pensé monter 3 serveurs chacun pour une catégorie d'utilisateur :
Vous comprendrez qu'il nous est quasiment impossible de vous donner une réponse avec si peu d'éléments. Il faudrait envisager au mieux une mission d'audit de votre configuration et de conseil (De nombreux Partenaires Microsoft, ou bien même Microsoft Services peuvent traiter ce type de besoin). Le but étant - avant d'envisager une quelconque modification à l'architecture matérielle ou à la configuration - d'identifier avec certitude et précision la ou les cause(s) de ces dégradations de performances.
Par ailleurs, le site MSDN comporte de nombreux documents sur le sujet de l'optimisation des applications ASP.NET, et de IIS 6.0 sur Windows 2003. Je vous invite à vous reporter à cette littérature afin de faire les premières vérifications (voir la check-list suivante) puis à observer les Compteurs de Performance de vos différents serveurs afin de caractériser la cause de ces ralentissements.
-- Christophe Lauer Relations Techniques Editeurs de Logiciels Division Développeurs et Plateforme d'Entreprise - Microsoft France http://www.microsoft.com/france/msdn/
This posting is provided "AS IS" with no warranties, and confers no rights.