Pesquisar na Comunidade
Showing results for tags 'linux-x64'.
Encontrado 6 registros
-
Ei, galera do fórum ACBr! Quem aí já perdeu noites de sono brigando com crashes misteriosos no PHP-FPM ao tentar integrar a ACBrLib via FFI? Pois é, eu passei por isso e resolvi compartilhar essa jornada aqui no tópico, pra ajudar quem tá no mesmo barco. Vamos destrinchar o problema, as tentativas frustradas e a solução que salvou o dia: Laravel Octane com RoadRunner. Se você tem dicas extras ou variações, comenta ai! Resumo Rápido (Pra Quem Tem Pressa) O vilão? SIGSEGV ao carregar ACBrLib via FFI::cdef() no PHP-FPM, culpa da dependência gráfica libgdk-x11-2.0.so que não joga bem em times multi-processo. Tentativas como FPM solitário ou FrankenPHP deram dor de cabeça, mas o herói final é Laravel Octane com RoadRunner: workers isolados, PHP do sistema e zero recompilações. Funciona como mágica no CLI, melhora performance e acaba com os crashes. Ah, e queues são um plano B infalível pra offloadar o trabalho pesado! O Problema: O SIGSEGV, Esse Inimigo Invisível Sintomas Clássicos Boom! Seu worker FPM morre com um "exited on signal 11 (SIGSEGV)" nos logs – clássico de quem integra libs nativas. Frontend grita "502 Bad Gateway" ou "Connection reset by peer". No Laravel? Logs cheios de drama: "Erro crítico ao carregar a biblioteca ACBr!". Tudo isso rola no código inocente: $ffi = FFI::cdef(file_get_contents($importsPath), $dllPath); // Aqui o bicho pega, galera! Ambiente do Crime PHP 8.3+ no FPM. Laravel 12, FFI on fire. ACBrLib NFe (aquela .so marota). Linux (Ubuntu/Debian) com Interface Gráfica, porque no Windows com Laragon, era paz e amor graças ao php-cgi sem forks malucos. Alguém aí usa Windows e confirma? Causa Raiz: Culpa da GDK, Essa Dependência Gráfica Teimosa A estrela problemática é libgdk-x11-2.0.so (dependência do ACBrLib via GTK+). Verifique com: ldd libacbrnfe64.so | grep gdk # Spoiler: Ela aparece e causa o drama Por quê? GDK adora recursos X11 (display, eventos), mas em FPM multi-processo, é como convidar um elefante pra uma festa em apartamento: race conditions, violações de memória e... SIGSEGV! Libs MT como ACBr não curtem forks mas threads sim, processos clones nem tanto. No fórum, já vi posts parecidos e recomendações ao uso do CONSOLE-MT; alguém tem um workaround pra GDK sem Xvfb? Tentativas Frustradas 1. FPM Solitário: "Só Eu e Meu Processo" Ideia: Configurar pm.max_children=1 Resultado: Ainda crasha, e o server vira lesma. Lição: Não adianta maquiar o problema. Alguém testou isso com ACBr? 2. FrankenPHP: O "Monstro" Promissor Top em performance (até 4x mais rápido que FPM!), mas precisa recompilar PHP com FFI embed -> um pesadelo. Abandonado porque, né? Vida curta pra isso. (Dica: Em 2025, ele brilha em setups simples, mas não substitui Nginx/Apache em tudo. Solução Vencedora: Laravel Octane + RoadRunner – O Duo Dinâmico pra ACBr! Por quê? RoadRunner usa PHP CLI isolado (sem forks malucos), mantém workers persistentes e adora FFI. Benchmarks de 2025 confirmam: throughput insano! Escalável e evita overhead, perfeito pro nosso mundo fiscal. Passos Rápidos (Atualizados com Dicas de 2025) Verifique FFI no CLI: php -m | grep ffi. Se não, ative em /etc/php/8.3/cli/conf.d/20-ffi.ini. Instalar RoadRunner # Baixar RoadRunner wget https://github.com/roadrunner-server/roadrunner/releases/latest/download/rr_linux_amd64.deb # Instalar sudo dpkg -i rr_linux_amd64.deb sudo apt-get install -f -y # Verificar instalação rr --version Instalar Laravel Octane cd /var/www/seu-projeto # Instalar Octane composer require laravel/octane # Publicar configuração php artisan octane:install Quando perguntado, escolha: RoadRunner Configurar RoadRunner Crie/edite o arquivo .rr.yaml na raiz do projeto: version: "3" rpc: listen: tcp://127.0.0.1:6001 server: command: "php" user: "" group: "" env: - APP_RUNTIME: RoadRunner http: address: 0.0.0.0:80 middleware: ["gzip"] pool: num_workers: 4 max_jobs: 0 allocate_timeout: 60s destroy_timeout: 60s logs: level: error output: stdout err_output: stderr Configurar Octane Edite config/octane.php: 'server' => env('OCTANE_SERVER', 'roadrunner'), 'max_execution_time' => 30, Criar Serviço Systemd Crie o arquivo /etc/systemd/system/octane.service: [Unit] Description=Laravel Octane RoadRunner Server After=network.target postgresql.service [Service] Type=simple User=root WorkingDirectory=/var/www/seu-projeto Environment="PHP_INI_SCAN_DIR=/etc/php/8.3/cli/conf.d" Environment="FFI_ENABLE=1" Environment="DISPLAY=:99" ExecStart=/usr/bin/php -d ffi.enable=1 /var/www/seu-projeto/artisan octane:start --server=roadrunner --host=0.0.0.0 --port=80 --rpc-host=127.0.0.1 --rpc-port=6001 Restart=always RestartSec=3 [Install] WantedBy=multi-user.target Importante: Ajuste WorkingDirectory para o caminho do seu projeto Ajuste a porta se necessário (80 requer root, ou use 8000 e configure proxy reverso) -d ffi.enable=1 garante que FFI está habilitado Habilitar e Iniciar Serviço # Recarregar systemd sudo systemctl daemon-reload # Habilitar serviço (inicia no boot) sudo systemctl enable octane.service # Iniciar serviço sudo systemctl start octane.service # Verificar status sudo systemctl status octane.service # Ver logs sudo journalctl -u octane.service -f Xvfb ainda é amigo: apt install xvfb && Xvfb :99 &. Permissões? chown www-data pra evitar birras. Comparação: FPM vs. RoadRunner Aspecto PHP-FPM RoadRunner FFI/ACBr Explode em SIGSEGV Roda suave como manteiga Perf. Boa, mas lenta em picos Estelar – workers eternos! Manut. Fácil, mas crash-prone Média, mas vale o ouro Humor "Crash? De novo?!" "Pronto pro próximo request!" Troubleshooting Rápido Serviço não liga? journalctl -u octane -f – logs salvam vidas. Workers morrendo? Cheque memória (free -h) ou leaks no código. Porta ocupada? lsof -i :80 e mude pra 8000 com proxy. Se RoadRunner der PT, queues são backups ótimos, simples e crash-free! Referências Atualizadas (2025 Edition) Laravel Octane Docs. RoadRunner.
-
- 1 comentário
-
- 3
-
-
- acbrmonitorplus
- x64
-
(e 1 mais)
Tags:
-
Olá a todos, Estou tentando criar um monitor utilizando o ACBrLib e o Java Spring Boot. Para isto, olhei os Demos do Java dentro do SVN. Consegui rodar o projeto no Linux com OpenJDK 11 criando um novo objeto. public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); try { acbrNFe = new ACBrNFe(); System.out.println("ACBR Versão = " + acbrNFe.versao()); // System.out.println(acbrNFe.statusServico()); System.out.println("Fim do Teste"); } catch (Exception ex) { System.out.println(ex); } } O problema está quando vou ler o Status do serviço com o acbrNFe.statusServico(). Ele apressenta erro de senha do certificado. java.lang.Exception: WebService Consulta Status serviço: - Inativo ou Inoperante tente novamente. Erro ao ler informações do Certificado. Provavelmente a senha está errada Pelo que entendi nos fóruns, a senha do arquivo ACBrLib.ini já tem que estar criptografada. Porém não entendi como consigo fazer isto utilizando o Java. Alguém pode me ajudar como eu iria criptografar a senha pelo Java? Obrigado.
-
Problemas Servidor de aplicação Delphi 10.3.3 webbroker Linux Centos 8
um tópico no fórum postou automacaosamos Dúvidas Gerais sobre o ACBr
Estou testando o acbr no delphi 10.3.3 pro linux construi um servidor de aplicacao, para envio de NFE e manifestos sem usar nada de impressao, por questao de compatibilidade funcionou perfeito no CentOS 7 instalando as bibliotecas gtk3-devel e libxml2-devel. instalei o CentOS8 e fiz a mesma preparacao do ambiente, mas estou recebendo essa mensagem: ------------------------------------- No CentOS 8 [root@localhost acbr]# ./acbrserver Unable to init server: Não foi possível conectar: Conexão recusada Enter a Command: - "start" to start the server - "stop" to stop the server - "set port" to change the default port - "status" for Server status - "help" to show commands - "exit" to close the application ->- Starting HTTP Server on port 8090 ->^CEControlC: Control-C hit [root@localhost acbr]# ---------------------------------------- No CentOS 7 [root@localhost acbr]# ./acbrserver Enter a Command: - "start" to start the server - "stop" to stop the server - "set port" to change the default port - "status" for Server status - "help" to show commands - "exit" to close the application ->- Starting HTTP Server on port 8090 ->^CEControlC: Control-C hit [root@localhost acbr]# por ter essa mensagem: Unable to init server: Não foi possível conectar: Conexão recusada nao consigo startar o acbrserver como serviço alquem passou por isso- 8 replies
-
- linux-x64
- delphi 10.3.3
-
(e 1 mais)
Tags:
-
linux-x64 ACBrMonitorPLUS - Linux - 64 bits
um tópico no fórum postou Daniel Simoes ACBrMonitor PLUS
ACBrMonitorPLUS - Linux - 64 bits Visulizar Arquivo ACBrMonitorPLUS compilado em Linux x64. Saiba mais sobre o ACBrMonitorPLUS, Clique Aqui Para acompanhar todo o histórico de alterações acesse o arquivo completo: ACBrMonitor-change-log.txt Autor Daniel Simoes Enviado 29-11-2016 Categoria ACBrMonitorPLUS - PRO-
- 1
-
-
- acbrmonitorplus
- x64
-
(e 1 mais)
Tags:
-
ACBrMonitorPLUS - Linux x64 Visulizar Arquivo Ultima versão do ACBrMonitorPLUS compilada em Linux 64 bits. Autor Celso Enviado 15-08-2016 Categoria ACBrMonitorPLUS
-
- acbrmonitorplus
- linux-x64
- (e 2 mais)
