Estamos animados em apresentar o Couchbase Edge Server, uma plataforma de dados leve e local, projetada para potencializar seus aplicativos de computação de ponta. Com recursos como armazenamento de dados local, sincronização de dados offline-first upstream e downstream e acesso contínuo a dados RESTful, o Couchbase Edge Server oferece aplicativos eficientes, confiáveis ​​e de baixa latência na ponta.

Couchbase é líder há muito tempo no fornecimento de soluções robustas de sincronização de dados offline-first, com seu banco de dados Couchbase Lite incorporado para aplicativos móveis e de desktop, juntamente com o App Services/Sync Gateway para sincronização de dados contínua (conhecidos coletivamente como Couchbase Mobile). Agora, estamos expandindo a gama de casos de uso de ponta que podem ser implantados com nossa solução móvel existente, para atender às demandas exclusivas de certos aplicativos de ponta, que podem ser implantados em escala em ambientes com recursos limitados.

O lançamento do Couchbase Edge Server preenche essas lacunas, estabelecendo o Couchbase como a plataforma de banco de dados mais abrangente, feita sob medida para aplicativos de ponta.

Feito sob medida para a borda

Ao desenvolver o Edge Server, não reduzimos simplesmente o Couchbase Server e o Sync Gateway para se ajustarem a um fator de forma menor. Em vez disso, o Edge Server foi criado especificamente para ambientes de ponta.

Construído no comprovado mecanismo Couchbase Lite Core — o mesmo mecanismo que alimenta o banco de dados incorporado Couchbase Lite usado em milhões de aplicativos móveis, de desktop e de hardware incorporado personalizado para casos de uso offline-first críticos para os negócios — o Couchbase Edge Server está pronto para atender às suas necessidades de produção hoje.

Veja como o Edge Server se encaixa no restante da pilha móvel.

Couchbase Mobile Product Stack with Edge Server

Requisitos de aplicação de computação de ponta

O Edge Server oferece as vantagens tradicionais de computação de ponta, como acesso a dados locais de baixa latência, otimização de largura de banda, continuidade de negócios e privacidade de dados aprimorada. Esses benefícios agora são acessíveis mesmo em ambientes com recursos altamente limitados:

Implantável em ambientes com recursos altamente limitados

Há implantações de ponta com recursos de armazenamento e computação severamente limitados para executar um banco de dados local totalmente distribuído e uma solução de sincronização. Por exemplo, considere um sistema de entretenimento e pedidos de refeições (IFE) no encosto do assento do voo que atende centenas de passageiros de companhias aéreas. Este sistema deve operar de forma confiável em tempo real, mesmo a 37.000 pés sem conectividade com a Internet, usando apenas um computador de placa única com 1 GB de RAM. A implantação de um Couchbase Server e Sync Gateway, que exige significativamente mais capacidade de armazenamento e computação, simplesmente não é viável em tais cenários. O Edge Server aborda esse desafio com seu design leve, permitindo a implantação em hardware com requisitos mínimos de recursos, tão baixos quanto 1 GB de RAM.

Solução leve e econômica em escala

As implantações de ponta podem ser dimensionadas para centenas ou até milhares de locais, geralmente exigindo apenas uma solução de banco de dados de ponta leve para atender a um punhado de clientes locais em cada local. A implantação de uma plataforma de dados distribuída de “classe empresarial” e uma solução de sincronização projetada para acesso de dados locais de alto volume, desempenho e escala em cada local de ponta costuma ser um exagero e pode ser proibitivamente cara.

Por exemplo, considere uma grande rede de varejo com milhares de locais, cada um executando alguns sistemas PoS locais que precisam operar em modo desconectado. Esses cenários são adequados para uma solução de banco de dados de ponta simples como o Edge Server, que oferece suporte eficaz a esses tipos de casos de uso localizados sem a complexidade e o custo de uma plataforma de banco de dados em grande escala.

Acesso flexível a dados e sincronização de dados offline primeiro

Alguns aplicativos de ponta exigem acesso direto aos dados por meio de clientes HTTP prontos para uso, enquanto outros exigem sincronização de dados offline-first em tempo real com clientes de ponta. Por exemplo, considere um aplicativo de check-in de evento em que os participantes escaneiam ingressos digitais em seus dispositivos móveis nas entradas do local. O processo de check-in em cada portão deve ser extremamente rápido para garantir que dezenas de milhares de participantes possam entrar no evento no horário. O servidor de ponta oferece soluções flexíveis para esses cenários, suportando padrões simples de acesso a dados por meio de uma interface RESTful. Além disso, os eventos de escaneamento precisam ser sincronizados nos servidores do local para manter a consistência, o que é habilitado por meio de um protocolo robusto de sincronização de dados baseado em websocket. Este protocolo tem alimentado de forma confiável as implantações críticas do Couchbase Mobile para os negócios por mais de uma década.

