Anda di halaman 1dari 3

Avaliar necessidade de centralizar recursos e dados sem onerar a infra.

Geral
Não consegui identificar quais outras formas de usar os recursos do usuário, além das
presentes em qualquer celular (gps, chamadas, banco local, etc) poderiam ser validadas.

Infra
Pelo que entendi, existe a necessidade de consultas à uma API para sincronizar a
aplicação com o server e com as demais aplicações. Aí cabe a necessidade, existe o
Firebase e até ambiente no Visual Studio Center que pode simplificar o acesso a uma
API e que, conforme o volume de dados, pode ser ajustável e contratar mais recursos de
infra sem quebrar a cabeça.
É possível que, com este tipo de recurso, torne a sincronização de forma assíncrona,
podendo concluir o processo do usuário, salvando as informações localmente, e as
publicando em seguida; Outra possibilidade é que, em caso de boom, é possível
aumentar o limite de consultas à API e tamanho da base de dados
Caso partirmos para recursos próprios, como a API própria, toda a infra por trás deve
ser definida. É possível usar recursos como Azure e Docker, onde a infra pode ser
aumentada ou diminuída de forma mais automatizada, mantendo assim a aplicação.

Uma estratégia possível é utilizar um serviço para o backend, conforme a nossa


necessidade. Existem diversos serviços BaaS disponíveis com diversas funcionalidades
agregadas, não somente banco de dados.
BaaS - Backend as a Service
Vantagens
- Economia de tempo
- Responsabilidade de quem fornece o serviço (segurança, hospedagem,
operação e suporte)
- Redução de custos
Desvantagens
- Não é tão personalizável
- Deve-se adaptar à ferramenta

Firebase (​https://firebase.google.com/?hl=pt-br​)
Alguns serviços:
- Hosting
- Storage
- Realtime Database
- NoSQL
- Documentos JSON
- CRUD e Rest
- CloudMessaging
- PushNotifications
- Authentication
- Analytics
- outros…

Preços: ​https://firebase.google.com/pricing/?hl=pt-br

Platform as a Service (PaaS) e Infrastructure as a Service (IaaS)


Microsoft Azure (​https://azure.microsoft.com/pt-br/​)
Diversas integrações e ferramentas disponíveis, como o Docker, SQL Server, IoT,
Automação, Armazenamento e Backup, etc.
Possui uma infinidade de recursos e os preços são por recurso utilizado, podemos
utilizar apenas o que demandar e conteinizar a aplicação para que caso aconteça alguma
sobrecarga, um novo contêiner é levantado automaticamente.
- Diversos tipos de banco de dados;
- DevOps: Visual studio app center;
- AKS, Service Fabric, Máquinas Virtuais
Preços:
https://azure.microsoft.com/pt-br/pricing/
https://azure.microsoft.com/pt-br/pricing/calculator/

Em resumo, alguns assuntos estavam misturados, mas em casos de sobrecarga da


aplicação, é possível utilizar estes serviços para que a infra se adapte conforme a
necessidade, disponibilizando mais espaço para dados ou levantando novos ambientes.

Progressive Web Apps (PWA)


São aplicações web que funcionam/rodam em um navegador comum, utiliza as
tecnologias mais avançadas dos navegadores modernos, como Push API, Cache, Web
Worker e Service Worker.
A ideia é que o usuário tenha a mesma experiência de um aplicativo, onde a aplicação
fica disponível mesmo offline. Além de poder usar sem baixar, deixando a decisão para
um próximo acesso.

Artigo com mais detalhes:


https://waldyrfelix.com.br/guia-b%C3%A1sico-sobre-progressive-web-apps-4eaa42f17f
63
https://medium.com/tableless/introdu%C3%A7%C3%A3o-aos-progressive-web-apps-a
d47ba24cddb

Google:
https://developers.google.com/web/progressive-web-apps/
https://developers.google.com/web/fundamentals/codelabs/your-first-pwapp/?hl=pt-br

Ações:
- Criar PoC (Proof of Concept), prova de conceito, ou Protótipo para validar a
necessidade e o caminho a ser seguido.

Anda mungkin juga menyukai