begin process at 2012 02 11 20:46:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Web 2.0

 > 

Ralentissement du site


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ralentissement du site

jeudi 3 avril 2008 à 16:29:51 | Ralentissement du site

Snoop

Bonjour,

Je travaille actuellement sur un site ASP.net (hebergé par IIS) développé sous Visual Studio 2005 et s'appuyant sur une base My SQL.

Je viens de réaliser une modification sur une dll qu'utilise le site. Et depuis j'ai de gros ralentissement sur le site. Etant novice sur cette technologie , je vous sollicite pour savoir si vous n'auriez pas une idée? Etant donné le peu de modif que j'ai réalisé sur la DLL je pense que c'est plutot une option de publication ou un truc du genre...

D'avance merci

ben
vendredi 4 avril 2008 à 22:48:39 | Re : Ralentissement du site

scottmat

Membre Club
bonjour,

quel été ton code à l'origine, quel est le nouveau code modifié ?

donne nous plus de détail, par ce que la ! lol on est pas devin :)

excepter cette dll, tu n'as pas de fait de modif' ailleurs ?
lundi 7 avril 2008 à 09:05:50 | Re : Ralentissement du site

Snoop

Hello !

Voici le code concerné :

J'ai en fait crée la fonction DeleguePar et modifier la Procedure InfoMailDestinataire. Les modifications apportées sont contenus entre DEBUT MODIF ET FIN MODIF (Trés originale hein ! )
Merci à vous ;)

*********

Protected

Function DeleguePar(ByVal psAgent AsString) AsString

Dim lsRqSql AsString

Dim loMySqlCmd As MySqlCommand

Dim loMySqlReader As MySqlDataReader

lsRqSql =

String.Format("SELECT NUM_DELEGATION FROM dwh.sto_delegations WHERE NUM_AGENT = '{0}'", psAgent)

Try

   loMySqlCmd =

New MySqlCommand(lsRqSql, goMysqlConn)

   loMySqlReader = loMySqlCmd.ExecuteReader()

   Catch ex As MySqlException

   ThrowNew WorkflowException("1.DeleguePar: Impossible d'éxécuter la requête Sql dans la base de donnée dwh")

EndTry

 

If (loMySqlReader.Read()) Then

   ' Numéro du Délégataire

   DeleguePar = loMySqlReader(

"NUM_DELEGATION") & ""

   Else

   ' Si le N+1 n'est pas absent alors on n'envoie pas de mail

   DeleguePar =

""

EndIf

loMySqlReader.Close()

EndFunction


***********************************

ProtectedSub InfoMailDestinataire(ByVal piEtape AsInteger, ByVal psSujet AsString, ByVal psMessage AsString)

Dim lsRqSql AsString

Dim loMySqlCmd As MySqlCommand

Dim loMySqlReader As MySqlDataReader

Dim loMail As MailMessage

Dim losmtp As SmtpClient

Dim lsNumDestinataire AsString

Dim lsTpEmetteur AsString

Dim lsTpDestinataire AsString

Dim lsSvEmetteur AsString

Dim lsSvDestinataire AsString

Dim csAgent AsString

Dim csAgentN1 AsString

Dim csDelegataire AsString

csAgent =

"agent"

csAgentN1 =

"agent n+1"

csDelegataire =

"delegataire"

' ----------------DEBUT MODIF---------------------------

'Sélectionne le type de l'emetteur et du destinataire

lsRqSql =

String.Format("SELECT TP_EMETTEUR, TP_DESTINATAIRE, SV_EMETTEUR, SV_DESTINATAIRE, REF_DOC FROM sto_event WHERE ID_ETAPE = {0} AND ORDRE = {1}", giEtape, giNumOrdre)

Try

      loMySqlCmd =

New MySqlCommand(lsRqSql, goMysqlConn)

      loMySqlReader = loMySqlCmd.ExecuteReader()

      Catch ex As MySqlException

      ThrowNew WorkflowException("1.InfoMailDestinataire : Impossible d'éxécuter la requête Sql")

EndTry