Arquitetura

O diagrama abaixo mostra os elementos fundamentais do Couchbase Edge Server

edge-server-architecture

 

Administração

Durante a inicialização, o Edge Server é configurado usando um arquivo de configuração formatado em JSON. Além disso, o servidor fornece uma interface RESTful para gerenciar replicações, acessível exclusivamente a usuários com a função “admin”.

API de acesso a dados REST

Uma interface RESTful que permite que qualquer cliente HTTP, incluindo aplicativos de navegador,:

    • Execute operações CRUD em documentos.
    • Execute consultas SQL++.
    • Assine e receba atualizações em tempo real sobre alterações em documentos

Sincronização de dados downstream com clientes Edge

Os aplicativos Couchbase Lite executados em clientes de ponta móveis e de desktop podem sincronizar dados com um servidor de ponta local usando um protocolo de replicação baseado em WebSocket.

Sincronização de dados upstream com servidor Couchbase remoto

Quando a conectividade com a Internet estiver disponível, o Edge Server poderá sincronizar dados com um App Services remoto usando um protocolo de replicação baseado em WebSocket.

Sincronização do servidor Edge

Os Edge Servers podem sincronizar dados diretamente entre si por meio de web sockets. Isso é útil quando há vários Edge Servers que precisam ser mantidos em sincronia no edge ou quando é possível configurar o Edge Server em uma configuração primária-backup.

Segurança

O Edge Server foi projetado com uma abordagem “segura por padrão”, incorporando os seguintes recursos:

    • Todo acesso a dados de clientes de ponta requer autenticação, seja por meio de autenticação básica com credenciais de nome de usuário/senha ou autenticação baseada em certificado usando mTLS.
    • Todas as comunicações são criptografadas usando TLS.
    • A sincronização de dados e a execução de consultas são desabilitadas por padrão e devem ser explicitamente habilitadas.
    • Para sua conveniência, o Edge Server fornece um modo CLI para gerar certificados auto-assinados anônimos para uso com o servidor. Esses certificados garantem a comunicação criptografada por TLS, mesmo se a validação de identidade do servidor for ignorada.
    • O Edge Server também oferece suporte a um modo CLI para gerar senhas Bcrypt, permitindo a configuração de usuários de clientes de ponta que são autenticados para acessar e sincronizar dados.

Banco de dados pré-construído

O Edge Server pode ser configurado para criar um banco de dados local que sincroniza dados de uma instância remota do App Services ou carrega dados de um banco de dados local existente.

Suportabilidade

Além disso, o servidor Edge oferece suporte ao registro operacional para facilitar a depuração e a solução de problemas, bem como o recurso de registro de auditoria.

Topologias de implantação de borda

O Edge Server suporta implantação em várias topologias na borda, permitindo uma ampla gama de casos de uso. Em cada um dos casos, o Edge Server pode opcionalmente sincronizar dados com o Capella App Service/servidor remoto na nuvem

Topologia 1

Ler/escrever dados ou ouvir alterações de dados do Edge Server por meio de uma interface RESTful de qualquer cliente HTTP. 

edge server deployment topology

Topologia 2

Instale clientes de ponta em uma configuração mista, com clientes HTTP acessando dados por meio da API REST e clientes Couchbase Lite oferecendo suporte à sincronização de dados offline primeiro.

Topology 2 Deploy edge clients in a mixed configuration, with HTTP clients accessing data through the REST API and Couchbase Lite clients supporting offline-first data synchronization.

Topologia 3

Instale vários Edge Servers na borda, cada um atendendo a um subconjunto de clientes locais e configure os edge servers para sincronizar dados entre si para permitir consistência eventual de dados em todos os clientes locais.

Essa topologia também pode ser aproveitada para implantar Edge Servers em uma configuração primária-secundária para Alta Disponibilidade (HA).

Edge server topologies

Recursos e Próximos Passos

Aqui estão links para alguns recursos úteis para você começar

Agradecimentos

Agradecimentos especiais a Jens Alfke  for his significant contributions to the product and to Mark Gamble por suas contribuições para esta postagem. 



Author

Posted by Priya Rajagopal, Senior Director, Product Management

Priya Rajagopal is a Senior Director of Product Management at Couchbase responsible for developer platforms for the cloud and the edge. She has been professionally developing software for over 20 years in several technical and product leadership positions, with 10+ years focused on mobile technologies. As a TISPAN IPTV standards delegate, she was a key contributor to the IPTV standards specifications. She has 22 patents in the areas of networking and platform security.

Leave a reply