FaultType Enumeration
- java.
lang. Object - java.
lang. Enum<FaultType> - system.
fabric. FaultType
- system.
- java.
public enum FaultType
Gibt den Typ des Fehlers an, den ein Dienst meldet: ungültig, vorübergehend oder dauerhaft.
Bemerkungen: Dienste können Fehler während der Laufzeit melden, indem sie die reportFault(FaultType faultType) -Methode verwenden, um den Typ des Fehlers anzugeben.
Felder
Invalid |
Der Typ ist ungültig. |
Permanent |
Ein dauerhafter Fehler ist ein Fehler, von dem das Replikat nicht wiederhergestellt werden kann. Dieser Fehlertyp gibt an, dass das Replikat keinen weiteren Fortschritt machen kann und entfernt und ersetzt werden sollte.
Bemerkungen: Ein Beispiel für einen dauerhaften Fehler wäre ein persistenter zustandsbehafteter Dienst, der versucht, Informationen auf den Datenträger zu schreiben und feststellt, dass der Datenträger entfernt wurde oder nicht verwendbar war. Das Aufrufen reportFault(FaultType faultType) und Melden eines dauerhaften Fehlers führt dazu, dass der Dienst über StatefulServiceReplica abort() oder StatelessServiceInstance abort() abgebrochen wird, ohne dass die Möglichkeit besteht, den Status ordnungsgemäß zu sauber oder Vorgänge abzuschließen. Wenn daher eine Bereinigung oder andere lang andauernde Arbeiten erforderlich sind, sollte sie ausgeführt werden, bevor reportFault(FaultType faultType) aufgerufen wird. Beachten Sie, dass die Unterscheidung zwischen permanenten und vorübergehenden Fehlern vor allem für persistente zustandsbehaftete Dienste nützlich ist. Abgesehen von der Aufrufsequenz sind die Auswirkungen auf andere Diensttypen identisch: Das Replikat oder instance wird entfernt, der gesamte Zustand dieses Replikats oder instance geht verloren, und das Replikat oder instance wird möglicherweise an einem anderen Speicherort neu erstellt. |
Transient |
Ein vorübergehender Fehler weist darauf hin, dass es eine temporäre Bedingung gibt, die verhindert, dass das Replikat weitere Fortschritte macht oder weitere Benutzeranforderungen verarbeitet.
Bemerkungen: Ein Beispiel für einen vorübergehenden Fehler ist ein Dienst, der bestimmt, dass ein Teil des Zustands oder eine Verweisdatei beschädigt ist, aber repariert werden kann, wenn der Dienst erneut initialisiert werden sollte. In diesem Fall verwendet der Dienst die reportFault(FaultType faultType) -Methode, um einen vorübergehenden Fehler zu melden. Wenn Sie einen vorübergehenden Fehler melden, wird der Dienst über StatefulServiceReplica geschlossen. closeAsync(CancellationToken cancellationToken) oder StatelessServiceInstance closeAsync(CancellationToken cancellationToken). Beachten Sie, dass für zustandslose und zustandsbehaftete Dienste flüchtige vorübergehende Fehler nicht sehr nützlich sind, da der Zustand nicht während des Fehlers beibehalten wird. Für diese Dienste hängt die Verwendung vorübergehender oder dauerhafter Fehler davon ab, ob der Dienst ordnungsgemäß asynchron mit Bereinigung oder nichtracefully geschlossen mit einer synchronen StatefulServiceReplica abort() - oder StatelessServiceInstance-Methode abort() geschlossen werden soll. |
Methoden
getValue()
public int getValue()
Ruft den system.fabric.FaultType-Wert ab.
Gibt zurück
Gilt für:
Azure SDK for Java