Я тестирую сервер и клиент eureka с весенним облаком. У меня есть простой вопрос о конфигурации по умолчанию (сервер & клиент).Порог обновления и возобновление (последний мин)
На стороне сервера порог обновления равен 3. На стороне клиента он посылает пульс каждые 30 секунд (максимум 2 в минуту).
Когда я смотрю на приборную панель реестра, когда waitTimeInMswhenSyncEmpty
закончится, я вижу следующее предупреждающее сообщение:
EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE
Когда я смотрю на код, тест getNumOfRenewsInLastMin() <= numberOfRenewsPerMinThreshold
всегда верно (2 <= 3)
Почему конфигурация по умолчанию кажется странной, потому что она постоянно генерирует предупреждение!
Если есть кто-нибудь, кто может дать мне объяснение. Я думаю, что я пропустил что-то и hellip;
Я вижу 'numberOfRenewsPerMinThreshold> 0 && getNumOfRenewsInLastMin()> numberOfRenewsPerMinThreshold'. который работает до '2> 3 = false'. Куда ты смотришь? https://github.com/Netflix/eureka/blob/a54991b8fe121bc39b2b1257b0c57f19ff0ccd30/eureka-core/src/main/java/com/netflix/eureka/registry/PeerAwareInstanceRegistryImpl.java#L465 – spencergibb
Может ли быть проблема между методом isBelowRenewThresold() (это верно IMHO) и использование FTL <#if isBelowRenewThresold>. Может быть, FTL использует метод, который возвращает число, в котором ожидается логическое ожидание? –
Извините, пожалуйста, проигнорируйте мой последний ответ. Кажется, он работает правильно. Моя консоль eureka показывает мне, что обновления (4) действительно ниже порога (5). Поскольку у меня есть 2 клиента, обновления обычно будут 4. Большие вопросы, почему порог больше ожидаемых обновлений? Это похоже на этот вопрос и здесь –