У меня есть набор служб без сохранения состояния и с сохранением состояния в приложении. Очевидно, я бы хотел, чтобы они работали идеально, но бывают случаи, когда мое приложение знает, что оно не может восстановиться после сбоя. Например, если он не может загрузить свои параметры конфигурации из KeyVault (и резервных копий), то нет смысла продолжать.
Итак, вопрос в том, как сказать сервисной структуре отказаться от всего приложения? Я пробовал Partition.ReportFault(FaultType.Permenant), но благослови его, он пытается запустить новый раздел. :-)
Очевидно, что мы отправляем информацию об оповещениях в отделы эксплуатации и разработки, включая автоматические электронные письма, чтобы они могли восстановиться, но замечательно, если Service Fabric может принять запрос на «самоубийство», а не генерировать (количество реплик x количество повторных попыток) количество отчетов о фатальных ошибках и, в конечном итоге, умирать.