Я работаю над веб-приложением Java, используя следующие структуры: Spring 3.1, JSF 2.1.26 и RichFaces 4.3.3. Все приложение работает в облаке Amazon под экземплярами medium.m1 (2 ядра 2,4 ГГц), с Tomcat 7.Максимальные одновременные пользователи для JSF2?
Мой клиент задал вопросы о характеристиках веб-приложения и о количестве которые могут обрабатываться на одном сервере. Он дал мне отчет, показывающий, что сервлет с о том же оборудовании, чем средний один Amazon может обслуживать около 1000 запросов в секунду (40KB страниц): https://www.webperformance.com/library/reports/windows_vs_linux_part1/
Я взял классическую страницу с верхнего/нижнего колонтитула, таблица данных, сортировка/поиск/фильтры/скроллер данных ... (80 КБ). Я удалил базу данных, фильтры (безопасность и т. Д., Кроме JSF) и сохранил 20 видимых строк. Без нагрузки эта страница занимает около 300 мс для загрузки.
Когда я выполнил тест нагрузки для своего приложения, я понимаю, что он может обслуживать только 20 запросов в секунду до того, как время запроса/ответа превысит 1000 мс. Можете ли вы сказать мне, если это нормальное поведение? Я могу понять, что страница JSF больше времени для сборки, чем простой сервлет, но не может обслуживать более 20 запросов, в то время как сервлет может обслуживать 1 000, является загадочным.
Есть ли стандартный стандарт для типичного приложения JSF? Если вы думаете, что у меня проблема оптимизации, можете ли вы сказать мне, где я могу искать?
Заранее благодарим за ваш ответ!
Вы установили 'javax.faces.FACELETS_REFRESH_PERIOD' в' -1' для производства? – BalusC
Действительно, javax.faces.FACELETS_REFRESH_PERIOD - -1. Я также установил com.sun.faces.validateXml и com.sun.faces.verifyObjects в false, а com.sun.faces.numberOfViewsInSession и com.sun.faces.numberOfLogicalViews - 1 – Asterius