CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

21
CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014

Transcript of CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Page 1: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

CONFIGURAÇÃO DO RM EM N CAMADASJanus José Júnior – Abril/ 2014

Page 2: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Arquitetura RM

2

I) Introdução

II) Instalação em N camadas

III) Cockpit

IV) Alias.dat

V) Balanceamento Nativo

VI) Configuração

VII) Principais Tabelas

ÍNDICE

Page 3: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Introdução

3

Introdução

O objetivo deste documento é trazer uma visão do que é e como funciona a Arquitetura N Camadas, bem 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. A figura abaixo mostra como é a arquitetura Cliente Servidor:‐

Page 4: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Introdução

4

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.

APP - A camada de aplicação é responsável pela execução da Regra de Negócio e Cálculos além de fazer a comunicação com a Camada de Banco de Dados.

JOB - A camada de Jobs é responsável pela execução dos processos e também faz a comunicação com a Camada de Banco de Dados.

Page 5: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Introdução

5

A figura abaixo mostra como é a arquitetura em N camadas

Page 6: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Introdução

6

Servidor de Jobs:

É 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?

-GJOBX – Tabela onde são registrados os processos-GJOBXEXECUCAO – Tabela que controla a fila dos processos

O que é?

Page 7: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Introdução

7

Separação JobServer e AppServer

Como fazer?

• Habilitar JobServer3Camadas em todos os configs;

• Desabilitar a execução de Jobs no AppServer;

• Habilitar execução de Jobs no JobServer;

• Apontar todos os clientes para o AppServer;

• Reiniciar os Hosts.

Quais são as vantagens?

• Aproveitamento de hardware;• Isolamento para identificar problemas;

Page 8: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Instalação em N camadas

8

Para Instalar o RM em N Camadas, é necessário realizar os seguintes passos:

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.

Page 9: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Instalação em N camadas

9

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.

Client

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 Aplicação e porta de comunicação. (padrão 8050).

Page 10: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Instalação em N camadas

10

Servidor de Job

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, iremos habilitar o processamento de Jobs no servidor.

Page 11: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Instalação em N camadas

11

Existem duas formas de habilitarmos o processamento de Jobs:Para que o mesmo seja iniciado juntamente com o host, é necessário acessarmos o gerenciamento de Alias e marcar a falg (Habilitar processamento de Jobs).

Obs. Essa é uma configuração realizada para cada Alias, ou seja, o Host só processará o Job da base onde a flag estiver marcada.Para acessar as configurações do Alias, acesse o executável conforme imagens abaixo:

Page 12: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Cockpit

12

Também podemos utilizar o Cockpit para iniciar o processamento de Jobs de forma manual.

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.

Page 13: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Alias.dat

13

<DbConfig> <Alias>_local</Alias> <DbType>SqlServer</DbType> <DbProvider>SqlClient</DbProvider> <DbServer>T000000452</DbServer> <DbName>RM1160</DbName> <UserName>SYSDBA</UserName> <Password>masterkey</Password> <RunService>true</RunService> <JobServerEnabled>true</JobServerEnabled> <JobServerMaxThreads>3</JobServerMaxThreads> <JobServerLocalOnly>false</JobServerLocalOnly> <JobServerPollingInterval>10</JobServerPollingInterval> <ChartAlertEnabled>false</ChartAlertEnabled> <ChartAlertPollingInterval>20</ChartAlertPollingInterval> <ChartHistoryEnabled>false</ChartHistoryEnabled> <ChartHistoryPollingInterval>20</ChartHistoryPollingInterval> <RSSReaderMailEnabled>false</RSSReaderMailEnabled> <RSSReaderMailPollingInterval>10</RSSReaderMailPollingInterval> </DbConfig>

As configurações do RM.AliasManager.exe, são armazenadas no arquivo Alias.dat.

•Habilita o processamento de Jobs

•Determina a quantidade de Jobs executados simultaneamente.

•Determina se o servidor irá processar somente seus próprios Jobs.

•Define o intervalo de monitoramento da fila de processos.

Page 14: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Balanceamento Nativo

14

Balanceamento Nativo:• Podemos configurar um cliente para utilizar dois servidores de APP, assim

distribuindo a carga entre eles e melhorando a performance do sistema.

As figuras abaixo exemplificam como será o funcionamento do sistema:

Nesse cenário o sistema fará o balanceamento por requisição, alternando as requisições entre os servidores.

Page 15: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Balanceamento Nativo

15

