Histórico da Página
...
REST_START01. DEFINIÇÃO
O consumo de licença por demanda é uma solução no Protheus para permitir o serviço REST consumir licenças somente quando uma API está em execução, ao invés de manter permanente o consumo de uma licença para cada Working Thread em funcionamento no REST.
...
Mais informações sobre isso no tópico 8 dessa documentação.
05. FUNCIONAMENTO DAS SESSÕES
- REST_START
Função REST_START no Protheus inicializa a comunicação entre sistemas usando a arquitetura REST. é um padrão amplamente utilizado na criação de APIs para permitir a troca de dados via HTTP (como GET, POST, PUT, DELETE).
- REST_CONNECT
Função estabelece uma conexão inicial com um serviço RESTful utilizando o protocolo HTTP. Responsável por iniciar a comunicação entre cliente e API.
- REST_EXIT
Função é responsável pelo encerramento a comunicação RESTful de forma adequada, Ela garante que a conexão HTTP seja finalizada corretamente.
06. ERROS
O Erro 503 é devolvido na requisição da API caso não exista Licença disponível. Existem diversos motivos para uma licença não estar disponível, tais como:
- Todas as licenças estão em uso
- O License Server não possui nenhuma licença para o módulo/aplicativo solicitado
- O License Server não está configurado
...
07.
...
CHAVES DE LOG
Caso o licenciamento apresente problemas, ative as chaves de log para análise do problema e envie o console para a equipe de suporte.
...
A ativação das chaves acima implica em perda de performance, pois haverá o tempo de I/O para escrita no console, por esse motivo devem ser ativadas somente caso haja necessidade de análise de problemas.
...
08.
...
PERFORMANCE
A utilização do modelo de licenciamento por demanda no REST adiciona de 50 a 80 milisegundos no tempo de cada requisição de API, referente ao tempo de comunicação com o License Server.
Nos testes executados em laboratório foi percebido uma perda de 20% de performance em relação a quantidade de requisições atendidas por segundo.
...
09.
...
CONSUMO DE LICENÇAS DE APLICATIVO
O consumo de licença por demanda permite o uso de uma licença diferente da TOTVS I quando a requisição da API tem como origem o API Manager da TOTVS (WSO2 ou Mingle).
...
Veja aqui a documentação do Mingle.
Caso o aplicativo esteja no ambiente de homologacao ou desenvolvimento do Mingle, é necessario adicionar na seção do ambiente do Protheus uma chave para configurar o Mingle.
...
MINGLE=DEV (Para desenvolvimento)
MINGLE=HOM (Para homologação)
10. EXEMPLO DE CONFIGURAÇÃO DO REST
Bloco de código |
---|
[ENVIRONMENT] DBALIAS=DOCKER DBDATABASE=POSTGRES DBPORT=7801 DBSERVER=dbaccess ROOTPATH=/app-data/ RPODB=top RPOLANGUAGE=portuguese RPOVERSION=120 SOURCEPATH=/app-data/apo STARTPATH=/system/ FWFRAME_TIMELS=1 FWFRAME_TRACELS=1 [HTTPJOB] ENVIRONMENT=ENVIRONMENT MAIN=HTTP_START [HTTPREST] Port=8082 SECURITY=1 URIs=HTTPURI,APP [HTTPV11] Enable=1 Sockets=HTTPREST TimeOut=120 [HTTPURI] AllowOrigin=* CORSEnable=1 Instances=1,1,1,1 OnConnect=REST_CONNECT OnExit=REST_EXIT OnStart=REST_START PrepareIn=T1 Stateless=0 URL=/v1/ [APP] AllowOrigin=* CORSEnable=1 Instances=1,1,1,1 OnConnect=REST_CONNECT OnExit=REST_EXIT OnStart=REST_START PrepareIn=T1 Stateless=1 URL=/app/ |
...