Программно определить, когда был создан или убит новый экземпляр микросервиса? - PullRequest
2 голосов
/ 19 марта 2019

Есть ли способ программно определить, достигло ли число экземпляров одного микроуслуг определенного числа в данный момент времени? Например: как я могу программно узнать, сколько экземпляров микросервисов моей Учетной записи сейчас запущено? Кроме того, как узнать, когда это число изменилось?

Мое намерение состоит в том, чтобы уведомить администратора, когда он превышает пороговое значение. Я использую Spring Boot с Spring Cloud, Spring Config и Consul в качестве службы поиска. Я был бы готов перейти на Eureka, если это необходимо.

1 Ответ

2 голосов
/ 19 марта 2019

Ну, на основе документации вы можете использовать DiscoveryClient , чтобы получить экземпляры, основанные на каком-либо сервисе, в примере документации "STORES", посмотрите, вы можете сделать это следующим примером:

@Autowired
private DiscoveryClient discoveryClient;

public List<ServiceInstance> getInstances(String serviceName) {
    List<ServiceInstance> list = discoveryClient.getInstances(serviceName);
    if (list != null && list.size() > 0 ) {
        // logic here if it is necessary. 
    }
    return list;
}
...