Я оцениваю Netflix Hystrix как улучшение для проекта, над которым я сейчас работаю, который основан на Java OSGi (я использую Apache felix в качестве среды выполнения OSGi).На данный момент я смог:
Вставить ядро Hystrix в один существующий пакет, который действует как соединитель для внешней системы и обернуть один из ее сервисов HystrixCommand.Все работает как положено, я вижу, как работает логика Hystrix.Также с помощью журналов DEBUG я проверил, что все зарегистрировано правильно (com.netflix.hystrix = DEBUG).
Создайте новый пакет, который отвечает за регистрацию сервлета hystrix.stream,В основном я получил HttpService (org.osgi.service.http.HttpService), поступающий из среды выполнения OSGi, и зарегистрировал на нем сервлет.Все выглядит нормально, сервлет зарегистрирован правильно и виден в $ {myEndpoint} /hystrix.stream.Таким образом:
httpService.registerServlet ("/ hystrix.stream/*", новый HystrixMetricsStreamServlet (), null, myHttpCtx);
Проблема в том, что я не вижу данные объекты, помещенные в поток.Видны только обновления ping , даже если в то же время я подчеркиваю, что HistryxCommand деформирует службу с помощью теста Jmeter / Postman.Учитывая, что я не замечаю ошибок, я думаю о том, что издатель и читатель привыкли к различным потокам.Может ли кто-нибудь помочь мне понять немного больше внутренних особенностей Hystrix и устранить неполадки в моем сценарии?Я попытался просмотреть источники Hystrix, но, если честно, это пока не помогло.
Ниже зависимостей я использую
<dependencies>
<dependency>
<groupId>com.netflix.hystrix</groupId>
<artifactId>hystrix-core</artifactId>
<version>1.5.12</version>
</dependency>
<dependency>
<groupId>com.netflix.hystrix</groupId>
<artifactId>hystrix-metrics-event-stream</artifactId>
<version>1.5.12</version>
</dependency>
</dependencies>
Спасибо