Como configurar o Balanceamento Nativo?

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), vamos inserir as tags PORT e HOST apontando para o outro servidor da seguinte forma:

Lembrando que poderá ter mais de dois servidores de aplicação. Neste caso, temos que continuar identificando as tags: Host3, Host4, Port3 e Port4.

Page 16: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Configurações Gerais

16

Para garantirmos o correto funcionamento do sistema em um ambiente N camadas, os arquivos de configurações devem ser configurados respeitando as orientações a seguir.

AliaspathDefini um único alias.dat para ser utilizado por todos os Servidores de aplicação do ambiente, para isso,

devemos adicionar a tag nos arquivos RM.AliasManager.exe.config, RM.Host.exe.config e RM.Host.Service.exe.config.

Exemplo: <add key=“Aliaspath” value=“\\Servidor\Pasta” />

Obs. Como a configuração dos Alias no Servidor de APP é diferente do Servidor de Jobs, devemos utilizar um Alias para os servidores de Jobs e outro para os servidores de APP.

FileServerPath

Definir um único diretório para geração e leitura de arquivos temporários, assim todos os Hosts do ambiente irão gerar os arquivo somente nesse diretório. Desta forma, em ambientes que trabalham em N camadas, devemos adicionar a tag nos arquivos RM.Host.exe.config ou RM.host.Service.exe.config de todos os servidores de APP e Job.

Exemplo: <add key=“FileServerPath” value=“\\Servidor\Pasta” />

Page 17: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Configurações Gerais

17

LogPath Defini o caminho onde serão gerados os logs do sistema.

Exemplo: <add key=“LogPath” value= “\\Servidor\Pasta” />

LOCALIZATIONLANGUAGE

A tag LOCALIZATIONLANGUAGE determina em qual linguagem o sistema irá funcionar, habilitar essa tag evita que o RM valide qual a linguagem o sistema operacional esta configurado.

Exemplo: <add key=“LOCALIZATIONLANGUAGE” value “pt-BR” />

ENABLECOMPRESSION

Habilita a compressão de dados para melhorar o desempenho da rede, contudo o custo para compactação e descompactação dos dados em redes Gigabits, pode ser superior a transferencias sem a compactação. Assim é recomendado que em redes Gigabits a compactação de dados seja desabilitada.

Exemplo: <add key=“ENABLECOMPRESSION” value “true” />

Page 18: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Configurações Oracle

18

Visando melhorar a performance de acesso em bancos Oracle, existe um cache para armazenagem de dados do schema da base de dados. Este cache se faz necessário pois o "GetSchema" no Oracle tem um custo bastante caro. Para a correta utilização do mesmo, deve-se parametrizar o Config do Host da seguinte forma:

UseDbSchemaCache

Indica se o sistema guardará em cache os esquemas obtidos pelas consultas.

Exemplo: <add key="UseDbSchemaCache" value="true" />

DbSchemaCacheMaxSize

Define a quantidade de schemas que serão guardados em cache.

Exemplo: <add key="DBSchemaCacheMaxSize" value=“5000"/>

Importante: Apesar do valor default ser 100, o valor ideal de acordo com testes já realizados é 4000. Este valor deve ser utilizado com bastante critério, visto que, se o mesmo for muito grande, pode-se comprometer a performance do banco.

Page 19: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Outras configurações

19

Antivírus O custo para o antivírus monitore um pasta ou arquivo geralmente é alto, sendo assim, devemos configurar

uma exceção no antivírus, para que o mesmo não monitore a pasta de instalação do RM.

Segue abaixo os links para configuração do BDE.

BDE - Instalação e Configuração SQL - http://tdn.totvs.com/x/DwaxAw

BDE - Instalação e Configuração Oracle - http://tdn.totvs.com/x/oQWxAw

Page 20: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

Principais Tabelas

20

Tabelas relacionadas a fila de processos

• GRELBATCH

• GJOBLOG

• GJOBXLOG

• GJOBXEXECUCAO

• GJOBX

Tabela relacionada ao log de auditoria.• Zlog

Tabela relacionada ao histórico da execução de Cubos.• Qcubodata

Essas tabelas armazenam grande número de informações e por isso devemos executar o processo de manutenção periodicamente.

Page 21: CONFIGURAÇÃO DO RM EM N CAMADAS Janus José Júnior – Abril/ 2014.

2121

QUESTÕES ?

IMAGEM

CONFIGURAÇÃO DO RM EM N CAMADAS

Acesse a nossa comunidade R@ FRAMEWORK