Visão Geral

O recurso Smart Agents permite configurar servidores nomeados para execução dedicada de tarefas do Schedule no novo motor de agendamento.

Essa funcionalidade possibilita maior controle sobre a distribuição de carga, garantindo que processamentos críticos ou de alto consumo sejam direcionados para servidores apropriados.

O modelo mantém compatibilidade com o comportamento padrão do Schedule quando não existem Agents configurados ou disponíveis.

Objetivo

Permitir que administradores possam:

Contexto

No novo motor do Schedule não existe controle sobre qual servidor executará tarefas agendadas.

Isso pode causar:

O Smart Agents reintroduz o conceito de servidores nomeados para o motor Smart de execução.

Conceitos

Smart Agent

Servidor nomeado configurado para execução dedicada de tarefas do Schedule.

Serviço Dedicado

Serviço identificado como Smart Agent.

Serviço Não Dedicado

Serviço padrão que poderá executar tarefas apenas em cenários de fallback.

A tabela XX0 será utilizada para armazenar Agents tradicionais e Smart Agents. O que diferencia um cadastro para o outro é a necessidade de grupo de empresa em um agente tradicional e a não existência do grupo de empresa em um Smart Agent.  

Regras de Execução

Execução com Agents Online

Se existir pelo menos um Smart Agent online: Execução ocorre exclusivamente nos Smart Agents configurados

Execução sem Agents Configurados

Execução segue comportamento padrão do Smart Schedule.

Fallback por Indisponibilidade

Se todos Smart Agents estiverem offline: Execução ocorre em qualquer servidor disponível

Retorno ao Modo Exclusivo

Quando pelo menos um Smart Agent : Próximas execuções voltam para os Smart Agents

O controle é realizado por ambiente seguindo o conceito usado nos agentes tradicionais.


Controlador de Execução

Serviço Dedicado

Executa tarefas continuamente

Não realiza validações adicionais

Serviço Não Dedicado

Durante cada ciclo de verificação:

Valida existência de Agent disponível

Interrompe execução caso necessário

Configuração de Threads

Definição

As threads dos Smart Agent seguem o valor configurado no cadastro.

Aplicação

Aplicada no momento da inicialização do Smart Agent.

Quando um serviço deixa de ser um Smart Agent ele passa a ser um serviço padrão passando a executar com o número de threads padrão (3).

Fluxos de Sequência

Inicialização de Serviço Dedicado

  1. Serviço é iniciado
  2. Recupera as informações de contexto do serviço em execução.
  3. Consulta se é um smart agent cadastrado.
  4. Registra que um agente está em execução
  5. Inicia fluxo de execução com threads configuradas

Execução com Fallback

  1. Scheduler identifica tarefa
  2. Valida disponibilidade de smart agents
  3. Nenhum smart agent online
  4. Libera execução para qualquer servidor

Retorno do Agent

  1. Agent reinicia
  2. Registra disponibilidade
  3. Scheduler identifica disponibilidade
  4. Próximas execuções retornam para Agents

Administração e cadastro dos Smart Agents

A manutenção dos Smart Agents é realizada na seção de Agentes do Schedule Protheus.



Para inserir um novo Smart Agent o botão de Novo deve ser acionado. A tela de seleção do tipo do Agente é apresentada. Nesse momento a tela de cadastro será apresentada para preencimento.
  

Descrição:
Descrição dada ao smart agent.
Status:
Indica se o smart agent ficará habilitado para uso.
IP:
Endereço do servidor que será utilizado.
Porta:
Porta do servidro que será utilizada.
Número de Threads:
Número de threads que será utilizado para execução das tarefas. 

Uma vez cadastrado o smart agent é apresentado na lista de agentes com o tipo Smart e disponível para incialização.



Para solicitar a inicialização do smart agente acione as opções disponíveis e acione a opção Iniciar Agente

A inicialização do smart agent só e possível com o Smart Schedule em execução





Para solicitar a pausa do smart agente acione as opções disponíveis e acione a opção Parar Agente



Caso o smart agent esteja executando alguma tarefa a solicitação é realizada e a pausa será realizada no término da execução




Somente é permitido a inicialização do agent smart quando o motor de execução smart está ativo.
O agentes tradicionais não podem ser inicializados com o motor smart em execução.


Alteração de Cadastro

Atualiza informações do contexto do serviço após sua inicialização.

Exclusão

Remove contexto e disponibilidade.

Parar Agent

Remove registro de disponibilidade.

Reiniciar Agent

Revalida contexto

Registra disponibilidade.