我想知道JSP中包含一个大的静态html文件时服务器上是否有任何问题或负载。
服务器是否在启动时加载包含文件。我知道服务器在启动时只转换和编译一次jsp。每当用户点击它时,页面就会直接呈现为servlet。
我和我的经理就这个问题进行过辩论。能否请您提供一些相关信息。通过这样做我需要优点和缺点(服务器负载/客户端负载/任何相关的)。
答案 0 :(得分:1)
java将jsp内容转换为一个类,基本上就是这样:
包含以下内容的JSP文件:
<div>this is regular html</div>
<%
System.out.println("this is code");
%>
被翻译成:
out.println("<div>this is regular html</div>");
System.out.println("this is code");
其中out是响应输出流。
所以你的所有静态内容都会被转换成这样的响应输出函数调用,这在技术上可能比仅仅将一个大块文件发送回一个大块要慢一些。
当使用静态内容时,还可能在客户端进行缓存,这是在嵌入动态数据时无法做到的。您也可以从CDN网络提供服务,而不是直接从应用服务器提供服务。
最后,如果这是您的系统设置方式,您可以提供来自Web服务器的所有静态数据和来自应用服务器的动态数据,这可能会有所帮助。