Lenteur de l'applet Java

Signaler
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
-
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
-
Bonjour tout le monde,

Ceux qui ont suivi mes aventures rocambolesques concernant la création d'une applet Java, vont avoir le plaisir d'avoir un nouveau casse-tête ! =)

En effet, l'applet fonctionne sur notre serveur sans souci. Cependant, elle ralentit notre application de façon significative.

De mon côté, mon propre programme (le .jar) fait 60Ko à peine, et j'utilise une bibliothèque (iText pour ne pas la citer) qui fait 1,5Mo. Est-ce que cela peut provenir de la taille de ma bibliothèque ? Est-il possible d'optimiser la vitesse de chargement de l'applet, ou même son exécution ?

Je ne pense pas, mais je peux toujours poser la question : qui ne tente rien, ne tente rien ;) lol

Merci à tous de votre aide !


*************************
Here we go !

11 réponses

Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
Salut,

Si tu en as le droit (je connais pas la licence de iText) tu peux essayer de faire le ménage dans la librairie en ne gardant que ce que tu utilises. Sinon, il me semble que les jar sont mémorisés dans le cache des navigateurs, non?
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
1
Le souci est que la librairie est sous le format .jar, donc sous eclipse, on ne peut pas la modifier ... si je ne m'abuse ... =)

En tout cas, j'avais envisagé cette solution un court instant, mais je ne vois pas comment modifier cette librairie, et surtout, je ne connais pas non plus les conditions exactes vis-à-vis de la licence.

Merci de ton aide ! =)


*************************
Here we go !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
129
Salut,

elle ralentit notre application de façon significative


C'est-à-dire ? De quelle application parles-tu ? D'une application sur le serveur ou de l'applet elle-même ?

Qu'est-ce qui est ralentit ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
1
Bonjour Darksidious,

Nous avons une application internet (programmée via des pages .jsp en html) sur laquelle est notre applet. Cette dernière a pour but de créer des éditions au format PDF.

Depuis qu'on a mis en place celle-ci, l'application est plus lente. Ceci est sûrement dû au 1.5Mo que chaque utilisateur télécharge pour utiliser l'applet.

Cependant, je ne vois pas quoi faire (si cela est possible) pour ne pas avoir de ralentissement (charger l'applet en cache, réduire la bibliothèque iText, etc...)

Merci de votre aide en tout cas ;)


*************************
Here we go !
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
Personnellement, j'ai pensé au temps de téléchargement de la page, mais ce n'est peut-être pas de ça dont tu parlais?

PS : un jar c'est simplement un zip, tu peux retirer tous les .class dont tu n'auras pas besoin, les images...
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
129
Salut,

En quel sens ton application est plus lente : temps de chargement des pages (je présume ?) ou temps d'exécution du serveur pour traîter les requêtes ?

En théorie, les applets ne sont téléchargées qu'une seule fois, et sont mises en cache par le navigateur, donc ca ne devrait ralentir le temps de chargement de la page qu'à la première page.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
1
C'est bien le temps de chargement des pages.

Le souci est que nous avons potentiellement une quantité importante d'utilisateurs sur le serveur en même temps.

Pour faire court, nous utilisons une base de données peu connue (Reality) qui se rapproche grosso modo du mode de fonctionnement de Linux. Celle-ci a l'avantage de supporter un nombre considérable d'utilisateurs en même temps. Cela ne posait pas de souci sans l'applet. Avec l'applet, comme chaque utilisateur peut réaliser sa propre édition, il ralentit "un peu" le serveur en téléchargeant l'applet. Sauf que les petits ralentissements provoquent un ralentissement global assez conséquent ...

Sincèrement, je ne sais pas s'il y a une solution autre que celle qui consiste à rentrer dans le cercle vicieux de la consommation pure et simple. A savoir : acheter un nouveau serveur avec de plus grosses capacités ! =(

Ce qui m'embête, c'est que sans l'applet, le serveur n'était pas ralenti. Donc si faire une applet java de 1.5Mo, ça ralentit un serveur de façon aussi considérable, ça remet en question notre choix d'avoir fait cette applet, et donc 6 mois de travail =(


*************************
Here we go !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
129
Salut,

Tu as une autre solution possible (un peu consommeriste elle aussi mais qui pourrait régler votre problème) : acheter un second serveur qui se chargerais uniquement du chargement de l'applet : tu fais pointer les urls de tes jsp vers ce nouveau serveur, et ainsi seul le nouveau serveur se chargera de tenir la charge du téléchargement de l'applet et ton serveur principal lui gérerai toute la partie métier de ton application.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
1
J'en parle à mon chef, car je suppose que ce second serveur n'a pas besoin de ressources conséquentes ? Au pire, il sera lent quand les gens souhaiteront réaliser leur première édition ... Mais au moins, ça résoudrait peut-être le souci pour ceux qui sont sur le site, sans faire d'édition ! =)

Si vous avez d'autres idées, je suis preneur ... =) Merci en tous cas ...


*************************
Here we go !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
129
Salut,

Tout à fait : niveau cpu, mémoire vive, disque dur, tu peux prendre le minimum, par contre, une bonne bande passante (bien que 1,5 Mo c'est vraiment pas beaucoup).
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
11 mars 2014
1
Bonjour,

Me revoilà !

Alors, nous avons décidé de mettre en place la solution préconisée par DARKSIDIOUS : positionner l'applet sur un autre serveur.

Cependant, quand j'essaie d'y accéder, la console Java me renvoie le message d'erreur habituel :
charger : classe http://adresseduserveur.com/tprintj/TPrintJ.class introuvable.
java.lang.ClassNotFoundException: http:..adresseduserveur.com.tprintj.TPrintJ.class



L'applet ne doit-elle pas être à la racine des pages du serveur pour que cela fonctionne ?

Si vous avez une solution, je suis preneur ...

Bonne journée !


*************************
Here we go !