O objetivo deste documento é trazer uma visão do que é e como funciona a Arquitetura N Camadas, e como configurar o ambiente em suas estações para correto funcionamento das aplicações neste cenário.
O que é a Arquitetura N Camadas:
Anteriormente, na Arquitetura Cliente‐Servidor, a camada cliente acessava diretamente a camada de Banco de Dados, além de todos os processos serem executados no cliente, tais como: abertura de formulários, acesso a dados, regras de validação, cálculos e relatórios.
Na Arquitetura N camadas, apesar da complexidade do ambiente, a divisão das tarefas em camadas possibilita maior distribuição do processamento do sistema.
Cliente - Na camada cliente temos apenas os formulários que serão abertos na execução do programa.
Cliente - Na camada cliente temos apenas os formulários que serão abertos na execução do programa.
JOB - Na camada Jobs fica por conta da execução dos processos e também faz a comunicação com a Camada de Banco de Dados.
O exemplo abaixo mostra como é a arquitetura em N camadas:
Servidor de Jobs:
O que é:
É um dos serviços que são executados pelo Host em background, na arquitetura N camadas, esse serviço é habilitado somente no servidor de Jobs. Ele é responsável por executar os processos que são submetidos pelos aplicativos, que por sua vez entram em uma fila de execução(GJOBXEXECUCAO).
Como Funciona:
Separação entre JobServer e AppServer:
Como Fazer:
Vantagens:
Servidor de Aplicação:
Instalar a Biblioteca RM no Servidor de Aplicação (no momento de instalação, selecionar ambiente 3 camadas e Server) . Ao selecionar Modo Server serão copiados para a pasta de instalação somente os arquivos necessários para o processamento de informações, ou seja, arquivos necessários para a execução do Host. Nesta opção, só é possível acessar a MDI, não é possível executar os aplicativos separadamente.
Passo a Passo para instalação do RM em N camadas Servidor de Aplicação:
|
Servidor de Jobserver:
É responsável pela execução dos Jobs/Processos, e pela comunicação diretamente com o banco de dados.
Abaixo configurações que diferenciam o Jobserver do AppServer:
Instalação Jobserver:
Para instalar um servidor de Jobs Server, temos que seguir os mesmo passos de instalação de um servidor de Aplicação, e após concluirmos a instalação da Biblioteca RM, é necessário habilitar o processamento de Jobs no servidor.
Existem duas formas de habilitarmos o processamento de Jobs:
Para que o processo seja iniciado juntamento com o host, é necessário acessarmos o gerenciamento de Alias e marcar a flag (Habilitar processamento de Jobs).
Quando a configuração for feita pelo alias, o Host processará somente o Job da base onde a flag estiver marcada. |
Configurações do alias abaixo:
Podemos utilizar o Cockpit para iniciar o processamento de Jobs de forma manual.
Exemplo abaixo:
Todos as máquinas que estiverem executando um Host serão adicionadas ao Cockpit, nele é possível identificar se as máquinas estão ou não executando processos e se estão processando somente Jobs locais ou não. |
Servidor Client:
Na camada cliente temos apenas os formulários que serão abertos na execução do programa. Ao instalar a Biblioteca RM em cada Cliente (no momento de instalação, selecionar ambiente 3 camadas e Client). Após esse passo será necessário informar o servidor de aplicação e porta de comunicação (Padrão 8050).
Ao selecionar o modo Client serão copiados para a pasta de instalação somente os arquivos necessários para execução dos sistemas. O sistema será configurado para direcionar todo o processamento de dados para o servidor de aplicação, ou seja, o processamento de dados será realizado na máquina em que a Biblioteca for instalada, selecionando a opção Modo Server.
Passo a Passo para instalação do RM em N camadas Servidor Client:
|
As configurações do RM.AliasManager.exe, são armazenadas no arquivo Alias.dat.
Caso não exista o arquivo “alias.dat”, ou não haver um alias para o banco de dados em questão, essa configuração será criada automaticamente assim que qualquer tela de processos é aberta, tornando essa questão transparente para o usuário. |
Configuração para um cliente utilizar dois servidores de APP, fazendo com que seja distribuindo a carga entre eles e melhorando a performance do sistema.
Exemplo abaixo de como será o funcionamento do sistema:
Nesse cenário o sistema fará o balanceamento por requisição, alternando as requisições entre os servidores. |
A máquina cliente será apontada para dois ou mais servidores de aplicação. No arquivo ".config" do aplicativo (exemplo: C:\totvs\CorporeRM\RM.Net.exe.config), é necessário inserir as tags "PORT" e "HOST" apontando para o outro servidor.
Exemplo abaixo:
Lembrando que poderá haver mais de dois servidores de aplicação. Neste caso, é necessário continuar identificando as tags. Exemplos: Host2, Host3, Port2 e Port3. |