return DateTime.ParseExact(dateInString, "M/d/yyyy", CultureInfo.InvariantCulture);
Разница между моим ответом и Fabulous 'заключается в том, что я также сократил
dd
доd
, поэтому, если ваш пользователь пишет6/6/2018
он тоже будет работать
Мы использовали Привод начальной загрузки Spring пользовательская Проверка состояния для проверки Живучести и Готовности. У Вас может быть своя пользовательская логика, чтобы определить, можете ли Вы служить запросу или нет. Если Вы можете служить, запрос затем поддерживают переходную приставку или иначе перезапускают его. Для соединения с базой данных перезапуск проблем только поможет, если Ваши соединения застрянут и не выпущены.
Мы используем стандарт/actuator/health конечная точка и для живучести и для готовности, и были для близко к году теперь. Положительные стороны этого - то, что приложение не отмечено как готовое к употреблению, если все его соединения не в порядке. Оборотная сторона происходит из-за некоторых случаев ошибочных соединений, который приводит ко времени простоя/перезапускам.
В моем уме, приложение, которое не содержит соединения с его базой данных (или другая важная инфраструктура) так же хорошо как бесполезное. Поскольку это, вероятно, не будет функционировать правильно, Вы могли бы также сообщить, что это недоступно. Таким образом, если у Вас нет проблем с плохим соединением с базой данных или другими вещами, я не могу действительно видеть вред использования/actuator/health и для живучести и для готовности. Кроме того, это - дешевый способ проверить, в порядке ли Ваше приложение, который требует, чтобы очень мало физического труда настроило.
Использование проверка состояния, чтобы проверить, готово ли приложение обработать новые запросы. Это может быть реализовано в /actuator/health
. Также см. StartupProbe ниже.
При высокой загрузке?
, Если Ваше приложение находится под высокая загрузка , это не может отвечать на проверке состояния вовремя, приводя к [1 115] ReadinessProbe к [1 116] сбой . Рассмотрите использование Горизонтальный Автосчетчик Переходной приставки , чтобы заставить больше копий обрабатывать загрузку.
, Если Ваше приложение находится в неисправимом состоянии, лучше, если оно может завершить себя, например, использование java.lang.System.exit(1)
. Если приложение может быть заведено в тупик, не мог продолжиться, рассмотреть реализацию конечной точки для LivenessProbe
, это может совпасть с для ReadinessProbe
.
Не готовность ответа в долгое время
, Если Ваше приложение не ответило ReadinessProbe в долгое время, например, много минут, что-то, вероятно, неправильно (если Вы не ожидаете, что это произойдет для Вашего приложения), затем Вы должны, вероятно, также иметь /actuator/health
как Ваш LivenessProbe, но с более высоким failureThreshold
и высокий initialDelaySeconds
(например, несколько минут)
, ReadinessProbe является самым полезным во время запуска приложения, так как это, возможно, должно загрузиться, например, данные, прежде чем это будет готово получить запросы - , но , ReadinessProbe выполняется периодический в течение жизненного цикла переходной приставки. StartupProbe является теперь лучшей альтернативой для медленных стартовых приложений в сочетании с [1 123] LivenessProbe, который только активен после StartupProbe. Вам, возможно, все еще понадобится ReadinessProbe, чтобы уведомить, что переходная приставка готова обработать запросы.
, Если Ваше приложение зависит от других сервисов, которые являются не здоровы - лучше, если Ваш приложение может восстановиться с тех ситуаций, когда сервис поддержки закончился снова, например, снова соединиться. Иначе это будет цепная реакция домино , если у Вас будет цепочка сервисов, которая не отвечает на [1 128] ReadinessProbe или LivenessProbe, потому что последнее приложение в цепочке имеет проблему. Рассмотрите для обеспечения , ухудшился сервис, уведомьте, что Вы не находитесь в полном сервисе, возможно, некоторые Ваши конечные точки все еще работают корректные.
Это kubelet на том же узле, которые отправляют тестовые запросы. Рассмотрите для использования Порт Сервера управления для датчиков. Вы не должны выставлять этот порт эти Service
, лучше для использования одного порта для [1 132] http и другой для [1 133] управление .
при использовании Подсистемы балансировки нагрузки Облачного поставщика она может сделать проверки состояния на сервисах, и Вы, возможно, должны настроить путь, она пересылает проверки состояния, например, Платформа Google Cloud значения по умолчанию к /
. Это - проверка состояния для Сервис не для Переходной приставки индивидуума .