Tomcat怎么进行性能调整?(4)

2014-09-18 06:30:02 阅读( 10 )

2176人 收藏本页

标签:Java面试题

3.加速JSP编译速度

当第一次访问一个JSP文件时,它会被转换为Java serverlet源码,接着被编译成Java字节码。你可以控制使用哪个编译器,默认情况下,Tomcat使用使用命令行javac进行使用的编译器。也可以使用更快的编译器,但是这里我们将介绍如何优化它们。

另外一种方法是不要把所有的实现都使用JSP页面,而是使用一些不同的java模板引擎变量。显然这是一个跨越很大的决定,但是事实证明至少这种方法是只得研究的。如果你想了解更多有关在Tomcat可使用的模板语言,你可以参考Jason Hunter和William Crawford合著的《Java Servlet Programming 》一书(O’Reilly公司出版)。

在Tomcat 4.0中可以使用流行而且免费的Jikes编译器。Jikes编译器的速度要由于Sun的Java编译器。首先要安装Jikes(可访问 http://oss.software.ibm.com/pub/jikes 获得更多的信息),接着需要在环境变量中设置JIKESPATH包含系统运行时所需的JAR文件。装好Jikes以后还需要设置让JSP编译 servlet使用Jikes,需要修改web.xml文件中jspCompilerPlugin的值:


jsp

org.apache.jasper.servlet.JspServlet


logVerbosityLevel
WARNING


jspCompilerPlugin

org.apache.jasper.compiler.JikesJavaCompiler




org.apache.catalina.jsp_classpath
–>
classpath

/usr/local/jdk1.3.1-linux/jre/lib/rt.jar:
/usr/local/lib/java/servletapi/servlet.ja
r

3


在Tomcat 4.1(或更高版本),JSP的编译由包含在Tomcat里面的Ant程序控制器直接执行。这听起来有一点点奇怪,但这正是Ant有意为之的一部分,有一个API文档指导开发者在没有启动一个新的JVM的情况下,使用Ant。这是使用Ant进行Java开发的一大优势。另外,这也意味着你现在能够在Ant 中使用任何javac支持的编译方式,这里有一个关于Apache Ant使用手册的javac page列表。使用起来是容易的,因为你只需要在元素中定义一个名字叫“compiler”,并且在value中有一个支持编译的编译器名字,示例如下:


jsp

org.apache.jasper.servlet.JspServlet


logVerbosityLevel
WARNING


compiler
jikes

3


Ant可用的编译器

名称

别名

调用的编译器

classic

javac1.1, javac1.2

Standard JDK 1.1/1.2 compiler

modern

javac1.3, javac1.4

Standard JDK 1.3/1.4 compiler

jikes

The Jikes compiler
JVC

Microsoft

Microsoft command-line compiler from the Microsoft SDK for Java/Visual J++
KJC

The kopi compiler
GCJ

The gcj compiler (included as part of gcc)
SJ

Symantec

Symantec’s Java compiler

extJavac

Runs either the modern or classic compiler in a JVM of its own

由于JSP页面在第一次使用时已经被编译,那么你可能希望在更新新的jsp页面后马上对它进行编译。实际上,这个过程完全可以自动化,因为可以确认的是新的JSP页面在生产服务器和在测试服务器上的运行效果是一样的。

来自IT公司面试手册

下一篇:Tomcat怎么进行性能调整?(5)

上一篇:Tomcat怎么进行性能调整?(3)

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题