Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Produto:

Microsiga Protheus

Versões:

11 e 12

Passo a passo:

O c-tree BoundServer (c-tree Server DLL) é, basicamente, um servidor c-tree que sobe junto (incorporado) com o Protheus Server. É recomendado seu uso em ambientes onde é utilizado apenas um Protheus Server como servidor de aplicação, onde os dicionários não têm seu acesso compartilhado com outros servidores Protheus. É possível configurá-lo para carregar arquivos de dicionário (SXs) em memória, tornando seu acesso ainda mais rápido.

Seguem abaixo inks de referência de documentações do C-tree BoundServer, com informações técnicas:

c-tree BoundServer
http://tdn.totvs.com/display/tec/c-tree+BoundServer

c-Tree Server com SXS em memória
http://tdn.totvs.com/pages/viewpage.action?pageId=208338982

Seção cTreeServerMaster
http://tdn.totvs.com/pages/viewpage.action?pageId=208338976


Segue abaixo procedimento de como configurar o arquivo appserver.ini e ctsrvr.cfg (da pasta Appserver) para utilizar o C-Tree Bound Server com arquivos em memória:

Aviso
titleAviso:

Apenas as tabelas informadas na configuração do .ini serão notificadas por aquele servidor Protheus. Nesta configuração, deve-se sempre especificar a extensão da tabela. Apenas devem ser especificadas tabelas ISAM do Ctree. O sistema de notificação não está preparado para trabalhar com arquivos do tipo Superfile (extensão .SPF).

Informações
titleImportante:

1. É recomendado que o binário esteja atualizado.

2. Não misturar arquivos de configuração "ctsrvr.cfg" do CtreeServer com o do BoundServer. Nas versões mais recentes do binário, esse arquivo vem junto da pasta Appserver


- Faça uma cópia da pasta raiz do seu balanceamento de carga, contendo as pastas "Appserver" do Master e dos Slaves
- Segue abaixo um exemplo de configuração dos arquivos:


APPSERVER.INI (MASTER)

Bloco de código
[General]
InstallPath=C:\TOTVS 12
CtreeMode=boundServer
Consolelog=1

[Drivers]
Active=TCP

[TCP]
TYPE=TCPIP
Port=1214

[LICENSECLIENT]
Server=localhost
Port=5555

[P12]
SourcePath=C:\TOTVS 12\Microsiga\protheus\apo\
RootPath=C:\TOTVS 12\Microsiga\protheus_data
CtreeRootPath=C:\TOTVS 12\Microsiga\protheus_data
StartPath=\system\
x2_path=
RpoDb=top
RpoLanguage=Portuguese
RpoVersion=120
LocalFiles=CTREE
Trace=0
localdbextension=.dtc

[DBAccess]
Alias=P12_1_14
Server=localhost
Database=MSSQL
Port=7890

[CtreeServerMaster]
ctUserId=ADMIN
ctUserPass=ADMIN
ctServerName=FAIRCOMS@localhost
memctUserId=ADMIN
memctUserPass=ADMIN
memctServerName=boundServer@localhost
Environments=P12
Files=sx3*.dtc,sx5*.dtc,sx6*.dtc,sx7*.dtc
ShowStatus=1

[ServerNetwork]
MasterConnection=0
Servers=Slave1,Slave2
 
[Slave1]
TYPE=TCPIP
Server=localhost
Port=1271
Connections=1

[Slave2]
TYPE=TCPIP
Server=localhost
Port=1272
Connections=1

 


CTSRVR.CFG (MASTER)

Bloco de código
SERVER_NAME         		BOUNDSERVER
COMM_PROTOCOL       F_TCPIP
COMM_PROTOCOL       FSHAREMM
LOG_SPACE           			96
CTSTATUS_SIZE       		-1000000
SKIP_MISSING_FILES  	YES
IDX_MEMORY          		128 MB
DAT_MEMORY          		128 MB
CONNECTIONS         		150
CONSOLE             			NO_MESSAGEBOX
CONSOLE             			NO_SHUTDOWN_PROMPT 



APPSERVER.INI (SLAVES)

