Páginas filhas
  • PoolJobs_init

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Inicia configuração de um POOL de appservers AppServers que serão utilizados para distribuição/balanceamento de processos multi-thread.

Esta função pode ser invocada no início do programa, pois não é preciso acionar ela a cada execução. O objetivo desta função é carregar as configurações do POOL Job Threads existentes no arquivo de profile e avaliar se os AppServers configurados na lista de POOL Job Threads estão ativos e a conexão de banco é válida para o respectivo ambiente em uso, que também deverá existir com mesmo nome nos respectivos AppServers definidos para o POOL.


Nota
titleATENÇÃO

O ambiente utilizado para execução do programa que inicia o POOL Job Threads, deverá também existir com as mesmas configurações nos demais AppServers configurados na lista de POOL Job Servers, ou seja, o ambiente deverá ter:

  • O mesmo nome do ambiente onde o programa principal está sendo executado;
  • Conectar o mesmo banco de dados que o programa principal conectou;
  • Acessar o mesmo RPO (Repositório de Objetos) que o programa principal.

Para informações a respeito da configuração da lista de POOL Job Servers acesse LGX - Configuração POOL Job Threads.

Sintaxe

Bloco de código
_ADVPL_PoolJobs_init( < cPoolMainName > ) => BOOLEAN

...

Nome

Tipo

Obrigatório?

Descrição

l_dircPoolMainName

BOOLEANCHAR

SimNão

Nome principal do POOL de appservers AppServers. Quando não informado, assumirá o nome do POOL com o nome do programa em execução.

Este nome de POOL poderá ser utilizado para configurar a lista de AppServers no PROFILE para a chave jobServers.

Retorno

Tipo

Descrição

BOOLEANVerdadeiro se o diretório informado for encontrado no ambiente indicado

Indicador de sucesso ou falha na identificação da lista de AppServers configurados como POOL de processos Jobs.

    TRUE  - POOL de AppServers é válido e está aceitando conexões, ou assumiu AppServer atual como POOL, pois não encontrou POOL de AppServers configurado.

    FALSE - Detectou falha de conexão num dos AppServers configurados no POOL. Neste caso no LOG do AppServer principal será registrada mensagem de alerta com o detalhemanto do problema que foi identificado.

Exemplo

Bloco de código
languageruby
linenumberstrue
FUNCTIONDEFINE LOGm_DirExist_test()
  DEFINE l_dir pooljob_name CHAR(250)

  LET l_dir = "c:\\temp\\"

  IF LOG_file_exist(l_file,0) THEN
     CALL conout("Arquivo existe no servidor")
  ELSE
     CALL conout("Arquivo não existe no servidor")
  END IF30)

#-----------------------------#
 FUNCTION POOLJOBS_init_test()
#-----------------------------#

  #Nome do POOL de processamentos JOB para a empresa que estiver realizando o processamento.
  LET m_pooljob_name = "pool_teste"

  IF NOT LOG_ADVPL_dirPoolJobs_existinit(l_dir,1m_pooljob_name) THEN
     CALL conout("ArquivoPoolJobs não iniciado. existeAppservers no client")
  ELSE
     CALL conout("Arquivo existe no client")do POOL não foram detectados ou houve falha de conexão.")
     RETURN
  END IF
END FUNCTION

Informações

Fontes: log1200.prw

...

LOG_file_exist

Observações

Para saber informações de como implementar o uso de POOL de Jobs acesse "Como Esta função pode ser invocada no início do programa, pois não é preciso acionar ela a cada execução.
o objetivo dela apenas é carregar as configurações do profile e avaliar se os appservers configurados na lista de POOL JOBS estão ativos e a conexão de banco está OK para o respectivo ambiente em uso que também deverá existir com mesmo nome nos respectivos appservers do POOLacesse LGX - Exemplo de uso POOL Job Threads.