JSP和autoflush属性的最佳缓冲区大小

时间:2012-06-03 06:09:13

标签: jsp

有没有人建议为JSP设置最佳缓冲区大小?您可以使用以下页面指令在JSP的

中设置缓冲区大小
    <%@page buffer="xxxkb" autoFlush="true" %>

我的问题如下

  1. 我的理解是,您使用的缓冲区大小越小,客户端浏览器的性能就越好。我的假设是否正确?如果您不这么认为,请解释

  2. 最佳缓冲区大小应该是什么

  3. 有没有办法知道什么是默认缓冲区大小?

  4. 将autoflush设置为true应在达到最大大小后刷新缓冲区。如果您将其设置为false,则由您决定何时刷新

1 个答案:

答案 0 :(得分:15)

1.我的理解是,您使用的缓冲区大小越小,客户端浏览器的性能就越好。我的假设是否正确?如果您不这么认为,请解释

答案:是的,实际上并非在性能方面。但是在渲染内容方面。因为客户端将以更快的速度获取数据。缓冲区大小应大于或等于底层套接字缓冲区大小。否则,虽然在达到缓冲区大小时jsp会刷新,但它实际上不会写入客户端。

2.什么应该是最佳缓冲区大小

答案:正如我上面所说,它应该大于或等于底层套接字缓冲区大小。最佳尺寸还取决于您的应用。它应该是这样一个值,一旦达到缓冲区大小,响应将被提交,您不能再执行操作,这会导致添加响应头。

3.有没有办法知道什么是默认缓冲区大小?

回答:是的,使用JspWriter类。 JspWriter有一个getter getBufferSize(),它给你缓冲区大小。可以使用pageContext.getOut()获取JspWriter。

4.将autoflush设置为true应在达到最大大小后刷新缓冲区。如果您将其设置为false,则由您决定何时刷新

答案:如果设置为true,则会在达到最大缓冲区大小时刷新。如果设置为false,则会抛出异常