If (loMySqlReader.Read()) Then

      lsTpEmetteur = loMySqlReader(

"TP_EMETTEUR") & ""

      lsTpDestinataire = loMySqlReader(

"TP_DESTINATAIRE") & ""

      lsSvEmetteur = loMySqlReader(

"SV_EMETTEUR") & ""

      lsSvDestinataire = loMySqlReader(

"SV_DESTINATAIRE") & ""

      loMySqlReader.Close()

      ' Détermine le numéro du destinataire en fonction du Type

      SelectCase LCase(lsTpDestinataire)

      Case csAgent

            lsNumDestinataire = ProprietaireDuFlux()

      Case csAgentN1

            lsNumDestinataire = AgentN1(ProprietaireDuFlux())

      

Case csDelegataire

            'Vérifie si le N+1 est absent, si oui on récupère son numéro

            lsNumDestinataire = DeleguePar(AgentN1(ProprietaireDuFlux()))

 

      CaseElse

         lsNumDestinataire =

""

 

EndSelect

' -------------------FIN MODIF    ------------------------

 

If lsNumDestinataire <> ""Then

      'Création de l'instance d'une nouvelle classe MailMessage

      loMail =

New MailMessage()

      ' -------------------------------------------

      'Sélectionne l'E-mail du destinataire

      lsRqSql =

String.Format("SELECT NOM, PRENOM, MAIL FROM dwh.ref_ldap_agent WHERE NUM_AGENT = '{0}';", lsNumDestinataire)

      Try

         loMySqlCmd =

New MySqlCommand(lsRqSql, goMysqlConn)

         loMySqlReader = loMySqlCmd.ExecuteReader()

         Catch ex As MySqlException

         ThrowNew WorkflowException("2.InfoMailDestinataire : Impossible d'éxécuter la requête Sql")

      EndTry

      If (loMySqlReader.Read()) Then

         ' adresse du destinataire

         loMail.To.Add(

New MailAddress(loMySqlReader("MAIL") & "", loMySqlReader("PRENOM") & " " & loMySqlReader("NOM")       &       ""))

      Else

         ThrowNew WorkflowException(String.Format("3.InfoMailDestinataire : Impossible de récupèrer l'adresse mail de l'agent {0}",          lsNumDestinataire))

      EndIf

      loMySqlReader.Close()

      ' -------------------------------------------

      ' -------------------------------------------

      'Sélectionne l'E-mail de l'émetteur

      lsRqSql =

String.Format("SELECT NOM, PRENOM, MAIL FROM dwh.ref_ldap_agent WHERE NUM_AGENT = '{0}';",    gsAgentConnecter)

      Try

         loMySqlCmd =

New MySqlCommand(lsRqSql, goMysqlConn)

         loMySqlReader = loMySqlCmd.ExecuteReader()

         Catch ex As MySqlException

         ThrowNew WorkflowException("4.InfoMailDestinataire : Impossible d'éxécuter la requête Sql")

        EndTry

         If (loMySqlReader.Read()) Then

               ' adresse de l'expéditeur

               loMail.From =

New MailAddress(loMySqlReader("MAIL") & "", loMySqlReader("PRENOM") & " " & loMySqlReader("NOM") & "")

         Else

               ThrowNew WorkflowException(String.Format("5.InfoMailDestinataire : Impossible de récupèrer l'adresse mail de l'agent {0}", gsAgentConnecter))

         EndIf

         loMySqlReader.Close()

         ' -------------------------------------------

         loMail.Subject = fsReplaceParamMail(psSujet)

         loMail.Body =

"<p>" & fsReplaceParamMail(psMessage).Replace(Chr(10), "<br />") & "</p>"

         loMail.IsBodyHtml =

True

         loMail.BodyEncoding = System.Text.Encoding.GetEncoding(

"iso-8859-1")

 

         losmtp =

New System.Net.Mail.SmtpClient("localhost")

         losmtp.UseDefaultCredentials =

True

         Try

            losmtp.Send(loMail)

            Catch exMail As SmtpFailedRecipientsExceptio

            ThrowNew WorkflowException(String.Format("6.InfoMailDestinataire : Impossible d'envoyer le mail à l'adresse suivante : {0} &lt;{1}         &gt;", loMail.To(0).DisplayName, loMail.To(0).Address))

            Catch ex As SmtpException

            ThrowNew WorkflowException("7.InfoMailDestinataire : Impossible d'envoyer le mail, La connexion au serveur SMTP a échoué.")

         EndTry

      Else

            'Si lNumDestinataire alors il n'y a pas de Mail à envoyer

      EndIf

   Else

         ThrowNew WorkflowException(String.Format("9.InfoMailDestinataire : Impossible d'accéder à l'état N°{0} pour l'ordre N°{1}", giEtape - 1, giNumOrdre))

