Controle de requisições recebidas pelo InvoiCy

Última atualização em: 19 de abril, 2016

 

Buscando melhorar a usabilidade da aplicação por parte dos usuários Parceiros e evitar problemas durante a realização de uma tarefa, seja de consulta, reenvio ou cancelamento de um documento, o InvoiCy conta com um controle das requisições recebidas, em decorrência de consumo indevido do Web Service, caracterizado por um número excessivo de conexões em um curto espaço de tempo.

Esse processo consiste em bloquear uma requisição que se repita mais de ‘N’ vezes dentro de um determinado período de tempo, pois ocorriam situações onde a mesma requisição era enviada várias vezes para o InvoiCy, o que sobrecarregava a aplicação, que não conseguia processar as requisições recebidas em um tempo aceitável. Nesses casos, normalmente o ERP está em um LOOP realizando uma tarefa (consultando, reenviando, cancelando) referente a algum documento, mas excede um número razoável de conexões em um curto espaço de tempo. O bloqueio é preventivo, para que esse loop não cause lentidão no sistema.

Para que isso não aconteça é preciso revisar/programar a integração considerando que:

  • Em caso de reenvio ou consulta de documento, deve-se adicionar um “sleep” entre uma e outra conexão, de 15 segundos, por exemplo.
  • Limitar o número total de consultas: se o sistema realiza uma consulta a cada 30 segundos, ele fará 20 consultas em um intervalo de cinco minutos. Se ainda assim não obtiver o retorno desejado, é importante que o sistema pare o loop de consultas, e deixe para o usuário fazer a consulta manualmente, ou agende para voltar a executar depois de um intervalo maior (2-5 minutos), realizando uma nova tentativa.
  • A implementação desse controle não irá impactar na forma como o usuário integra com a aplicação, onde o mesmo poderá enviar várias vezes a mesma requisição, porém após um determinado número de vezes o InvoiCy irá bloquear e não processará as requisições recebidas. Passado o período de bloqueio, essas requisições serão processadas e enviadas. É importante destacar que o InvoiCy irá bloquear apenas a requisição que foi enviada diversas vezes, e não a empresa. E o tempo de bloqueio e a quantidade de requisições será controlada por módulo.

Porém, se o usuário não seguir as recomendações acima e mesmo após a requisição ser bloqueada temporariamente continuar enviando várias vezes essa mesma requisição, o InvoiCy irá bloquear a requisição de forma permanente, onde será necessário entrar em contato com nossa equipe de suporte para efetuar o desbloqueio da requisição.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s