FaultType Enumeração
- java.
lang. Object - java.
lang. Enum<FaultType> - system.
fabric. FaultType
- system.
- java.
public enum FaultType
Indica o tipo de falha que um serviço relata: inválido, transitório ou permanente.
Observações: Os serviços podem relatar falhas durante o runtime usando o reportFault(FaultType faultType) método para indicar o tipo de falha.
Campos
Invalid |
O tipo é inválido. |
Permanent |
Uma falha permanente é uma falha da qual o réplica não pode se recuperar. Esse tipo de falha indica que o réplica não pode fazer nenhum progresso adicional e deve ser removido e substituído.
Observações: Um exemplo de falha permanente seria um serviço persistente com estado que tenta gravar informações no disco e determina que o disco foi removido ou era inutilizável. Chamar reportFault(FaultType faultType) e relatar uma falha permanente resulta na anulação do serviço por meio de StatefulServiceReplica abort() ou StatelessServiceInstance abort() sem a chance de limpo normalmente o estado ou as operações completas. Portanto, se qualquer limpeza ou outro trabalho de execução longa for necessário, ele deverá ser executado antes reportFault(FaultType faultType) de ser chamado. Observe que a distinção entre falhas permanentes e transitórias é útil principalmente para serviços persistentes com estado. Além da sequência de chamadas, os efeitos em outros tipos de serviço são os mesmos: o réplica ou instância é removido, todo o estado nesse réplica ou instância é perdido e o réplica ou instância é recriado, potencialmente em um local diferente. |
Transient |
Uma falha transitória indica que há alguma condição temporária que impede que o réplica faça mais progresso ou processe outras solicitações de usuário.
Observações: Um exemplo de falha transitória é um serviço que determina que uma parte de seu estado ou algum arquivo de referência está corrompido, mas pode ser reparado se o serviço deve ser inicializado novamente. Nesse caso, o serviço usa o reportFault(FaultType faultType) método para relatar uma falha transitória. Relatar uma falha transitória fecha o serviço por meio de StatefulServiceReplica. closeAsync(CancellationToken cancellationToken) ou StatelessServiceInstance closeAsync(CancellationToken cancellationToken). Observe que, para serviços sem estado e com estado, falhas transitórias voláteis não são muito úteis porque o estado não é preservado em toda a falha. Para esses serviços, o uso de falhas transitórias ou permanentes depende se o serviço deve ser normalmente fechado de forma assíncrona com limpeza ou não fechado com um método StatefulServiceReplica abort() ou StatelessServiceInstance abort() síncrono. |
Métodos
getValue()
public int getValue()
Obtém o valor system.fabric.FaultType.
Retornos
Aplica-se a
Azure SDK for Java