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

GWT et Vaadin Java Discussion :

Gwt 2.0 + Hibernate + Gilead : très lent


Sujet :

GWT et Vaadin Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par défaut Gwt 2.0 + Hibernate + Gilead : très lent
    Bonjour,

    Je n'utilise pas spring. Uniquement Gwt 2.0 + Hibernate + Gilead (pour résoudre les problème entre hibernate et gwt). Je bosse sur Eclipse.

    Lorsque je lance mon programme en debug, j'effectue un simple listing de table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    29
    30
    31
    32
     
     
    public class _StructureServiceImpl extends PersistentRemoteService implements
    		StructureService {
     
    	private Logger LOG = Logger.getLogger(_StructureServiceImpl.class);
    	private HibernateUtil gileadHibernateUtil = new HibernateUtil();
     
    	  /**
               * Constructor
               */
    	  public _StructureServiceImpl() {
    		  	setBeanManager(MyHibernateUtil.getBeanManager());
    		  	LOG.debug("Initialisation du beanManager");
    	  }
     
     
     
    	public List<Structure> getAllStructure() {		
    		LOG.debug("Début de récuperation des données");
    		Session session = MyHibernateUtil.getSessionFactory().getCurrentSession();
    	    session.beginTransaction();
    	    Criteria crit = session.createCriteria(Structure.class);
     
    	    List<Structure> listeStruct = new ArrayList<Structure>(crit.list());
    	    session.getTransaction().commit();
     
     
    	    LOG.debug("Fin de récuperation des données");
    	    return listeStruct;
    	}
    }
    Grâce à mon log, je peux vérifier que l'accés à mes données se fait quasiment instantanément. Il n'y a que 60 entrées dans ma table Structure.

    Par contre, le temps que ces données remontent jusqu'à mon panel client prend presque 5s avec Gilead et 3s sans Gilead. Tout ça en mode développement sous eclipse.
    Lors d'un déploiement sous un tomcat local, la récupération de la liste prend moins de temps, mais ça reste très génant...

    Ma question est la suivante : pourquoi la remontée des donnée avec Gilead et plus généralement dans GWT via RPC est-elle aussi longue??? Y a-t-il un moyen d'améliorer ça??

    Merci

    Zinou

  2. #2
    Membre éclairé

    Inscrit en
    Août 2002
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2002
    Messages : 302
    Par défaut
    Bonjour,
    Je pense que ce qui est lent est non pas le transfert de données via le réseau mais plutot le listing même de la table. Pour que tu aies une idée des temps de chargement et temps d'affichage essaie d'utiliser firebug sous firefox qui te donnera des chiffres précis sur les temps d'éxécution des appels RPC.
    Peux t-on avoir le bout de code du listing de ta table ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par défaut
    Bonjour et merci de ta réponse,

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    29
    30
     
    Récupération en base de données :
     
    public class StructureServiceImpl extends PersistentRemoteService implements
    		StructureService {
     
    	private Logger LOG = Logger.getLogger(StructureServiceImpl.class);
     
    	  /**
               * Constructor
               */
    	  public StructureServiceImpl() {
    		  setBeanManager(MyHibernateUtil.getBeanManager());
    		  	LOG.debug("Initialisation du beanManager");
    	  }
     
    	public List<Structure> getAllStructure() {		
    		LOG.debug("Début de récuperation des données simple");
     
    		Session session = MyHibernateUtil.getSessionFactory().getCurrentSession();
    	    session.beginTransaction();
    	    Criteria crit = session.createCriteria(Structure.class);
    	    List<Structure> listeStructure = new ArrayList<Structure>(crit.list());
     
    	    session.getTransaction().commit();    
     
    	    LOG.debug("Fin de récuperation des structures");
    	    return listeStructure;
    	}
    }
    Rien de bien complexe... j'ai environ 60 entrées dans ma table... avec 20 champs environ.

    Pour firebug, je l'utilise notamment pour les style css... mais pour ce qui est de l'utiliser pour les temps de réponse RPC, je ne sais pas où ça se trouve...

    J'ai testé en installant l'appli Gwt sur mon tomcat local, cela va nettement plus vite qu'en hosted mode... mais j'ai un temps d'environ 1-2 sec pour le 1er affichage de ma liste.

    Merci en tout cas

Discussions similaires

  1. BDD sur réseau très très très lent...
    Par ericain dans le forum Access
    Réponses: 12
    Dernier message: 20/02/2015, 17h17
  2. [Helios] Installation d'Hibernate Tools très lente
    Par me123 dans le forum Eclipse
    Réponses: 7
    Dernier message: 25/09/2012, 12h41
  3. Ouverture et fermeture de base très lent...
    Par Tofdelille dans le forum Installation
    Réponses: 6
    Dernier message: 19/09/2006, 18h51
  4. [Lomboz] Editeur jsp très lent
    Par lr dans le forum Eclipse Java
    Réponses: 10
    Dernier message: 29/01/2005, 19h43
  5. SQL Server trés lent
    Par arwen dans le forum MS SQL Server
    Réponses: 18
    Dernier message: 07/11/2003, 14h45

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