<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[insoft-report-executor - SYNC mode]]></title><description><![CDATA[<p dir="auto">O modo de operação padrão do insoft-report-executor é ASYNC. Isso significa que os relatórios agendados são executados conforme a fila de agendamentos usando os recursos configurados na aplicação (threads disponíveis etc.). Essa é a maneira como os relatórios das aplicações são gerados: o agendamento é um "processo agendado" que precisa aguardar a geração.</p>
<p dir="auto">Em algumas ocasiões é necessário ignorar essa fila e fazer a execução do relatório assim que o usuário realiza alguma ação no sistema. Para isso, existe o modo SYNC. Este formato não está documentado no manual de implantação pois é um recurso que deve ser usado somente em último caso.</p>
<p dir="auto">Um caso de uso do modo SYNC é a aplicação <em><strong>gerador-espelho-ponto</strong></em> da MWM.<br />
Esta aplicação customizada é uma tela onde o usuário informa dados do espelho de ponto a ser gerado, e ao clicar no botão, a aplicação aciona a pontosoft-api, que solicita ao insoft-report-executor a execução do espelho de ponto de forma imediata, onde a response da request acionada pelo usuário contem o espelho de ponto gerado para download do navegador.</p>
<p dir="auto">Para configurar o modo SYNC é necessário seguir os seguintes passos:</p>
<ul>
<li>O Tomcat onde roda o insoft-report-executor original (ASYNC) deve se manter como está, sem alterações;</li>
<li>Instalar um novo Tomcat no servidor do cliente. Este Tomcat conterá apenas um deploy do insoft-report-executor que será específico para o cenário SYNC;</li>
<li>Adicionar na JVM deste novo Tomcat a variável de ambiente relacionada ao diretório do arquivo de configurações externas deste insoft-report-executor;</li>
<li>Neste arquivo externalizado do insoft-report-executor do Tomcat novo, usar as mesmas configurações do application.yml do executor padrão que está no Tomcat "oficial", mudando apenas o valor da propriedade <strong>grails.serverURL</strong> e <strong>insoftReportExecutor.mode</strong>:</li>
</ul>
<pre><code>grails.serverURL: "http://localhost:xxxx/insoft-report-executor" # URL deste novo insoft-report-executor (se atentar ao valor da porta deste novo report-executor, que será diferente do report-executor original);
insoftReportExecutor.mode: "SYNC" # Modo de operação específico deste executor novo
</code></pre>
<p dir="auto">Dessa forma, quando o insoft-report-executor novo estiver no ar, ele se registrará ao insoft-report-gateway padrão, que irá usar este insoft-report-executor quando receber um agendamento que deve ser executado imediatamente.</p>
<p dir="auto"><img src="/assets/uploads/files/1776709830207-80809401-ecca-4046-b2ce-48a0d577a4a4-sync-async.jpg" alt="80809401-ecca-4046-b2ce-48a0d577a4a4-sync-async.jpg" class="img-responsive img-markdown" /></p>
<p dir="auto"><em><strong>Obs 1: de maneira resumida, essa arquitetura permite o deploy de inúmeros insoft-report-executor que se registram em um mesmo insoft-report-gateway, que acionara o executor disponível de acordo com o modo de operação e priorização das threads.</strong></em></p>
<p dir="auto"><em><strong>Obs 2: somente usar SYNC mode quando houver uma rotina que requer execução imediata do relatório para que esteja disponível ao usuário (quando não pode haver o login no sistema para acesso a tela de agendamentos).</strong></em></p>
]]></description><link>http://insoft-docker1:4567/topic/494/insoft-report-executor-sync-mode</link><generator>RSS for Node</generator><lastBuildDate>Fri, 23 Oct 2026 07:24:53 GMT</lastBuildDate><atom:link href="http://insoft-docker1:4567/topic/494.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 20 Apr 2026 18:35:56 GMT</pubDate><ttl>60</ttl></channel></rss>