Histórico da Página
...
- O atributo id é o identificador do registro;
- O atributo idProductConnection é o id do registro da entidade ProducConnection;
- O atributo idSchemaDefinition é o id do registro da entidade SchemaDefinition;
- O atributo versionSchemaDefinition é a versão do SchemaDefinition relacionado. Este atributo não precisa ser passado para criar o relacionamento. Preenchido automaticamente;
- O atributo nameSchemaDefinition é o nome do SchemaDefinition relacionado. Este atributo não precisa ser passado para criar o relacionamento. Preenchido automaticamente;
- O atributo enableStandalone será explicado no tópico Modo Standalone;
- O atributo enablePublishRemote será explicado no tópico Modo Publish Remote;
Informações | ||
---|---|---|
| ||
{ "enablePublishRemote": "true", false", "versionSchemaDefinitoin": "não_precisa_de_valor", |
Modo Standalone
Métodos de Publicação de Mensagens
Existem dois métodos de publicação de mensagens no TOTVS Connector Client, a publicação local (Standalone) e a publicação remota (PublishRemote). Esses métodos são configurados em dois níveis: TOTVS Connector Client e Product Connection Schema.
Nível TOTVS Connector Client:
Ao subir um TOTVS Connector Client, temos os dois parâmetros de publicação para definirmos se publicará mensagens localmente, remotamente (TOTVS Connector Server) ou em ambos, ou seja, um é independente do outro. Por padrão temos a publicação remota (PublishRemote) ativa e a publicação local (Standalone) desativa. Em um cenário com apenas um método de publicação ativo, como por exemplo o cenário padrão, o TOTVS Connector Client irá publicar somente de maneira remota, ou seja, mesmo que em nível de Product Connection Schema seja requerido a publicação local, não irá ser publicada a mensagem localmente.
Nível Product Connection Schema:
Tendo um cenário com os dois métodos de publicação ativos, ou seja, o TOTVS Connector Client não irá travar nenhum método de publicação, levamos em consideração outro filtro para fazer a publicação das mensagens. Esse filtro é sobre o relacionamento entre um SchemaDefinition e um Product Connection, sendo nesse ponto a definição de onde os dados gerados serão publicados, sendo feito por meio dos valores do enablePublishRemote e enableStandalone.
Modo Standalone
O Modo Standalone é uma forma de trabalhar apenas no ambiente OnPremise. Por exemplo, integrar dois ou mais produtos que estão em ambientes OnPremise/Nuvem Privada (Private Cloud). Para habilitar o Modo Standalone é preciso inicializar o TOTVS Connector Client O Modo Standalone é uma forma de trabalhar apenas no ambiente OnPremise. Por exemplo, integrar dois ou mais produtos que estão em ambientes OnPremise/Nuvem Privada (Private Cloud). Para habilitar o Modo Standalone é preciso inicializar o TOTVS Connector Client com o standalone ligado. Ao habilitar o standalone, o TOTVS Connector Client exigirá uma conexão com uma instância do RabbitMQ, instalada, por padrão, no mesmo ambiente. Uma vez definido o TOTVS Connector Client como standalone, deve-se habilitar o ProductConnectionSchema como standalone.
Para fins explicativos, suponha que exista um produto A, com um ambiente OnPremise com banco de dados, TOTVS Connector Client e RabbitMQ instalados.Com o standalone desabilitado, qualquer alteração de registros no OnPremise com banco de dados do produto A, o TOTVS Connector Client será notificado e enviará estes registros para o TOTVS Connector Server, que está disposta em Cloud e RabbitMQ instalados.
Com o standalone habilitado, o TOTVS Connector Client enviará os registros do produto A para a instância do RabbitMQ, que também está no OnPremise. Com isso, outros produtos que estão no OnPremise, por exemplo os produtos B e C, poderão "escutar" uma fila na instância do RabbitMQ para receber estes mesmos registros. Além disso, é possível que os produtos B e C publiquem os registros no RabbitMQ. Desta forma, o TOTVS Connector Client será notificado e processará os registros no banco de dados do produto A.
Na representação seguinte, é apresentado o diagrama do Modo Standalone:
Publish Remote
Com o publishRemote habilitado, qualquer alteração de registros no banco de dados de um produto, irá notificar o TOTVS Connector Client para que faça o envio destes registros para o TOTVS Connector Server - que está disposta em Cloud - Fazendo com que essas alterações estejam disponíveis por uma fila do RabbitMQ para o algum outro produto que seja interessante tê-las.
External Event
Um ExternalEvent (ou Evento Externo, em Português), é um endpoint no TOTVS Connector Client que aceita mensagens via requisição HTTP POST, sendo possível enviar dados por aplicações que não possuem integração com o RabbitMQ. Este endpoint aceita apenas o envio de mensagens. Importante mencionar que não há um endpoint que seja possível recuperar mensagens. As mensagens somente são disponibilizadas no RabbitMQ (local) via modo standalone.
...