2015-05-15 4 views
1

Итак, я разрабатываю приложение поверх Dropwizard, и в одном компоненте я должен вызвать внешний сервис отдыха. Я хочу сделать это с помощью JerseyClient.Какой из них использовать JerseyClientBuilder?

Теперь доступны 2 варианта реализации, один из dropwizard и один из трикотажа. Использование Builder я должен выбирать между

io.dropwizard.client.JerseyClientBuilder.JerseyClientBuilder 

и

org.glassfish.jersey.client.JerseyClientBuilder 

Теперь бывший требует окружающей среды, а также JerseyClientConfiguration передается на него.

Есть ли веская причина для использования реализации dropwizard над ванильным? В чем разница (кроме таймаута)?

Спасибо

ответ

1

После еще некоторого копания и расспрашивать, получил ответ (ниже). Кажется, что лучше использовать JerseyClientBuilder, который поставляется с Dropwizard, как это лучше интегрированы:

  • можно использовать JerseyClientConfiguration для того, чтобы настроить JerseyClientBuilder с помощью конфигурации приложения (файл service.yml).
  • Передача информации об окружающей среде позволяет использовать пул управляемых потоков, который интегрирован в жизненный цикл Dropwizard, поэтому, когда Dropwizard закрывается, клиент также получает доступ.
  • Метрики Dropwizard интегрируются в каждый клиент, чтобы вы могли видеть латентность и скорость вызовов для каждого из них, а также показатели вокруг размеров пула потоков.
Смежные вопросы