Visão Geral do Agent Controller

O TPTP Data Collections Framework fornece uma estrutura na qual um aplicativo de ferramenta (cliente) pode interagir com um ou mais aplicativos de provedor de dados (agentes) de maneira uniforme e sem referência ao local. Essa estrutura consiste em uma interface do cliente, processo de gerenciamento de agente, interface do agente e alguns agentes úteis em geral. O processo de gerenciamento de agente é conhecido como Agent Controller.  É esse componente que permite a um aplicativo cliente separar-se dos detalhes de localizar e iniciar vários provedores de dados em máquinas locais ou remotas que podem ou não ser o mesmo tipo de plataforma (arquitetura de S.O. e CPU) ou linguagem (C/C++, Java).

O aplicativo cliente utiliza a API da interface cliente da estrutura para solicitar os serviços de um agente em um sistema específico. O trabalho do Agent Controller então é obter uma instância desse agente em execução (ou compartilhar uma instância que já esteja em execução) de acordo com as definições de configuração desse agente e os parâmetros de pedido fornecidos pelo cliente.  Os detalhes do estabelecimento de comunicação e da ativação do processo do agente são manipulados pela estrutura. O cliente então utiliza a API para criar e enviar pedidos ao agente utilizando um conjunto de comandos (em formato XML) definido pelo agente.

O agente (aplicativo de provedor de dados) não precisa saber nada sobre o cliente que solicita seus dados.  O desenvolvedor do agente define um conjunto de comandos (em formato XML) ao qual ele responderá com referência a qualquer serviço que ele forneça.  Os serviços não precisar ser coleta de dados.  Eles podem simplesmente executar uma ação em nome do cliente.  

Para que um aplicativo seja um agente nessa estrutura, ele deverá se registrar no controlador de agente e, em seguida, atender aos pedidos que chegarão por meio do Agent Controller.  A estrutura fornece uma implementação para as necessidades gerais do agente para que ele não tenha de se preocupar com os detalhes da configuração da comunicação.  Ele só precisa aceitar os comandos definidos e agir a respeito deles.  O cliente e o agente podem utilizar a estrutura para definir um caminho no qual os dados poderão fluir entre eles também.  O formato desses dados não é restrito.

O Agent Controller foi projetado para ser flexível e, como tal, existe um arquivo de configuração que permite a um administrador controlar como ele executa determinadas ações.  Consulte a visão geral do arquivo de configuração para obter mais informações.

Segue uma descrição mais abrangente dos componentes incluídos na estrutura de coleta de dados:

Agent
Agente é um aplicativo que expõe seus serviços por meio do Agent Controller. Todo aplicativo que se registra no Agent Controller e pode se comunicar com ele utilizando mensagens de controle é um agente. Um cliente acessa determinados serviços de um agente por meio de um conjunto documentado de mensagens de controle definido pelo agente.  O Agent Controller transmite as mensagens de controle entre o cliente e o agente sem conhecimento de seu conteúdo.  O agente determina se ele pode atender a vários clientes simultaneamente e se pode haver várias instâncias dele mesmo em execução.  Um agente deverá ser registrado em um único Agent Controller.  Em geral, um agente coleta dados sobre o sistema no qual ele é executado ou um aplicativo que ele está monitorando, ou ainda executa serviços como ativação de um aplicativo ou cópia de arquivos.
Client
Cliente é um aplicativo (por exemplo, o Eclipse* Ambiente de Trabalho) que permite que o usuário de um serviço interaja com o provedor (agente). Um único cliente pode potencialmente conectar-se a vários Agent Controllers ao mesmo tempo.  Do mesmo modo, o cliente pode utilizar os serviços de vários agentes simultaneamente.  O cliente solicita acesso a um agente por meio do Agent Controller.  Se um agente solicitado não estiver em execução, o Agent Controller o ativará.  O cliente pode solicitar acesso exclusivo a um agente, mas assim todo pedido subseqüente para os serviços desse agente por outro cliente resultará em uma nova instância do agente sendo criada pelo Agent Controller. Um cliente faz pedidos de um agente utilizando um conjunto básico de comandos mais qualquer aprimoramento definido pelo agente.
Agent Controller 
O Agent Controller é um processo que reside em cada sistema de destino no qual um cliente deseja os serviços de um agente.  Um agente e o Agent Controller coexistem sempre no mesmo sistema.  O cliente e o Agent Controller não precisam residir no mesmo sistema.  O Agent Controller gerencia todos os detalhes de inicialização e comunicação com cada agente. O Agent Controller pode interagir com um ou mais agentes simultaneamente. Um cliente não será associado a um determinado agente até que ele obtenha um controle para ele do Agent Controller.

Tarefas Relacionadas
Modelo Conceitual de Coleta de Dados
Administrando o Agent Controller
 

Copyright (C) 2005, 2006 Intel Corporation.