36
следует понимать, такие ресурсы, которые не изменяются входе эксплуатации
приложения: изображения, файлы стилей, файлы шрифтов, скрипты JavaScript.
Задача сервера клиента снижение нагрузки на основной сервер бизнес-данных.
Хорошим решением с учетом закона ФЗ №44, будет легковесный веб-сервер
NGINX.
Nginx наиболее часто используется на высоконагруженных приложениях [18].
Сервер примечателен тем что в штатными функциями являются [6]:
обслуживание неизменяемых запросов, индексных файлов, автоматическое
создание списка файлов, кеш дескрипторов открытых файлов
акселерированное проксирование без кэширования, простое распределение
нагрузки и отказоустойчивость
поддержка кеширования при акселерированном проксировании и FastCGI
акселерированная поддержка FastCGI и memcached серверов, простое
распределение нагрузки и отказоустойчивость
модульность, фильтры, в том числе сжатие (gzip), byte-ranges (докачка),
chunked ответы, HTTP-аутентификация, SSI-фильтр
несколько подзапросов на одной странице, обрабатываемые в SSI-фильтре
через прокси или FastCGI, выполняются параллельно
поддержка SSL
поддержка PSGI, WSGI
Так приложение состоит из самостоятельных rest-модулей, то перегружать
аппаратные ресурсы серверами приложений, не имеет смысла, достаточно
простого веб-контейнера или библиотеки позволяющей запускать слушателей
http-запросов. Хорошим и самостоятельным контейнером можно считать
бесплатный Apache Tom Cat.
В качестве платформы разработки сервера бизнес-данных предполагается
использовать Spring Framework. Так как разрабатываемая система будет состоять
из множества тривиальных задач, Spring поможет сократить время на решение и
разработку таких задач [11].
Spring Framework – была опубликована Родом Джонсоном вместе с изданием
своей книги «Expert One-on-One Java EE Design and Development» в 2002 году.