JSP Performance à l'aide de jsp:include
Je commence à diviser un grand fichier JSP dans une certains petits pages JSP afin que je puisse le réutiliser dans d'autres zones du site.
Je peux prendre l'approche de partir comme un grand Monolithique fichier JSP qui prend params et ajuste son comportement en conséquence. L'autre approche que j'ai à faire est de briser les unes des autres pour qu'on l'appelle par jsp:include.
Qu'est-ce que le souci de performances dans la création de la requête appels qui sont expédiés à partir de l'intérieur du serveur? Est-il meilleure performance sage de le garder comme une page jsp?
- Je recommande à la recherche à taglibs/etc - débogage avec les jsp sont un royal PITA.
Vous devez vous connecter pour publier un commentaire.
La
jsp:include
est un moteur d'exécution de la directive à la différence de la<%@ include ... %>
directive qui arrive à un moment de la compilation, de la directive (temps de traduction, en fait). Un moment de la compilation d'inclure la directive est relativement inoffensifs, car les Jsp sont généralement précompilés pour la production, ou dans le pire des cas compilés pour chaque déploiement de l'application. Pour cette raison, il est préférable d'utiliser le temps de compilation de la directive pour les fichiers statiques, étant donné que les fichiers ne sont pas liés à changer lors de l'exécution.Le moteur d'exécution d'inclure la directive sur l'autre tête, si elles sont mal utilisées, peuvent entraîner une dégradation des performances, en particulier pour les fichiers statiques être inclus. C'est principalement parce que le conteneur JSP devra alors récupérer le contenu du fichier statique et de les inclure dans la réponse. Par conséquent, la réserve de l'utilisation de l'environnement d'exécution de la directive pour la vraiment utile scénarios où une autre servlet ou jsp réponse est à inclure dans la réponse, et pas seulement pour rendre le code à l'air bon.
Vous devriez être en utilisant:
Ce qui ajoute le contenu de la page.jsp au temps de traduction et il n'y a pas de frais généraux.
Votre approche ajoute du contenu au moment de l'exécution et ajoute beaucoup de frais généraux.
Statique vs Dynamique
include
La
include
directive, fait une copie de la page et la copie dans une page JSP (la "page") au cours de traduction. Ceci est connu comme statique comprennent (ou de traduire en temps notamment) et utilise la syntaxe suivante:La
jsp:include
action, de manière dynamique comprend de sortie à partir du page à l'intérieur de la sortie de la page, au cours de exécution. Ceci est connu comme une dynamique d'inclure (ou d'exécution comprennent) et utilise la syntaxe suivante:Facteurs De Performance
Statique comprend affecter la taille de la page; dynamique inclut affecter la charge de traitement. Statique comprend éviter la surcharge de la demande répartiteur d'une dynamique inclure faut, mais peut être problématique dans le cas où des fichiers volumineux sont impliqués.
Une dynamique comprennent l'augmentation de la charge de traitement, avec la nécessité de l'appel supplémentaire à la demande de l'expéditeur.
http://docs.oracle.com/cd/A97336_01/buslog.102/a83726/keydev1.htm#1015959
http://docs.oracle.com/cd/A97336_01/buslog.102/a83726/genlovw3.htm
Ne devrait pas créer un scénario à la charge de beaucoup de données à l'INTERFACE utilisateur à la fois, qui influent sur les performances quelle que soit la façon dont vous mettez en œuvre des jsp. Garder les choses simples. Comprendre , la quantité de données qu'un utilisateur probable à lire dans ce scénario spécifique. Garder l'Isu convivial ,propice aux affaires et de la techno et convivial.
Calculer tondre beaucoup statique/dynamique des contenus sont là et utilisation incluent, selon que c'est les contextes. L'utilisation de la pagination avec 10 - 50 dossiers si vous souhaitez afficher les enregistrements.Meilleure utilisation d'un cadre pour aborder les questions de base au lieu de l'aborder à partir de zéro.
si vous n'avez pas besoin d'utiliser de session dans tous les jsp s faire en tant que session faux
<%@ page session="false" %>
Pour inclure la directive, JSP Moteur ajoute le contenu de la page insérée à la phase de traduction, afin de ne pas avoir un impact sur les performances.
Pour comprendre l'action, JSP Moteur ajoute le contenu de la page insérée au moment de l'exécution, ce qui impose une charge supplémentaire.