Контейнер сервлета (например, 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) для этой цели.

Но я не знаю, какую пользу я должен использовать. Я думаю, что плюсы и минусы между этим решением помогают мне выбрать один.

Ответы