WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Identificando o Conjunto .NET no Tempo de Execução

As regras que controlam como o conjunto .NET é carregado a partir do sistema de arquivos do broker se ele não for empacotado no arquivo BAR.

A configuração .NET para um broker é controlada pelas propriedades do nó .NET ou na assinatura do Procedimento ESQL. Opcionalmente, também é possível definir um serviço configurável DotNetAppDomain para opções de configuração adicionais. Um fluxo de mensagens pode chamar conjuntos que são executados no grupo de execução de um broker usando o Microsoft Common Language Runtime (CLR). Os desenvolvedores de fluxo podem controlar os conjuntos de .NET Framework que são carregados e os domínios de aplicativos .NET que são usados. Os conjuntos são chamados a partir de um nó .NET em um fluxo de mensagens ou chamando-se um procedimento ESQL.

Domínios de Aplicativos

O .NET Framework separa conjuntos de aplicativos para execução em um determinado domínio de aplicativo que fornece um escopo para os recursos de um aplicativo. No WebSphere Message Broker, o processo de sistema operacional do grupo de execução (DataFlowEngine) hospeda o CLR. Neste processo, os conjuntos .NET podem ser executados em diversos domínios de aplicativos, se necessário.
  • A propriedade Nome do AppDomain de um nó .NET especifica o domínio do aplicativo em que o conjunto deve ser carregado. Se um serviço configurável DotNetAppDomain for definido com o mesmo nome que Nome do AppDomain do nó, as propriedades do serviço configurável terão precedência quando o conjunto for carregado. Essas propriedades incluem a propriedade Diretório Base do Aplicativo.
  • Quando um procedimento ESQL chama um conjunto .NET, a assinatura do procedimento pode especificar o domínio de aplicativo no qual o conjunto deve ser carregado. Se um serviço configurável DotNetAppDomain for definido com o nome especificado para o domínio de aplicativo na assinatura do procedimento ESQL, as propriedades do serviço configurável (por exemplo, o Diretório Base do Aplicativo) terão precedência quando o conjunto for carregado.
Se nenhum domínio de aplicativo for especificado pelos métodos precedentes, o domínio de aplicativo no qual o conjunto é carregado será determinado por:
  • O nome do aplicativo, se implementado em um aplicativo WebSphere Message Broker
  • O nome do grupo de execução, se implementado em um fluxo não definido dentro de um aplicativo WebSphere Message Broker
Se o domínio de aplicativo for determinado pelo nome do aplicativo ou pelo nome do grupo de execução e um serviço configurável DotNetAppDomain for definido com o mesmo nome, as propriedades do serviço configurável (por exemplo, Diretório Base do Aplicativo) terão precedência quando o conjunto for carregado. Se o nome do aplicativo ou o nome do grupo de execução incluir caracteres de espaço, esses caracteres serão ignorados quando o nome do aplicativo ou o nome do grupo de execução for comparado com o nome do serviço configurável.

Diretório Base do Aplicativo

Para entender qual cópia de um conjunto será carregada, determine primeiramente o Diretório Base do Aplicativo.
  1. Se a propriedade Domínio de Aplicativo referir-se a um serviço configurável, a propriedade ApplicationBase do serviço configurável será usada. Use esta abordagem em ambientes de produção.
    Nota: As propriedades de serviço configurável, incluindo ApplicationBase, sempre têm precedência, mesmo se você tiver implementado um domínio de aplicativo .NET contendo os conjuntos no tempo de execução. Nessa situação, para assegurar que o conjunto .NET seja carregado a partir do .appdomainzip e não do diretório Base do Aplicativo, assegure-se de que a propriedade de serviço configurável ApplicationBase esteja em branco.
  2. Se a propriedade Nome do Conjunto do nó .NET (ou parte equivalente da assinatura do procedimento ESQL) especificar um local absoluto no sistema de arquivos, esse caminho de diretório completo será usado como Diretório Base do Aplicativo.
  3. Se a propriedade Nome do Conjunto do nó .NET (ou parte equivalente da assinatura do procedimento ESQL) especificar apenas o nome do arquivo .dll sem caminho, o broker usa um subdiretório do caminho de trabalho do intermediário de tempo de execução para o diretório Base do Aplicativo. Esse diretório pode ser alterado; considere uma das abordagens alternativas.

Carregamento de Conjunto e o Global Assembly Cache

O broker espera localizar o conjunto .NET necessário no Diretório Base do Aplicativo. No entanto, é possível colocar conjuntos em um cache na máquina, conhecido como o Global Assembly Cache (GAC). Para colocar um conjunto no GAC, ele deve receber um Nome Forte: ao ser compilado, o conjunto recebe as propriedades de uma versão, uma cultura e um token de chave pública. Ao configurar o nó .NET ou uma invocação do ESQL, é possível especificar a versão, cultura e o token de chave pública do conjunto de nome forte a ser usado.

Você precisará reiniciar o grupo de execução se desejar recarregar ou atualizar um conjunto de Nome Forte.

Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:31:04


Tópico de TarefaTópico de Tarefa | Versão 8.0.0.5 | bc34225_