Solução API7: Alta Disponibilidade para Serviços B2B

January 3, 2024

Technology

No curso da comunicação com clientes, uma pergunta-chave frequentemente surge: "Vocês oferecem alta disponibilidade? E como?"

Em essência, ao discutir arquitetura de alta disponibilidade, a Solução API7 se destaca como uma escolha notável. A razão reside em fornecer um conjunto de recursos de alta disponibilidade projetados para garantir que o sistema possa oferecer serviços de API disponíveis em diversas circunstâncias, seja alcançando a disponibilidade de 99,99% ou 99,999%.

No ambiente de negócios, a alta disponibilidade dos serviços de API é particularmente crítica, pois impacta diretamente a continuidade e a confiabilidade do cliente. Por que a alta disponibilidade é tão crucial para os negócios B2B? Porque, como uma métrica-chave, qualquer interrupção ou falha dos serviços de API em momentos críticos pode impactar severamente os negócios do cliente, resultando não apenas em perdas financeiras, mas também potencialmente danificando a reputação e a credibilidade do cliente.

Como a API7 Alcança Alta Concorrência?

A alta disponibilidade é uma preocupação técnica e uma estratégia de negócios que pode conquistar a confiança e a lealdade do cliente. Então, como a alta disponibilidade da Solução API7 é alcançada? Como ela garante alta disponibilidade?

Plano de Controle Sem Estado

Primeiramente, a chave está na alta disponibilidade do plano de controle. O plano de controle da Solução API7 é o núcleo da configuração e gerenciamento de API, adotando um design sem estado. Isso significa que os componentes do plano de controle podem iniciar rapidamente novas instâncias para substituir componentes potencialmente falhos. Esse design sem estado aumenta a resiliência do sistema, permitindo que ele continue fornecendo serviços mesmo em caso de falhas de componentes.

PostgreSQL como Centro de Configuração Padrão

Outra decisão crucial é usar o PostgreSQL como o centro de configuração padrão, em vez do etcd escolhido pelo APISIX. Essa escolha é feita porque a execução do etcd pode apresentar novos desafios para as empresas, enquanto o PostgreSQL é um sistema de banco de dados mais familiar e sustentável. O PostgreSQL é o único componente com estado na Solução API7, com todos os outros componentes sendo sem estado. Além disso, o PostgreSQL fornece soluções maduras de alta disponibilidade, incluindo backup mestre-escravo e multi-mestre, garantindo que, mesmo se o nó principal do centro de configuração falhar, um nó de reserva possa rapidamente assumir, garantindo a disponibilidade da configuração.

Alta Disponibilidade da API7 Enterprise

Plano de Dados Sem Estado

A alta disponibilidade do plano de dados é igualmente importante. O plano de dados processa o tráfego real de negócios e é construído sobre o APISIX, herdando muitos dos recursos do APISIX. Semelhante ao plano de controle, os componentes do plano de dados são sem estado, permitindo que eles escalem horizontalmente e verticalmente com facilidade para se adaptar às mudanças no tráfego. Seja para escalar instâncias durante picos repentinos de tráfego ou remover rapidamente um nó quando ele falha, o plano de dados pode lidar com isso, garantindo a continuidade do serviço.

Plano de Dados e Plano de Controle Independentes

Outra vantagem significativa é a separação do plano de dados do plano de controle, onde anormalidades em qualquer componente não afetam um ao outro. Além disso, o plano de dados, ao iniciar, salva a configuração do plano de controle na memória, evitando a necessidade de buscar configurações do plano de controle para cada solicitação, melhorando assim o desempenho e a velocidade de resposta. Isso também garante que, em caso de anomalias no plano de controle, o plano de dados possa continuar a atender solicitações subsequentes.

Cenários de Uso e Benefícios da Arquitetura de Alta Disponibilidade

A implantação de uma arquitetura de alta disponibilidade é aplicável à API7 e pode ser implementada em vários ambientes e cenários. Por exemplo, ao implantar através do Docker ou em uma máquina virtual, é comum configurar um balanceador de carga na entrada do tráfego, como o balanceador de carga da AWS ou o LVS, combinado com mecanismos de verificação de saúde. Isso permite a remoção automática de componentes falhos e a iniciação de novas instâncias quando os componentes falham. Outro método comum de implantação é no Kubernetes, aproveitando as políticas de verificação de saúde do Kubernetes para gerenciar a alta disponibilidade do serviço. O Kubernetes pode detectar e substituir automaticamente pods falhos, garantindo a estabilidade do sistema.

Os benefícios trazidos pela alta disponibilidade vão além de fornecer serviço contínuo. Eles também contribuem para o aumento da satisfação do cliente, prevenção de interrupções de negócios, aumento da competitividade e redução dos custos de manutenção. Embora alcançar alta disponibilidade possa exigir algum investimento adicional, isso acaba reduzindo os custos de manutenção, permitindo a recuperação rápida e o processamento contínuo do tráfego de negócios em caso de falhas do sistema.

Conclusão

Em resumo, a arquitetura de alta disponibilidade da Solução API7 é um design abrangente. Através da separação do plano de controle e do plano de dados, inicialização rápida e expansão horizontal de componentes sem estado, e métodos de implantação flexíveis, o sistema garante a disponibilidade contínua dos serviços de API em várias circunstâncias. Esses recursos tornam a Solução API7 um sistema resiliente, flexível e confiável, capaz de atender aos altos requisitos das empresas para a disponibilidade de serviços de API.

A alta disponibilidade não é apenas uma consideração técnica, mas também uma estratégia de negócios que pode fortalecer os relacionamentos com os clientes, melhorar a competitividade e trazer mais oportunidades e sucesso para as empresas. Portanto, a alta disponibilidade da Solução API7 é uma capacidade indispensável, fornecendo aos clientes B2B uma ferramenta de gerenciamento de API confiável, garantindo que seus negócios operem sem interrupções.

Tags: