Précédent   Forum des professionnels en informatique > Systèmes > Windows > IIS
IIS Forum d'entraide serveur Web IIS (Internet Information Services)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/12/2011, 15h02   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 18
Points : 3
Points : 3
Par défaut aspnet_compiler, IIS 6.0 : aucun gain

Bnojour à tous !!

Voilà j'ai un site ASP.NET tournant sur ISS 6.0, et j'ai voulu essayer d'utiliser aspnet_compiler pour réduire le temps de chargement lors de la première requête, seulement cela n'a pas l'air de fonctionner. Mon site est le site par défaut et le seul site d'ailleurs présent dans IIS.

J'ai essayer :

aspnet_compiler -v IntranetTest -p E:\IntranetTest -c
aspnet_compiler -v IntranetTest -p E:\IntranetTest
aspnet_compiler -v IntranetTest

Lors de cette dernière tentative d'ailleurs, j'ai globalement ce message d'erreur : "erreur aspruntime, l'application IIS n'est pas valide".

Quand je modifie par exemple mon global.asax, que je le remplace sur le serveur, et ensuite que je tente une des options, mon temps de chargement à la première requête n'est pas réduit.

J'ai peut-être oublié quelque chose, merci de votre aide.
keogus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2011, 16h26   #2
Invité de passage
 
Inscription : janvier 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 18
Points : 3
Points : 3
Par défaut Résolu

Bon ben désolé pour ce post, je n'ai pas résolu mon problème directement, mais j'ai trouvé une autre solution. J’exécute un programme qui va simuler les requête HTTP sur chacun de mes répertoires de mon site (peut-être que de demander seulement le répertoire racine du site suffit je n'ai pas tester).

Pour ceux que ça intéresse voici le code (c'est une application console en vb.net, qui prend en paramètre le chemin physique de la racine du site):

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 Try
            Dim arrArgs() As String = Command.Split(",")
            Dim myHttpWebRequest As Net.HttpWebRequest = Nothing
            Dim myHttpWebResponse As Net.HttpWebResponse = Nothing
            Dim _racine As String = arrArgs(0)

            Console.WriteLine("Début de la pré-compilation du site http://" + My.Computer.Name)
            For Each _dir In IO.Directory.GetDirectories(_racine)
                Try
                    myHttpWebRequest = Net.WebRequest.Create("http://" + My.Computer.Name + _dir.Replace(_racine, "").Replace("\", "/"))
                    myHttpWebResponse = myHttpWebRequest.GetResponse()
                    Console.WriteLine("Compilation " + _dir)
                Catch ex As Exception
                End Try
            Next
            Console.WriteLine("Fin de la pré-compilation du site http://" + My.Computer.Name + _racine.Replace(_racine, ""))
        Catch ex As Exception
            Console.WriteLine(ex.Message)
            IO.File.AppendAllText("logErreurs.txt", Now.ToString + " - " + ex.Message + vbNewLine + vbNewLine)
        End Try
Ce programme est exécuter sur le serveur, je remplace le chemin physique du site par son équivalent HTTP, en récupérant le nom de la machine (aucun nom de domaine c'est un intranet local), ceci suppose que le site en question est le site par défaut de IIS.

Le Try est bourrin, il sert à éviter les erreurs du type 404, je cherche une solution plus propre. A adapter au besoin.
keogus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 20h11   #3
Invité de passage
 
Inscription : janvier 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 18
Points : 3
Points : 3
Je me permet de rouvrir le post, car ma solution ne me convient qu'à moitié au final, et j'aimerai donc bien des infos sur aspnet_compiler si quelqu'un a. Merci d'avance.
keogus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2011, 11h37   #4
Invité de passage
 
Inscription : janvier 2008
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 18
Points : 3
Points : 3
Je cherche toujours des infos concernant mon problème avec aspnet_compiler, mais pour ceux que ça interesse, j'ai développé une version plus propre de mon programme qui fonctionne sur IIS 6.0, je n'ai pas testé pour d'autres versions.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 Try
            Dim defaultWebSite As String = "IIS://localhost/W3SVC"
            Dim vRoot As DirectoryEntry = New DirectoryEntry(defaultWebSite)

            For Each elem As DirectoryEntry In vRoot.Children
                If Integer.TryParse(elem.Name, Nothing) Then
                    Dim website As DirectoryEntry = New DirectoryEntry(defaultWebSite + "/" + elem.Name + "/ROOT")
                    Dim path As String = website.Properties("Path")(0)

                    Dim myHttpWebRequest As Net.HttpWebRequest = Nothing
                    Dim myHttpWebResponse As Net.HttpWebResponse = Nothing

                    Console.WriteLine("Début de la pré-compilation du site http://localhost/")
                    For Each _dir In IO.Directory.GetDirectories(path)
                        Try
                            Console.WriteLine("Lancement de la requête : http://locahost" + _dir.Replace(path, "").Replace("\", "/"))
                            myHttpWebRequest = Net.WebRequest.Create("http://locahost" + _dir.Replace(path, "").Replace("\", "/"))
                            myHttpWebResponse = myHttpWebRequest.GetResponse()
                        Catch ex As Exception
                        End Try
                    Next
                    Console.WriteLine("Fin de la pré-compilation du site http://localhost/")
                End If
            Next
        Catch ex As Exception
            IO.File.AppendAllText("logErreurs.txt", Now.ToString + " - " + ex.Message + vbNewLine + vbNewLine)
            Console.WriteLine(ex.Message)
        End Try
Je récupère tous les sites présents dans IIS, je cherche leur chemin physique afin de voir tout les dossiers présents dans le site, et je lance une requête sur localhost sur chaque dossier du site web. Je n'ai pas su éviter le try pour chaque requête. Ce n'est pas parfait mais ça marche pas trop mal , si vous avez des remarques constructives je prends volontiers.
keogus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h51.


 
 
 
 
Partenaires

Hébergement Web