Объединение протобуферов Google с Джерси / JAX-RS
В настоящее время у меня есть веб-сервис RESTful с конечными точками, которые предоставляются через Джерси / JAX-RS:
@Path("/widgets")
public class WidgetResource {
@GET
List<Widget> getAllWidgets() {
// gets Widgets somehow
}
@POST
Widget save(Widget w) {
// Save widget and return it
}
}
Я использую Jackson для сериализации / десериализации моих POJO в JSON, и мой сервис отвечает и отправляет мои POJO какapplication/json
.
Сейчас я надеюсь использовать буферы протокола Google (или эквивалентную технологию), чтобы помочь сжать / оптимизировать связь между клиентом и сервисом, поскольку JSON / text довольно громоздкий / расточительный.
В действительности у меня есть большой бэкэнд, который состоит из архитектуры "микросервиса"; десятки сервисов REST, взаимодействующих друг с другом; Вот почему я ищу для оптимизации сообщений, отправляемых назад и вперед между всеми ними.
Поэтому я спрашиваю: возможно ли, чтобы Jersey / JAX-RS обслуживал мои конечные точки обслуживания, но чтобы избавиться от содержимого Jackson / JSON и заменить его буферами протокола Google? Если да, то как может выглядеть этот код?