Você está na página 1de 11

Arquitetura 4 Camadas

Visando a melhoria de desempenho no ambiente em 3 camadas, segue abaixo um


documento com instrues de como configurar o seu ambiente em 4 camadas sendo elas:
1 Servidor de aplicao este ser responsvel apenas por efetuar as operaes de
tela. Ser executado tambm para validao de login e execuo de consultas no banco.
Ex: Quando for solicitada a viso de alguma tela .NET est mquina ir executar as
funes necessrias e responder para o client com as informaes desejadas.
2 Servidor de Job este ser responsvel por executar os processos solicitados
pelos usurios. O host faz uma consulta na base de dados a cada 10 segundos para verificar se
existe ou no algum processo na fila de execuo. Caso exista, ele ir assumir a execuo do
mesmo. Neste ambiente possvel que seja inserido vrios servidores de Job Server que
poder ser visualizado na tabela GJOBSERVER
3 Client/Estaes este ser responsvel por executar as funcionalidades em Delphi
do sistema e ser responsvel tambm por executar os aplicativos instalados no ambiente.
4 Banco de dados Servidor de Banco de dados do cliente.
Neste ambiente teramos uma arquitetura similar figura abaixo:


Abaixo segue como configurar o ambiente desta forma.




1. Configurao do Servidor de Aplicao.

Esse servidor, alm de executar as requisies de janela, ser o responsvel por enviar
informaes ao banco de dados.


a. Instale a biblioteca, escolhendo a opo Ambiente 3 camadas / Server.
b. Aps instalao execute o RM.AliasManager.exe (C:\totvs\CorporeRM\RM.Net),
para configurao / endereo do servidor de banco de dados:

c. Na aba Servios, DESABILITE a opo de Habilitar Processamento de Job

Efetuando esta configurao, o servidor est pronto para enviar informaes ao banco de
dados e executar apenas as requisies de tela.

2. Configurando o servidor de processamento de Job.



a. Instale a biblioteca, escolhendo a opo Ambiente 3 camadas / Server.
b. Aps instalao execute o RM.AliasManager.exe (C:\totvs\CorporeRM\RM.Net),
para configurao / endereo do servidor de banco de dados:

c. Na aba Servios, HABILITE a opo de Habilitar processamento de Job.

Efetuando esta configurao, o servidor est pronto para receber informaes do banco de
dados e executar apenas os processos de job.



3. Configurando mquinas cliente:
A mquina cliente ser apontada para um servidor que vamos chamar de servidor de
aplicao, onde sero executadas apenas as requisies das telas.

No arquivo .config do aplicativo (exemplo:
C:\totvs\CorporeRM\RMLabore\RMLabore.exe.config), configure as tags:
a. <add key="JobServer3Camadas" value="true" />
b. <add key="Port" value="8050" /> porta do servidor, se necessrio.
c. <add key="Host" value="nome do servidor de aplicao" />
Este servidor de aplicao ser responsvel por executar apenas as
requisies de janelas do aplicativo.
A partir deste momento, o seu ambiente j est pronto para ser utilizado como 4
camadas.


Observaes Importantes:
1 Ao acessar o sistema, possvel visualizar todos os processos solicitados pelos
usurios na tela de Gerenciamento de Jobs. Nesta tela, a opo INICIAR SERVIDOR dever
estar DESABILITADO. A mquina responsvel pela viso das telas a mquina SERVIDOR DE
APLICAO e nesta, a opo de Processamento de Job dever estar desmarcado e por esse
motivo ao acessar a viso de gerenciamento de Jobs, o servidor dever estar parado.



