Jump to content

dev botao

SAT e PHP - lentidão


Eder J. Silva
Go to solution Solved by José M. S. Junior,
  • Este tópico foi criado há 1247 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Pessoal boa tarde!

Consegui fazer a integração, utilizando até o exemplo que veio no próprio ACBR, entre um ERP em PHP/MySQL e o ACBR com socket retornando json.
Porém notei que está um pouco lento o processo quando o ERP envia para o socket o .ini para gerar, autorizar e depois imprimir pelo ESCPOS.

Para você terem uma ideia é um processo que está demorando em média 25 a 40 segundos para cada geração/impressão.

A internet é fibra ótica e tem uma velocidade de download e upload de 50Mb o que creio que não seria o problema, até então.

O passo a passo que faço hoje é:
 1 - Abro o socket

2 - Envio o SAT.Inicializar()

3 - Envio SAT.CriarEnviarCFe('conteudo do ini') (nesse processo eu dou um loop de até 3 tentativas aguardando 2 segundo em cada tentativa para poder receber a resposta do socket, pois notei que as vezes autorizava mas o retorno vinha vazio[por isso tento até 3x caso não tenha retorno, ou até que tenha um retorno do scoket])

4 - Se tudo deu certo eu abro novamente a conexão com o Socket e envio o  ESCPOS.setporta("COM13")(pois seria a impressora de impressão dos Cupons)

5 - SAT.Inicializar()

6 - SAT.ImprimirExtratoVenda("caminho retornado pelo CriarEnviar")

7 - SAT.Desinicializar();

8 - Fecho a conexão do socket.

 

Gostaria da ajuda de vocês para saber se alguém já fez esse tipo de integração, e se existe alguma forma de melhorar/otimizar esse tempo, ou sé é um tempo relativamente "normal".

 

Desde já agradeço a atenção de todos.

Link to comment
Share on other sites

  • Moderadores
  • Solution

Boa tarde Elder, neste caso precisa considerar o tempo de resposta do próprio aparelho, conforme você mesmo citou. O ideal é realizar os mesmo testes localmente para saber qual seria esse tempo e posteriormente ver a diferença utilizando TCP/IP... 

Note que a configuração TCP/IP tem um timeout de espera na sua aplicação esse timeout pode ser um pouco maior para evitar de encerrar a comunicação antes da retorno.

obs: O passo 5 - SAT.Inicializar() não é necessário.

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...