Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode usar o CRM (Compensating Resource Manager) COM+ para integrar de forma fácil e rápida os recursos do aplicativo com as transações do Microsoft Distributed Transaction Coordinator (DTC). Os recursos do seu aplicativo podem votar no resultado de uma transação e podem receber uma notificação final de seu resultado. Um log durável é gerado para que os recursos do aplicativo possam gravar registros que sobrevivem a falhas, e o CRM recupera esse arquivo de log quando o aplicativo é reiniciado.
Um CRM consiste nos dois componentes seguintes:
- Trabalhador de CRM. Este componente executa o trabalho principal do CRM específico e implementa uma interface específica para a tarefa que precisa executar. A infraestrutura do CRM fornece uma interface para o CRM Worker através da qual o CRM Worker pode gravar registros em um arquivo de log durável no disco. O Trabalhador do CRM deve gravar registros no log e torná-los duráveis antes de executar seu trabalho para que, se ocorrer uma falha, a recuperação possa ocorrer corretamente. O CRM Worker sempre requer uma transação.
- Compensador CRM. Este componente é criado pela infraestrutura do CRM na conclusão da transação. Ele implementa uma interface definida pela qual a infraestrutura do CRM pode passar notificações de conclusão de transação e os registros de log que foram gravados anteriormente pelo Trabalhador do CRM.
Um CRM COM+ fornece atomicidade com notificações transacionais e durabilidade com o log do CRM, mas não fornece isolamento de recursos. Em um ambiente multithreaded, é responsabilidade do desenvolvedor do CRM garantir que o acesso aos recursos, seja por vários trabalhadores do CRM ou aplicativos externos, seja serializado durante uma transação.
Após a transação passar pela fase de preparação, o Compensador do CRM e os Trabalhadores do CRM poderão ser executados simultaneamente. É possível que o componente CRM Worker de uma nova transação fique ativo enquanto o CRM Compensator de uma transação anterior ainda está processando a transação anterior.
Durante falhas antes da recuperação do aplicativo de servidor CRM, uma transação interrompida deve ser considerada ativa e não concluída. Não deve ser possível que processos externos acessem os recursos que estavam sendo alterados por essa transação específica antes da recuperação do processo do servidor CRM.
O CRM define três tipos de interface para as funções básicas do CRM:
- ICrmLogControl é implementado no funcionário do CRM e é usado pelo CRM Worker para gravar registros de log no log. Ele também pode ser usado pelo Compensador CRM.
- ICrmCompensator e ICrmCompensatorVariants são implementados no CRM Compensator. Essas interfaces são usadas para entregar notificações de resultados de transações e seus registros de log associados ao CRM Compensator. Normalmente, o CRM Compensator implementaria apenas uma dessas interfaces, dependendo se exigia registros de log não estruturados ou estruturados. Registros de log estruturados são aqueles que são criados como uma coleção de variantes e são normalmente para uso pelo Microsoft Visual Basic. Registros de log não estruturados são apenas um buffer de bytes e normalmente são usados pelo Microsoft Visual C++. Um Compensador CRM pode implementar ambas as interfaces do compensador; no entanto, apenas um de cada vez é usado para entregar registros de log.
- As interfaces de monitoramento do CRM COM+ são usadas para monitorar os CRMs dentro de um aplicativo de servidor específico. Para obter informações detalhadas sobre as interfaces de monitoramento, consulte COM+ CRM Monitoring Interfaces.
Os tópicos a seguir nesta seção fornecem mais detalhes sobre o serviço CRM COM+:
- Considerações de segurança do CRM COM+
- Processo Operacional COM+ CRM
- CRM COM+ inicialização e recuperação
- Usando o CRM COM+ em um ambiente de cluster
- Tratamento de erros no CRM do COM+
- Configurações do Registro do COM+ CRM
- Solução de problemas do CRM COM+
- Sugestões de design para desenvolver um COM+ CRM
- Interfaces de monitoramento de CRM COM+
- Interfaces de CRM COM+
Tópicos relacionados