Compartilhar via


Partições e componentes em fila COM+

O serviço de componentes em fila COM+ suporta totalmente o conceito de partições. Ou seja, quando um componente enfileirado dentro de uma partição é executado, a mensagem é enfileirada e o componente é eventualmente executado dentro da partição do componente.

Nomes de fila para componentes particionados

Tradicionalmente, o serviço de componentes em fila usa o nome do aplicativo como o nome da fila. Isso significa que, em um cenário de não partições, em que existe apenas uma instância de um nome de aplicativo em um computador, cada nome de aplicativo tem sua própria fila de mensagens.

No caso de partições, no entanto, onde várias instâncias do mesmo nome de aplicativo podem existir em um computador, o serviço de componentes em fila usa a mesma fila para quaisquer componentes em fila que compartilham o mesmo nome de aplicativo.

Ativando componentes em fila

As mesmas regras para como o ID da partição é usado para ativar um componente não enfileirado se aplicam a um componente em fila, da seguinte maneira:

  • Se um moniker for usado para ativar o componente enfileirado e um ID de partição for incluído, esse ID de partição será usado para localizar a partição. Esse ID de partição tem precedência sobre qualquer ID de partição que possa existir no contexto do componente que está sendo ativado.
  • Se nenhum moniker estiver sendo usado para ativar o componente, o ID da partição que está no contexto do objeto será usado.
  • Se nenhuma ID de partição existir no contexto do objeto, o mapeamento padrão de usuário para partição no Active Directory será usado.

Observação

Se um computador servidor estiver desconectado da rede e se o mapeamento de conjunto de usuário para partição for alterado enquanto o servidor estiver desconectado, o cache de partição poderá conter mapeamento de conjunto de usuário para partição desatualizado. Isso pode resultar em um erro de ativação se o mapeamento do conjunto de usuário para partição for o mecanismo usado para ativar um componente.

 

Os eventos COM+ são totalmente integrados em partições. Isso significa que um assinante pode assinar um editor cujo aplicativo reside dentro de uma partição. Para permitir essa assinatura, a coleção de classes do assinante inclui duas propriedades relacionadas à partição — uma ID de partição de classe de evento e uma ID de aplicativo de classe de evento.

Restrições de design de aplicativo

Implementação de partição

Registrando e ativando componentes em partições

O que são partições COM+?