我正在研究可用于优化JBoss 5.1.0性能的选项。
我正在考虑的其中一个选项是在genStrAsCharArray
中将true
设置为<JBOSS_HOME>/server/<PROFILE>/deployers/jbossweb.deployer/web.xml
。这会影响从.JSPs生成.java代码。
评论将此标志描述为:
是否应将文本字符串生成为char数组,以便在某些情况下提高性能?
我对此有几个问题。
提前致谢
富
答案 0 :(得分:2)
使用此设置,所有String
值都声明为static char[]
,如下所示:
static char[] _char_array_1 = "someString".toCharArray();
并使用如下:
out.write(_char_array_1);
而不是按如下方式使用:
out.write("someString");
这有两个明显的好处:
char[]
的内存开销低于String
。toCharArray()
不再需要(隐式)调用每个out.write(string)
。听起来像微优化,但在访问量很大的网站上,这些小部分很重要。
这种设置不是JBoss AS特有的。它是Jasper特定的,Apache Tomcat的JSP编译器,也用于每个JBoss AS和Sun Glassfish。