EndIf

loMail =

Nothing

losmtp =

Nothing

lsNumDestinataire =

Nothing

lsRqSql =

Nothing

loMySqlCmd =

Nothing

loMySqlReader =

Nothing

EndSub



ben
jeudi 17 avril 2008 à 17:07:04 | Re : Ralentissement du site

Snoop

Hello

Après plusieurs pistes de recherche voila ce que j'ai trouvé :

Au début j'ai pensé que c'était un response.redirect qui était trop long , car si je fais le redirect sur une url exterieure (google ;) le traitement est instantané.

J'ai donc cherché a savoir pourquoi le serveur mettait autant de temps a faire la redirection.

Lors du chargement de ma page default.aspx le l'utilisation CPU monte en fleche a 100 % (Et redescends a la normale une fois la page chargée! )!!! Et c'est mysql qui utilise toute la ressource.
C'est donc de la que vient le soucis.

Mais qu'est ce qui pourrait solliciter autant le processeur (1Go pourtant) ??? C'est la ou je bloque un peu, si vous avez des pistes ca m'aiderait pas mal....  En oubliant pas qu'avant que je modifie l'appli les traitements n'etait pas aussi long....

Merci d'avance, Sauvez-moi la vie !!

ben
jeudi 17 avril 2008 à 17:32:54 | Re : Ralentissement du site

scottmat

Membre Club
Ton code à l'air bon pourtant. quand je travail avec les base de données je préfére travailler avec procédure sotckée, mais bon je ne vois d'erreur. Bizarre.

A ta place j'excuterai ton code en procédure pas à pas afin de voir à quel ligne sa te bouffe toute la ressource de ton pc.


Cette discussion est classée dans : site, dll, ralentissement, etant


Répondre à ce message

Sujets en rapport avec ce message

Problème au déploiement d'un site avec une DLL [ par tanginthemiddle ] Bonjour,J'ai fait une petit DLL de test en VB6. Celle-ci renvoie simplement une chaîne de caractère.Mon site ASP.net  fais juste un appel à cette DLL ASP DLL [ par romaing ] bonjour. j'ai des pb avec la conversion d'asp en dll. Pour la petite histoire j'ai tout le site (asp)d'une entreprise à convertir en dll... donc mon p ASPexec.dll [ par darktaupe ] J'essai d'exécuter un programme a partir d'une page ASP en utilisant le code suivant :Set Executor = Server.CreateObject("ASPExec.Execute")Executor.Ap URGENT:Comment creer un objet qui implemente une classe d'une DLL??? [ par lululachance ] Je voudrais utiliser mes DLL dans mon code ASP.Comment implementer les objets qui font reference à la classe de ma DLL pour pouvoir l'utiliser dans to compteur de visites [ par choup ] voilà je cherche à integrer un compteur de visites sur mon site, mais voilà je n'ai jamais fait d'asp donc autant dire que je nage dans la choucroute Pb avec le Global.asa [ par Fransisco ] Bonjour,J'ai sur mon site un global.asa qui fonctionnait correctement et du jour au lendemain j'ai cette erreur des que je lance le site :error 'ASP 0 liens internet [ par tahbre ] Hello helloBon moi j'ai un problème de lien:J'ai près de 300 adresses que je télécharge surle site morningstar.frJ'ai aspiré une partie du site et j'a un forum de programmation [ par hm1ch ] Un nouveau site de programmation vient d'ouvrir ses portes aux particuliers expérimentés ou non au monde de la programmation. Sur ce site vous y trouv Je veux installer mon site sur internet [ par frankint ] Voilà tout ce que moi je sais - Dans mon site j'ai du html vbscript javascript et du asp- Jai une base de donnée accès - j'ai un dsn créer localment - Participation à un site. Recrutement [ par CrowEye ] Bonjour,voilà, avec plusieurs amis, j'ai créé un site ( tu m'étonnes ), puis le temps passant le site s'est tourné vers sa deuxième version. Maintenan


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,406 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales