Оптимальный размер буфера для свойства JSP и autoflush
У кого-нибудь есть рекомендации по настройке оптимального размера буфера для JSP? Вы можете использовать следующую директиву страницы, чтобы установить размер буфера в JSP
<%@page buffer="xxxkb" autoFlush="true" %>
Мои вопросы следующие
Насколько я понимаю, чем меньше размер буфера, который вы используете, тем выше производительность для клиентских браузеров. Правильно ли мое предположение? Если вы думаете иначе, пожалуйста, объясните
Какой должен быть оптимальный размер буфера
Есть ли способ узнать размер буфера по умолчанию?
Если для параметра autoflush задано значение true, буфер будет очищен после достижения максимального размера. Если вы установите значение false, решать вам, когда очищать
1 ответ
1. Я понимаю, что чем меньше размер буфера, который вы используете, тем выше производительность для клиентских браузеров. Правильно ли мое предположение? Если вы думаете иначе, пожалуйста, объясните
Ответ: Да, на самом деле не с точки зрения производительности. Но с точки зрения рендеринга контента. Потому что клиент будет получать данные с большей скоростью. Размер буфера должен быть больше или равен базовому размеру буфера сокета. В противном случае, хотя jsp сбрасывается при достижении размера буфера, он фактически не будет записан клиенту.
2. Какой должен быть оптимальный размер буфера
Ответ: Как я уже сказал выше, он должен быть больше или равен размеру основного буфера сокета. Оптимальный размер также зависит от вашего приложения. Это должно быть такое значение, что после достижения размера буфера ответ будет зафиксирован, и вы больше не сможете выполнять операции, которые приводят к добавлению заголовка ответа.
3. Есть ли способ узнать размер буфера по умолчанию?
Ответ: Да, используя класс JspWriter. JspWriter имеет геттер getBufferSize()
который дает вам размер буфера. JspWriter можно получить с помощью pageContext.getOut()
,
4.Установка autoflush в true должна очистить буфер после достижения максимального размера. Если вы установите значение false, решать вам, когда очищать
Ответ: Если установлено значение true, оно будет сбрасываться при достижении максимального размера буфера. Если установлено значение false, будет выдано исключение