IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

Augmentation de performance du serveur Tomcat


Sujet :

Tomcat et TomEE Java

  1. #1
    Membre habitué
    Femme Profil pro
    Architecte de système d'information
    Inscrit en
    Février 2012
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2012
    Messages : 404
    Points : 127
    Points
    127
    Par défaut Augmentation de performance du serveur Tomcat
    Bonsoir,

    Pour mon projet web j'utilise le serveur Tomcat 8.5.15. Je viens solliciter vos aides pour savoir s'il est possible d'augmenter la performance (thread etc) du mon serveur car il est très lente au niveau de lancement même pour l'exécution de certains fonctions (chargement de la page web etc.).

    Comment faire pour accélérer le fonctionnement de serveur Tomcat ?

    Merci pour vos aides,

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 124
    Points : 313
    Points
    313
    Par défaut
    Tu peux en dire plus sur l'environnement ?

    Où tourne ton serveur Tomcat ? Ta machine en local ou sur un serveur distant.
    Qu'est-ce que fait ton serveur ? Tu peux exposer ton code ? C'est pas forcement la conf, celle par défaut convient la plupart du temps si la sécurité n'est pas un soucis.

    Si ton serveur charge plein de choses au début, c'est normal qu'ils mettent du temps à démarrer, tu as des accès base de données ? Dans ta page Web si tu expose des images de plusieurs méga à travers ta connexion local sur Internet, tu risque d'avoir des lenteurs au niveau du chargement de ta page c'est sur, mais dans ce cas c'est du à la taille excessive de l'image et le fait que ton débit montant est limité à 100ko sur une connexion Adsl.

    ça peut être plein de chose, plus tu en diras mieux on pourra t'aider.

  3. #3
    Membre habitué
    Femme Profil pro
    Architecte de système d'information
    Inscrit en
    Février 2012
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2012
    Messages : 404
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Tu peux en dire plus sur l'environnement ?
    Je travail sur un projet Spring MVC, Spring boot, JAX-RS/JAX-WS/RMI, lanagage JAVA pour le développement de la plateForme, Des pages JSP et AngularJS (son chargement est lente) pour le front-End.

    Où tourne ton serveur Tomcat ?
    Actuellement le serveur Tomcat tourne sur une machine local et sera prochainement sur un serveur distant.

    Qu'est-ce que fait ton serveur ?
    Mon serveur faire tourner une application JAVA Web gestion de sécurité .

    Tu peux exposer ton code ?
    quel partie du code vous êtes besoin?

    tu as des accès base de données ?
    Mon application est basé sur l’accès au BD. J'utilise comme SGBD PhpMYADMIN sur un serveur WampServer.

    Dans ta page Web si tu expose des images de plusieurs méga
    Oui, J'ai des pages web contient des images et qui nécessite un temps de chargement.

    J'ai répondu à tous vos questions, existe t-il une solution pour augmenter la performance de serveur localement et distant?

    Merci,

  4. #4
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Citation Envoyé par syrine01 Voir le message
    et AngularJS (son chargement est lente) pour le front-End.
    Si la lenteur vient effectivement des resources angular ça peut être dû à plusieurs facteurs, par exemple:

    -le type de compilation utilisé, JIT ou AOT, AOT fournira de meilleures performances.
    -Tomcat n'est pas optimisé pour livrer des resources statiques, les fichiers angular compilés seraient mieux servis par un apache httpd||nginx en front.
    -L'application angular lente en elle même(trop de watchers, js mal optimisé...)
    -...

    Pour trouver une solution à un problème de performance il faut d'abord en trouver la cause, sans monitoring, pas de solution miracle.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2006
    Messages : 70
    Points : 218
    Points
    218
    Par défaut
    J'ai l'impression que l'on met ici la charrue avant les boeufs.


    Citation Envoyé par syrine01 Voir le message
    ...
    Je viens solliciter vos aides pour savoir s'il est possible d'augmenter la performance (thread etc) du mon serveur car il est très lente au niveau de lancement même pour l'exécution de certains fonctions (chargement de la page web etc.).
    ....

    Vous commencez par le postulat que les causes des lenteurs sont uniquement dues à Tomcat. En êtes vous bien sur ? Les problème de performances, ça ne s'estime pas: ça se mesure !


    Ce qu'il y a à mesurer, par ordre de facilité :

    - les temps de chargements des pages et des ressources ( JSP, Restfull, css, js, images....)

    Ça, n'importe quel navigateur peut vous sortir ces informations.
    Ca permettra se savoir si les lenteurs sont issues des ressources statiques (peu probable) ou des appels Java (JSP, Java-RX...) et surtout lesquelles !



    - Inspecter l'utilisation des ressources système.

    Particulièrement vrai si le blocage dure plusieurs secondes. Où les ressources sont elles utilisées ? Par le CPU ? Par l'utilisation du disque ? La quantité de RAM utilisée ?

    Sur linux, on peut utiliser htop, iotop...
    Sur windows, ctrl alt suppr > gestionnaire de tache > onglet performances > bouton "Moniteur de ressources"



    - les temps d'exécution des requêtes SQL.

    A priori, vous utilisez MySQL (et non phpMyAdmin qui n'est pas une base de données ! Mais juste un outil en php pour gérer des bases de données MySQL).
    Le plus simple est de configurer MySQL pour logger les requêtes "lentes".

    http://www.dbnewz.com/2010/05/28/tra...quetes-lentes/



    - Les temps d’exécution des vos traitement en Java

    Là, ça va demander de mesure "à la main" (avec System.nanoTime() ) des morceaux entiers de codes. C'est long et fastidieux. A ne faire qu'une fois que l'on est sur que les requêtes SQL sont optimisées.
    Un problème de performance à ce niveau se visualise par contre facilement: si au moins un coeur du CPU est à 100% sur un processus issu de Tomcat.



    De manière général, 90% des problèmes de performances se situent au niveau de la base de données. C'est par là qu'il faut commencer.
    Augmenter le nombre de thread ne change en général absolument rien. Tout simplement car le nombre de coeur étant de toute manière limité, répartir le travail sur plus de thread ne fera qu'augmenter le goulot d'étranglement. MySQL n'étant pas multithreadé, augmenter le nombre de thread sur Tomcat ne fera que mettre plus de tâches en attente.

  6. #6
    Membre habitué
    Femme Profil pro
    Architecte de système d'information
    Inscrit en
    Février 2012
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2012
    Messages : 404
    Points : 127
    Points
    127
    Par défaut
    Merci pour vos aides mes amis

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comparatif Performance Application Serveur Apache/Php contre Tomcat/Java
    Par w3blogfr dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 04/12/2009, 09h33
  2. Comment augmenté la memoire aloué au serveur tomcat 5.5.9
    Par othmanbenhalima dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 09/12/2006, 12h28
  3. jbuilder et serveur Tomcat
    Par imed ensi dans le forum JBuilder
    Réponses: 2
    Dernier message: 13/02/2005, 13h35
  4. [Struts][Tomcat5]Blocage du serveur tomcat ...
    Par gysmovoile dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 20/10/2004, 17h03
  5. [configuration] lancer plusieurs serveurs Tomcat
    Par polo54 dans le forum JBuilder
    Réponses: 4
    Dernier message: 13/06/2003, 15h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo