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.
COM+ dá aos desenvolvedores mais controle sobre seus aplicativos, permitindo níveis configuráveis de isolamento de transações. As versões do COM+ anteriores ao COM+ 1.5 sempre usavam o mais alto nível de isolamento para transações. Embora esse nível garanta que a integridade dos dados seja sempre preservada, ele pode levar a problemas de desempenho, como tempos limites, quando muitas transações precisam ser executadas em um grande banco de dados. Com níveis de isolamento configuráveis, desenvolvedores experientes podem aumentar a simultaneidade para melhorar o desempenho e a escalabilidade.
COM+ fornece os seguintes níveis de isolamento de transação.
| Nível | Descrição |
|---|---|
| Serializado | Os dados lidos por uma transação atual não podem ser alterados por outra transação até que a transação atual seja concluída. Não é possível inserir novos dados que afetem a transação atual. Este é o nível de isolamento mais seguro e é o padrão. |
| Leitura repetível | Os dados lidos por uma transação atual não podem ser alterados por outra transação até que a transação atual seja concluída. Qualquer tipo de novo dado pode ser inserido durante uma transação. |
| Leitura comprometida | Uma transação não pode ler dados que estão sendo modificados por outra transação que não foi confirmada. Este é o nível de isolamento padrão no Microsoft SQL Server. |
| Ler sem compromisso | Uma transação pode ler quaisquer dados, mesmo que estejam a ser modificados por outra transação. Este é o nível de isolamento menos seguro, mas permite a maior simultaneidade. |
| Qualquer | Qualquer nível de isolamento é suportado. Essa configuração é mais comumente usada por componentes a jusante para evitar conflitos. Essa configuração é útil porque qualquer componente a jusante deve ser configurado com um nível de isolamento igual ou inferior ao nível de isolamento do seu componente a montante imediato. Portanto, um componente downstream que tem seu nível de isolamento configurado como Any sempre usa o mesmo nível de isolamento que seu componente upstream imediato usa. Se o objeto raiz em uma transação tiver seu nível de isolamento configurado como Any, seu nível de isolamento se tornará Serialized. |
Observação
Se um componente downstream for configurado com um nível de isolamento mais alto do que um componente upstream e tentar se alistar em uma transação, um erro resultará e a transação será anulada.
Tópicos relacionados