[eside-ghost] duda de rendimiento en apache

Emet-Jon Velasco Montero evelasco en linkanet.net
Vie Oct 22 14:01:21 CEST 2004


Aupa David !

David Rodriguez Torrontegui wrote:
> Aupa,
> 
> Tengo una duda que se me plantea, se puede configurar un apache para que 
> sirva tanto páginas ¿¿¿php como jsp??? aumentaria mucho la carga en el 
> servidor?
	Mucho siento decirte que no, apache no tiene un modulo para jsp. Para 
servir páginas JSP necesitas un servidor de aplicaciones como el tomcat 
o weblogic o así. Yo uso Tomcat, y lo que si puedes hacer es integrar el 
tomcat con apache para que parezca que es apache quien te sirve las 
páginas JSP, me explico:

1º Instalar el paquete "libapache-mod-jk"
2º Configurar el conector que acabamos de instalar con el archivo 
"/etc/libapache-mod-jk/workers.properties"
--
# Define 1 real worker using ajp13
worker.list=worker1
# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300
--
3º añadir en el fichero "/etc/apache/modules.conf" las líneas
--
JkWorkersFile /etc/libapache-mod-jk/workers.properties
# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log 
next to access_log)
JkLogFile /var/log/httpd/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
# Send everything for context /examples to worker named worker1 (ajp13)
JkMount /* worker1
JkMount /intranet/* worker1
JkMount /gestion/* worker1
JkMount /manager/* worker1
--
Nota: Los parámetros JkMount del final corresponden a las webapps de 
tomcat que se quieren conectar.
4º Configurar el tomcat con el conector, entonces os pego el principio 
de mi archivo server.xml
--
<?xml version='1.0' encoding='utf-8'?>
<Server>
   <Listener 
className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
   <Listener 
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
   <Service name="Catalina">
     <Connector URIEncoding="utf-8" acceptCount="100" 
enableLookups="true" connectionTimeout="20000" 
disableUploadTimeout="true" port="8080" redirectPort="8443">   </Connector>
     <Connector port="8009" protocol="AJP/1.3" 
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" 
redirectPort="8443"> </Connector>
...
--
Lo importante es la última línea que he puesto con el conector AJP que 
conecta con apache por el puerto 8009.

Bueno, hay información mas detallada en la página:
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/quickhowto.html

La cuestión es que así vas a tener las páginas normales servidas por 
apache en /var/www/
que se accederán desde http://localhost/
y las páginas JSP que sirva el tomcat en el directorio webapps/ROOT/ 
también serán accesibles desde http://localhost/
sin tener que poner http://localhost:8080
por lo que parece que es apache el que te sirve las páginas JSP.

En fin, espero que le haya servodo a alguien esta pequeña chapa.

Salinux,
			Emet_"



Más información sobre la lista de distribución eside-ghost