Bloco de código
[General]
InstallPath=C:\TOTVS 12
CtreeMode=boundClient
Consolelog=1

[Drivers]
Active=TCP

[TCP]
TYPE=TCPIP
Port=1271

[LICENSECLIENT]
Server=localhost
Port=5555

[P12]
SourcePath=C:\TOTVS 12\Microsiga\protheus\apo\
RootPath=C:\TOTVS 12\Microsiga\protheus_data
CtreeRootPath=C:\TOTVS 12\Microsiga\protheus_data
StartPath=\system\
x2_path=
RpoDb=top
RpoLanguage=Portuguese
RpoVersion=120
LocalFiles=CTREE
Trace=0
localdbextension=.dtc

[DBAccess]
Alias=P12_1_14
Server=localhost
Database=MSSQL
Port=7890

[CtreeServerMaster]
ctUserId=ADMIN
ctUserPass=ADMIN
ctServerName=FAIRCOMS@localhost
Environments=P12
Files=sx3*.dtc,sx5*.dtc,sx6*.dtc,sx7*.dtc
ShowStatus=1

 


CTSRVR.CFG (SLAVES)

Bloco de código
COMM_PROTOCOL       F_TCPIP
COMM_PROTOCOL       FSHAREMM
LOG_SPACE           			96
CTSTATUS_SIZE       		-1000000
SKIP_MISSING_FILES  	YES
IDX_MEMORY          		128 MB
DAT_MEMORY          		128 MB
CONNECTIONS         		150
CONSOLE             			NO_MESSAGEBOX
CONSOLE             			NO_SHUTDOWN_PROMPT 



Observações:

Sobre as configurações dos arquivos:

- No arquivo appserver.ini do Master, na seção General, a linha CtreeMode dever ser =boundServer, e no appserver.ini dos Slaves, deve ser =boundClient


Appserver.ini:

[CtreeServerMaster]

Informações para conectar ao CTREE SERVER MASTER:

ctUserId=ADMIN -> Linha não obrigatória. O valor "ADMIN" é Default.

ctUserPass=ADMIN -> Linha não obrigatória. O valor "ADMIN" é Default.

ctServerName=FAIRCOMS@localhost -> Nome do servidor do Ctree Server principal (não o embedded). A primeira parte antes do @ indica o nome do servidor, definido na linha SERVER_NAME do arquivo ctsrvr.cfg do CtreeServer, enquanto a segunda parte, após o @, indica o endereço IP do servidor onde está este CtreeServer

 

Informações para conectar ao CTREE BOUND SERVER:

memctUserId=ADMIN -> Linha não obrigatória. O valor "ADMIN" é Default.

memctUserPass=ADMIN -> Linha não obrigatória. O valor "ADMIN" é Default.

memctServerName=boundServer@localhost -> Nome do servidor do Ctree Bound Server (embedded). A primeira parte antes do @ indica o nome do servidor, definido na linha SERVER_NAME do arquivo ctsrvr.cfg que está na pasta Appserver, enquanto a segunda parte, após o @, indica o endereço IP do servidor onde está este Ctree Bound Server.

 

Environments=P12 -> Lista de ambientes que utilizarão o C-Tree Bound Server com arquivos em memória. Esta chave informa quais ambientes do servidor serão verificados, durante a preparação do ambiente do processo (Thread) de notificação, para realizar a busca por arquivos especificados na configuração FILES. Somente é possível indicar para notificação ambientes que utilizem CTREE para controle das tabelas ISAM (SXS).

 

Files=sx3990.dtc,sx5*.dtc,sx6??0.dtc,sx7*.dtc -> Arquivos a serem utilizados em memória. Podem ser especificados um ou mais arquivos, separados por vírgula, com paths absolutos em disco, relativos ao ROOTPATH do ambiente, ou apenas o nome do arquivo localizado a partir do STARTPATH do ambiente. Podem ser utilizados caracteres de máscara “*” e ”?”.

 

ShowStatus=1 -> Mostra as mensagens de informação da notificação do Ctree. Pode ser 0 ou 1. O Default é 0.