Requisitos técnicos e arquitetura

O uso do Client Conecta requer o atendimento a requisitos técnicos e operacionais mínimos, garantindo compatibilidade, segurança e desempenho na integração da biblioteca.

Arquitetura

Define as características técnicas da biblioteca utilizada na integração.

Tipo de biblioteca:
• Windows: Biblioteca dinâmica (DLL – Dynamic Link Library).
• Linux: Biblioteca compartilhada (SO – Shared Object, arquivo .so).
Compatibilidade:
Arquitetura: x86 e/ou x64 (32 e 64 bits), para ambos os sistemas operacionais.
Framework: nativo (C/C++).
Interface: API pública com função documentada nos itens abaixo, idêntica para Windows e Linux.

Sistema Operacional

Define as plataformas suportadas e dependências necessárias para execução da solução.

  • Windows: Windows 10 ou superior;
  • Linux: Distribuições baseadas em glibc, com versão da glibc igual ou superior a 2.27 (piso de compatibilidade definido pela toolchain de compilação, baseada em Ubuntu 18.04 LTS). Ver tabela de compatibilidade de distribuições Linux a seguir.

Compatibilidade de distribuições Linux

FamíliaVersões compatíveis (glibc ≥ 2.27)Versões não compatíveis
Ubuntu18.04 até 24.04/24.10 e posteriores16.04 e anteriores (glibc < 2.27)
Debian10 (Buster), 11, 12, 139 (Stretch) e anteriores
RHEL / CentOS / Rocky / Alma8.x, 9.x7.x (glibc 2.17) — INCOMPATÍVEL
Fedora28 em diante27 e anteriores
Amazon LinuxAmazon Linux 2023 (glibc 2.34)Amazon Linux 2 (glibc 2.26) — INCOMPATÍVEL
openSUSELeap 15.1+ / Tumbleweed (rolling)Leap 15.0 e anteriores
SUSE Linux Enterprise (SLES)SLES 15 SP1+SLES 12 e anteriores — INCOMPATÍVEL
Oracle Linux8.x, 9.x7.x (glibc 2.17) — INCOMPATÍVEL
Linux Mint20 e posteriores (base Ubuntu 20.04+)19.x e anteriores
Raspberry Pi OSBullseye / BookwormBuster e anteriores
Arch Linux / ManjaroRolling release (sempre compatível)—
Alpine LinuxNão suportado (usa musl libc, não glibc)Todas as versões
⚠️
  • O fator determinante de compatibilidade é a versão da glibc instalada no sistema de destino, e não a versão do kernel Linux (o kernel possui política de compatibilidade retroativa mais permissiva que a glibc);
  • Amazon Linux 2 (glibc 2.26) não é compatível — está uma versão abaixo do piso mínimo (2.27). Caso algum componente rode em EC2/Lambda com Amazon Linux 2, o binário não funcionará sem rebuild;
  • Dispositivos com Linux embarcado (Raspberry Pi, BeagleBone, Orange Pi, NVIDIA Jetson, módulos i.MX/Yocto, OpenWrt/Buildroot, entre outros) costumam utilizar builds customizados de glibc/kernel, ou bibliotecas alternativas (musl/uClibc). A compatibilidade nesses dispositivos não é garantida apenas pela tabela acima, devendo ser validada com o SDK/toolchain oficial do fabricante da placa (Yocto, Buildroot, imagem do fabricante).

Dependências

  • Windows: A solução Client Conecta possui apenas um arquivo do tipo header (.h) como pacote adicional. Não é necessário a instalação ou adição de frameworks externos (ex.: Visual C++ Redistributable, .NET Runtime);
  • Linux: A solução Client Conecta possui apenas um arquivo do tipo header (.h) como pacote adicional. Não é necessária a instalação de frameworks ou bibliotecas externas, além da glibc já presente nas distribuições compatíveis listadas na tabela acima (glibc ≥ 2.27).

Permissões

Define os acessos necessários para o funcionamento da biblioteca.

Acesso a disco

  • Leitura: Permitida nos diretórios específicos onde a solução estiver instalada.

— Windows (ex.: C:\AppData\DLL\input).

— Linux (ex.: /opt/clientconecta/input).

  • Escrita: Permitida nos diretórios específicos onde a solução estiver instalada.

— Windows (ex.: C:\AppData\DLL\output).

— Linux (ex.: /opt/clientconecta/output).

Registro (Windows) / Configurações do sistema (Linux)

  • Windows: A solução Client Conecta não manipula ou altera chaves do registro do sistema operacional.
  • Linux: A solução Client Conecta não manipula ou altera arquivos de configuração do sistema operacional (ex.: /etc), não instala serviços systemd, nem requer privilégios de superusuário (root) para sua operação padrão.

Segurança e controle de versão

Define a estratégia de versionamento da solução e o impacto das atualizações na integração.

A solução usa versionamento no formato:

MAJOR.MEDIUM.MINOR

MAJOR

Indica alterações significativas na solução que impactam compatibilidade ou comportamento da API/DLL (Windows) ou API/SO (Linux) Client Conecta.

Exemplos:

  • Alteração de contratos de integração (assinatura de métodos, parâmetros obrigatórios ou retornos);
  • Reestruturação arquitetural relevante;
  • Descontinuação de funcionalidades existentes;
  • Adequações obrigatórias a novos padrões regulatórios.
ℹ️

Importante

Alterações na versão MAJOR podem exigir ajustes no sistema integrador.

MEDIUM

Representa evolução funcional da solução, mantendo compatibilidade com versões anteriores.

Exemplos:

  • Inclusão de novas funcionalidades ou operações;
  • Suporte a novos meios de pagamento;
  • Adição de novos parâmetros opcionais;
  • Melhorias de performance;
  • Ajustes de comportamento sem quebra de contrato.

Atualizações dessa categoria normalmente não exigem mudanças obrigatórias no integrador, mas podem requerer adaptação para uso de novas funcionalidades.

MINOR

Indica ajustes de menor impacto voltados à estabilidade e manutenção da solução.

Exemplos:

  • Correções de defeitos (bugs);
  • Melhorias internas sem impacto funcional;
  • Austes de mensagens, logs ou tratamento de erros;
  • Correções de segurança sem alteração de interface;
  • Pequenas otimizações.

Atualizações dessa categoria são consideradas seguras e não afetam a integração existente.

Exemplo de versionamento

VersãoDescrição
1.0.0Versão inicial estável da solução
1.1.0Nova funcionalidade adicionada
1.1.1Correção de defeito
2.0.0Alteração incompatível com versões anteriores

Did this page help you?