Configurações de Métodos Assíncronos do EJB

Use esta página para modificar as configurações no gerenciador de trabalho usado no suporte dos métodos assíncronos de Enterprise JavaBeans.

Para visualizar essa página do console administrativo, clique em Servidores > Tipos de Servidores > Servidores de aplicativo WebSphere > server_name > Configurações do Contêiner do EJB > Configurações de chamada de método assíncrono de EJB

As opções Usar Instância do Gerenciador de Trabalho Interno e Usar Instância do Gerenciador de Trabalho Customizado são mutuamente exclusivas.

Usar este Gerenciador de Trabalho para Métodos Assíncronos

Especifica uma instância padrão do gerenciador de trabalho.

O produto fornece uma instância do gerenciador de trabalho interno para suporte dos métodos assíncronos do EJB. A instância do gerenciador de trabalho interno é pré-configurada para a funcionalidade básica do método assíncrono do EJB e fornece definições de configuração limitadas.

Clicar nesse botão especifica que você deseja usar a instância do gerenciador de trabalho interno para gerenciar suas chamadas de método assíncrono. Selecionar essa opção bloqueará a opção Usar Instância do Gerenciador de Trabalho Customizado.

A opção Usar Instância do Gerenciador de Trabalho Interno é padrão. Como alternativa, é possível usar uma instância definida do gerenciador de trabalho customizado.

Usar Instância do Gerenciador de Trabalho Customizado

Especifica uma instância definida do gerenciador de trabalho customizado.

É possível fornecer uma configuração mais avançada dos métodos assíncronos do EJB definindo uma instância do gerenciador de trabalho customizado.

Selecionar essa opção permitirá usar uma instância do gerenciador de trabalho que você já definiu e configurou, de uma forma opcional ao seu ambiente.

Selecionar essa opção bloqueará a opção Usar Instância do Gerenciador de Trabalho Interno.

Número Máximo de Encadeamentos

Especifica o número máximo de encadeamentos usados na execução dos métodos de EJB assíncronos. O padrão é 5.

Tamanho da Fila de Pedidos de Trabalho

Especifica o tamanho da fila de pedidos de trabalho. A fila de solicitação de trabalho é um buffer que mantém os métodos assíncronos solicitados até que um encadeamento esteja disponível para executá-los. O valor padrão é 0, indicando que o tamanho inicial é metade entre o número mínimo e máximo de encadeamentos.

A soma do número máximo de encadeamentos e dos atributos de tamanho de fila da solicitação de trabalho é o número total de solicitações de métodos em andamento permitidas.

Por exemplo, se o número máximo de encadeamentos for configurado para cinco, e o tamanho da fila de solicitação de trabalho for configurado para 50, o número total de solicitações de métodos em andamento permitidas será 55.

O valor padrão é 0, indicando que o tamanho da fila é gerenciado pelo ambiente de tempo de execução. O tempo de execução usa atualmente o valor maior 20 e maxThreads.

Ação de Fila Cheia de Pedidos de Trabalho

Especifica a ação executada quando o conjunto de encadeamentos é esgotado e a fila de pedidos de trabalho está cheia. O padrão é BLOCK.

Se configurado como FAIL, ocorrerá uma exceção ao invés de espera para que um encadeamento, ou um local na fila, fique disponível.

Talvez você queira usar essa opção durante o desenvolvimento para ajudar a identificar erros causados por métodos assíncronos de longa execução. Você também pode desejar usá-la para determinar o número de encadeamentos e o tamanho da fila que devem ser configurados.

Se configurado como BLOCK, o encadeamento que está solicitando que a execução do método assíncrono aguarde até que um encadeamento, ou local na fila, fique disponível.

Nome JNDI do Gerenciador de Trabalho

Especifica o nome Java Naming and Directory Interface (JNDI) usado para consultar o gerenciador de trabalho definido pela customização no namespace.

Duração de Objeto Futuro Remoto

Especifica a quantidade de tempo que o servidor retém o objeto futuro de cada chamada de método assíncrono com resultados disparados e retornados. Se um aplicativo não recuperar os resultados dentro do período de tempo especificado, o servidor limpará os resultados de chamada desse método para evitar fuga de memória e uma possível exceção OutOfMemory. É possível especificar 0 para nunca limpar os objetos; no entanto, especificar um valor zero significa que o objeto futuro nunca atingirá o tempo limite e você desativará a proteção dos programas gravados incorretamente, o que poderá causar a exceção OutOfMemory mencionada. O valor-padrão é 86400 segundos (24 horas).

Evitar Problemas Evitar Problemas: Se você chamar o método get() ou get(time) no objeto futuro, poderá diminuir o desempenho porque o bloqueio poderá ocorrer até que o trabalho seja feito ou até que o tempo especificado seja atingido. Portanto, para evitar o bloqueio nos métodos get(..), chame o método isDone(), que é retornado imediatamente. Então, chamar o método get() após o método isDone() retornará true. gotcha
Configurações suportadas Configurações suportadas: Esse valor apenas é aplicável para clientes que chamam o enterprise bean usando uma interface de negócios remota, o valor não é usado para as visualizações de interface de negócios local ou sem interface. Quando o trabalho assíncrono for concluído, o servidor configurará um alarme para a duração especificada do objeto futuro no lado do servidor. Quando o alarme é ativado, o servidor libera todos os recursos associados ao objeto futuro, tornando-o indisponível para o cliente. Se o cliente chama o método get() no objeto futuro antes do tempo de duração, o alarme será cancelado e todos os recursos associados ao objeto futuro serão liberados. sptcfg


Nome do arquivo: uejb_ejbAsynch_settings.html