Ir para conteúdo
  • Cadastre-se

Dev Comercial

Membros Pro
  • Total de ítens

    55
  • Registro em

  • Última visita

Sobre Dev Comercial

Contact Methods

  • Website URL
    www.meganews.com.br

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

Dev Comercial's Achievements

Contributor

Contributor (5/14)

  • Dedicated Rare
  • Reacting Well Rare
  • First Post
  • Collaborator Rare
  • Week One Done

Recent Badges

6

Reputação

  1. Bom dia. Tem alguma novidade ou um prazo para a resolução ?
  2. Entendi. Mas como esse exemplo Python prova que a lib está funcionando corretamente em multithread? Porque o problema apresentado é nessa situação. A questão não é usar um servidor. O exemplo desenvolvido em go não usa um servidor exatamente por isso. Ele foi construído com o mínimo de dependências possíveis para mostrar que é a lib em situação de multithread que está com problema. Resumindo: LibNFe: * Funciona com multithread e multiplas requisições no golang * Funciona com multithread e multiplas requisições no python mesmo sem nenhuma fila ou implementação explicita de threads Não apresenta "segmentation error" LibMDFe: * Não funciona com multithread e multiplas requisições no golang * Não funciona com multithread e multiplas requisições no python mesmo sem nenhuma fila ou implementação explicita de threads Apresenta "segmentation error" Logo se as duas aplicações tem o mesmo comportamento usando as mesmas duas libs, o problema não é a lib MDFe em si? Implementar uma fila em uma aplicação python tornaria a aplicação single thread e não multi thread uma vez que seria necessário aguardar uma requisição terminar para ir para a outra.
  3. Fizemos o teste substituindo a lib mdfe pela nfe no código python e na nfe não ocorre o erro. Um comportamento similar ao da aplicação go. O teste também foi feito com o mesmo comando ab
  4. Executei aqui seu código. Realmente com uma request e um cliente por vez funciona. Testamos com multiplas request e clientes que é o que código go simula e nesse caso ocorre o erro. Para realizar os teste em seu código usamos o programa apache ab. Segue o comando. ab -n 10 -c 5 http://localhost:5000/versao Obs: esse programa pode ser instalado com apt install ab ACBrLibMDFe-20241002.log
  5. Bom dia pode me mandar esse código python para eu verificar a diferença para o meu. temos o mesmo problema aqui no c# que inclusive contribuirmos com vocês na atualização para dotnet 8. O mais estranho que no nosso exemplo o problema não ocorre quando a lib é nfe.
  6. O valor o buffer é fixo em 255 da para ver isso na linha 17 e na função bufferNew que esta no exemplo
  7. Certo, mas olhando o código das duas libs é para o comportamento ser igual para as duas né ? Já que para esse método de versão é o acbrlibcomum que resolve.
  8. Segue um exemplo simples o que estou usando para teste o comportamento da lib multi thread. nesse exemplo é possível trocar entres a lib nfe e mdfe e ver o comportamento delas https://gitlab.com/julio.novaes/exemploacbr Para executar o exemplo basta ter o ambiente configurado e mudar o caminhos para lib no código. O problema é quando executamos com mdfe ela quebra de forma intermitente
  9. Cara você estaria disponível para discutir esse problema através do discord la fica mais fácil para eu explicar o problema
  10. Realmente dessa forma que mostrou, o problema não ocorre. O problema acontece com um múltiplas requisições simultâneas. no caso você pode constatar o problema gerando varias thread manualmente como no exemplo go ou transformando aplicação em servidor por exemplo com flask e utilizar o comando ab para simular varias requests.
  11. Fiz uma imagem de container com as dependências configuradas para adiantar o desenvolvimento está disponível em https://hub.docker.com/repository/docker/julionovaessouza/acbrmdfe/general
  12. Estou usando o debian bookworm e a OpenSSL 3.0.14 porém com OpenSSL Legacy Provider habilitado por conta da compatibilidade com a biblioteca. a versão 1.1 não pode ser instalada nas distribuições como debian devido a vulnerabilidades o Legacy Provider garante a compatibilidade e tanto que consigo fazer alguns envios.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.