Considere as seguintes perguntas:
-
- Os aplicativos móveis que você fornece estão sofrendo baixa adoção ou críticas negativas nas lojas de aplicativos?
- Os aplicativos móveis que você cria podem ser usados em qualquer lugar, inclusive no meio do nada?
- Você está perdendo negócios devido ao tempo de inatividade do aplicativo?
É tudo uma questão de dados
Uma coisa que une essas perguntas são os dados ou, mais especificamente, como o seu aplicativo móvel foi projetado para acessar e usar os dados. É claro que todos os aplicativos precisam de dados para operar, mas onde você os armazena e processa pode ter implicações enormes na forma como você responde a esses tipos de perguntas.
Se você estiver criando aplicativos móveis e de borda que obtêm seus dados apenas da nuvem, eles dependem da Internet e, portanto, ficam sujeitos à sua falta de confiabilidade inerente. Se a Internet for lenta, a experiência dos usuários do seu aplicativo também será lenta, deixando-os frustrados e mais propensos a abandoná-lo. E se a conectividade com a Internet for perdida - ou totalmente inexistente - esses aplicativos não poderão operar, tornando-os inúteis.
A lentidão e o tempo de inatividade são mais do que um inconveniente, eles podem ter um impacto dramático nos resultados financeiros. Veja os aplicativos de varejo, onde até mesmo curtos períodos de inatividade podem ser incrivelmente caros. Ou aplicativos de saúde, em que o acesso rápido a dados precisos é fundamental para obter bons resultados para os pacientes.
Esses exemplos não são casos de nicho, eles fazem parte de uma classe crescente de aplicativos que exigem alta velocidade e tempo de atividade 100% como um princípio fundamental, sem tolerância para latência ou interrupções, ponto final.
Se você tiver requisitos semelhantes, como eliminar as dependências da Internet e criar aplicativos móveis e de borda que sejam rápidos e estejam disponíveis independentemente da conectividade da rede?
Você deve abordar o processo de desenvolvimento de aplicativos com uma mentalidade "off-line primeiro".
O que é um aplicativo "off-line primeiro"?
O termo "off-line primeiro" descreve um aplicativo móvel que pode operar sem a necessidade de uma conexão com a Internet, essencialmente fornecendo a funcionalidade principal enquanto estiver completamente off-line, daí o termo.
A primeira mentalidade off-line é aquela que pressupõe que haverá problemas de conectividade de rede e, portanto, se desenvolve em torno deles. Decidir onde armazenar e processar os dados que seu aplicativo requer é um fator fundamental.
O banco de dados que você usa faz diferença
Uma hipótese poderia ser simplesmente incorporar um banco de dados ao próprio aplicativo móvel, ou seja, armazenar e processar os dados localmente no dispositivo que executa o aplicativo usando um banco de dados incorporado, como o SQLite. Isso certamente cumpre o requisito de remover as dependências da Internet - o aplicativo tem os dados de que precisa para operar porque eles são armazenados localmente, permitindo que ele funcione sem conectividade de rede.
Mas simplesmente incorporar o banco de dados ao aplicativo não é suficiente. Para aplicativos móveis multiusuário em que os dados mudam rapidamente, eles devem ser compartilhados com segurança em todo o ecossistema do aplicativo, o que exige a sincronização de dados. Sem esse recurso essencial, os aplicativos correm o risco de exibir e agir com base em informações obsoletas, imprecisas ou não autorizadas.
O que é necessário é um banco de dados criado para os primeiros aplicativos móveis e de borda off-line, que possa ser incorporado aos aplicativos para eliminar as dependências da Internet, mas que também possa sincronizar os dados entre a nuvem e outros dispositivos automaticamente quando houver conectividade.
Couchbase - feito sob medida para o primeiro banco de dados off-line
Couchbase fornece um banco de dados móvel de fácil desenvolvimento que nossos clientes usam para criar primeiros aplicativos off-line que são imunes à lentidão ou a interrupções da Internet.
A pilha do banco de dados móvel do Couchbase inclui:
-
- Couchbase Capella - Um banco de dados NoSQL como serviço (DBaaS) totalmente gerenciado na nuvem com suporte para SQL, pesquisa, análise e eventos.
- Serviços de aplicativos Capella - Serviços totalmente gerenciados para sincronização bidirecional, autenticação e controle de acesso para aplicativos móveis e de borda.
- Couchbase Lite - Um banco de dados móvel NoSQL incorporado com SQL, pesquisa, eventos e amplo suporte a plataformas móveis.
O Capella App Services sincroniza automaticamente os dados entre o Capella DBaaS e os clientes incorporados do Couchbase Lite:
Ao armazenar e processar dados localmente, os dispositivos incorporados continuam a operar mesmo sem conectividade com a Internet. E os dispositivos incorporados muito próximos ainda podem se sincronizar off-line, aproveitando a sincronização ponto a ponto, um recurso exclusivo do Couchbase:
Primeiros casos de uso de clientes off-line do Couchbase
O Couchbase tem sido usado por muitos clientes para atender aos requisitos de aplicativos móveis e de borda rápidos e resilientes que funcionam independentemente da conectividade com a Internet.
MochilaEMR
MochilaEMR fornece aplicativos para clínicas móveis em áreas remotas e mal atendidas, onde há pouca ou nenhuma internet. Eles incorporam o Couchbase aos aplicativos que são executados em tablets, permitindo que operem em um modo totalmente desconectado, e aproveitam a sincronização integrada para garantir que todos vejam informações atuais e precisas. Os médicos têm acesso aos históricos dos pacientes atualizados em tempo real e podem compartilhar de forma instantânea e segura os dados dos pacientes em toda a clínica, desde o registro até os sinais vitais, laboratórios, salas de exame e até mesmo na farmácia. O aplicativo rastreia tratamentos, encaminhamentos e recomendações para consultas de acompanhamento, garantindo que os pacientes estejam atualizados sobre seus cuidados.
Ao aproveitar o Couchbase para garantir que seus aplicativos funcionem em qualquer lugar, o tempo todo, o BackpackEMR está ajudando a fornecer assistência médica vital para as áreas do mundo que mais precisam. Saiba mais sobre como o BackpackEMR usa o Couchbase aqui.
Cabeça de martelo
Cabeça de martelo fornece um computador de ciclismo de última geração chamado Karoo 2projetado especificamente para ciclistas para ajudá-los a fazer exercícios estruturados, seguir rotas e tirar o máximo proveito de cada pedalada. Um recurso essencial do Karoo 2 é seu primeiro recurso off-line, pois os ciclistas normalmente não estão conectados a uma rede durante as pedaladas. O aplicativo rastreia o ciclista e as condições da pedalada usando GPS, um velocímetro, um monitor de frequência cardíaca e sensores barométricos. Um banco de dados incorporado Couchbase e uma sincronização segura permitem que ele forneça orientações precisas de navegação curva a curva, independentemente da conectividade com a Internet.
O Couchbase ajuda a Hammerhead a cumprir sua promessa de capacitar todas as pessoas a desbloquear seu potencial atlético por meio do ciclismo. Leia mais sobre como o Hammerhead usa o Couchbase aqui.
SyncThink
Até agora, analisamos casos de uso de clientes na área de saúde e de esportes. Agora, vamos analisar um caso de uso de cliente que combina saúde e esportes. SyncThink fornece o SINCRONIZAÇÃO DOS OLHOS para as principais equipes esportivas para avaliação de concussão no campo de jogo. A solução usa um fone de ouvido de RV que rastreia o movimento dos olhos e um tablet emparelhado que executa um aplicativo com o Couchbase incorporado, permitindo que ele funcione mesmo em locais onde a conectividade de rede pode ser lenta ou não estar disponível, como em um estádio de futebol ou vestiário. Como os segundos contam no caso de lesões cerebrais, os jogadores precisam ser avaliados imediatamente quanto à concussão, portanto, a capacidade de funcionar sem conexão com a Internet era um dos principais requisitos do SyncThink, e o Couchbase foi capaz de atender a esse requisito.
O SyncThink conta com o Couchbase para melhorar os resultados de lesões esportivas por meio da avaliação de concussão em tempo real, Saiba mais sobre seu caso de uso aqui.
Experimente você mesmo
O Couchbase facilita o desenvolvimento de aplicativos off-line que são sempre rápidos e sempre ativos. Avaliação gratuita do Couchbase Capella.
Oi Mark,
Artigo e casos de uso convincentes. Você pode indicar algum projeto de exemplo ou amostra que mostre uma implementação decente do primeiro off-line? Estou tentando criar uma classe DataService offline first e tenho os testes locais em execução, mas continuo tendo problemas ("timeouts") ao tentar sincronizar com o backend do Capella. Agradecemos qualquer sugestão.
Dave Gerding