Контейнер сервлета (например, Tomcat) или NIO (например, Grizzly) Для приложений RESTful?
В чем преимущества и недостатки использования контейнеров сервлетов (например, Apache Tomcat
) в отличие от использования инфраструктур NIO (таких как Netty
и Grizzly
) для размещения сервиса JAX-RS RESTful?
Я собираюсь разработать приложение RESTful с использованием Java. Java имеет API JAX-RS (JSR 331 и JSR 339) для создания служб RESTful. Для него существует другая реализация, так как вы можете увидеть здесь. Все они реализуют API JAX-RS и поэтому должны быть легко (по крайней мере теоретически) переключаться между ними. Jersey
- эталонная реализация, и я выбрал ее сейчас.
Для части клиента я собираюсь использовать angularJS
+ bootstrap
(так что просто html/css/js и без jsp-страниц).
Только для записи я говорю, что использую PostgreSQL
как свою БД и EclipseLink
как свою JPA (ORM).
Здесь я думаю, что просто пропущу одну часть и что часть сервера (хост для службы JAX-RS). AFAIK Я могу либо использовать контейнер сервлетов (например, Apache Tomcat
), либо настроить сервер (с использованием фреймов кадров NIO, таких как Netty
и Grizzly
, или, возможно, NIO.2, который часть JDK 7) для этой цели.
Но я не знаю, какую пользу я должен использовать. Я думаю, что плюсы и минусы между этим решением помогают мне выбрать один.