2 Status dos Jobs Todo processo solicitado pelo usurio gravado na tabela
GJOBX e para cada execuo deste processo, gravado um registro na tabela
GJOBXEXECUCAO. Nesta tabela podemos tambm visualizar o status de cada processo. O
Status apresentado em cdigo e suas descries so:
None = 0,
O Job ainda no foi executado
Running = 1,
O Job est em execuo
Finished = 2,
O Job terminou normalmente a sua execuo
Canceled = 3,
A execuo do Job foi cancelada
Stopped = 4,
A execuo do Job comeou e foi interrompida
Error = 5,
Erro na execuo do job
Warning = 6,
O Job foi executado com avisos
Failed = 7,
Houve uma falha no servidor durante a execuo do Job e a mesma no terminou
corretamente ou no momento da execuo do Job, o servidor no estava ativo
Disabled = 8
A execuo do job est suspensa at ele ser habilitado novamente se ele for habilitado
antes da sua hora programada ele roda normalmente, se for depois da sua hora programada e
ele tiver recorrncia, sua recorrncia recalculada e ele atualizado para aquela datahora
recalculada; se ele no tiver recorrncia, seu status vira Canceled.
Aps a insero do Job na tabela GJOBXEXECUCAO, dependendo do seu Status, o
processo ser executado ou ficar agendado at o momento de execuo. O Host (servidor de
Job) faz uma consulta nesta tabela a cada 10 segundos para verificar a fila de processamento
de Jobs e caso exista um processo pendente, o host ir assumir a sua execuo.
Aps a execuo do processo, caso o usurio esteja aguardando o retorno das
informaes, o host que o executou ir enviar as informaes para a base de dados e o host do
servidor de aplicao, que o responsvel por carregar as informaes das telas, ir enviar
para tela do cliente a informao do fim da execuo com o resultado obtido.
3 Processos Simultneos No existe uma regra para definir o nmero de processos
simultneos na parametrizao do sistema. O que podemos frisar que quanto maior for o
nmero de processos simultneos, maior ser o consumo de Hardware e menor ser a fila,
porm, esse consumo deve ser obervado com o tempo para no impactar diretamente no
desempenho do sistema.
4 Processos em Execuo Atualmente no sistema possvel visualizar apenas os
processos da coligada corrente. Como medida de contorno para essa situao, possvel criar
uma consulta SQL que retorne todos os processos em execuo e esta seja anexada na tela de
Gerenciamento de Jobs.
5 Distribuio de Processos Por ser um processo novo, disponibilizado na verso
11.40, ainda no foi implementado por todos os aplicativos o atribudo com uma descrio
amigvel destes processos. Quando isso for disponibilizado, ele ser visvel na tabela
GBKSERVER. Uma vez cadastrado o processo, o servidor ir executar apenas esse processo e
esse processo ser executado tambm apenas por esse servidor.
6 Portal O portal ir interagir com o servidor de aplicao atravs do Host.
Recomenda-se que a instalao do Portal seja feita em um servidor separado para no haver
queda de desempenho com um host especfico para seu execuo. Neste caso, ao instalar a
biblioteca, poder ser feito a instalao padro (Ambiente Local). Os processos solicitados pelo
portal seguir o fluxo normal de execuo dos processos.
7 Client Oracle Nas maquinas que possuir o BDE, recomenda-se a instalao do
cliente do Oracle de 32 bits. Na maquina que ser o servidor de aplicao e servidor de job,
poder ser instalado o cliente de 64 Bits.
8 Sincronismo entre servidores de Job No existe uma forma de sincronizar os
servidores. A diviso dos processos, caso exista mais de um servidor de Job, ser feita atravs
da consulta que o Host faz na fila de execuo. Neste contexto existe a possibilidade de um
servidor executar vrios processos e outro ficar sem nenhuma execuo.



Distribuio de Processos

A partir da verso 11.40, existe no sistema uma funcionalidade que d para o usurio a
possibilidade de direcionar um processo para um determinado Servidor de Job (Caso existam
vrios). Com essa configurao, este servidor ir ficar responsvel apenas por executar este
processo.
Vantagem: Caso exista na rotina do cliente um processo muito demorado e que demanda
muitas requisies do host, este processo poder ser executado neste servidor exclusivo e no
ir gerar um gargalo nos demais processos.
Esta configurao poder ser feita da seguinte forma:
- Acessar a nova MDI
- Acessar a Aba AMBIENTE

- Acessar a opo Distribuio de Processos

- Ao acessar essa opo, sero listados todos os servidores de Job que o cliente possui
conforme figura abaixo:

- Neste momento, ser feito a especificao do processo para um determinados
servidor
- Habilite a opo de Apenas Selecionados e selecione o processo especfico. Neste
exemplo, foi selecionado o processo de Copia de Permisses do usurio.


- Observe que ao selecionar este processo, o servidor em questo ir executar apenas
o processo listado conforme figura abaixo:

Você também pode gostar