Dimensionamento do Parse Server
Agora, em 2020, mais de 4 anos se passaram desde que o Facebook decidiu lançar a versão de código aberto do Parse. Durante esse tempo, muitos recursos novos foram lançados e a comunidade de apoiadores está maior do que nunca. Temos orgulho do número de usuários do Parse.com que, posteriormente, decidiram depositar sua confiança na plataforma de servidor Parse da Back4App. Queremos compartilhar com a comunidade algumas das lições que aprendemos desde o início dessa jornada.
O escalonamento do Parse tem sido um problema para vários usuários do Parse e vamos desvendar os segredos de como escalar o Parse.
O Parse Server foi lançado como uma versão de código aberto do Parse.com, mas provou ser um recurso valioso de muitas outras maneiras. Ele oferece uma excelente estrutura NodeJS para criar e dimensionar seu aplicativo. O escalonamento do aplicativo em questão é de grande variedade – na Back4App, escalonamos alguns aplicativos para até 10.000 Req/s (cerca de 80.000 usuários simultâneos). Tudo isso é possível mantendo o controle total do seu backend e evitando os tipos de bloqueios e limitações que vêm com as soluções Black Box.
Essa experiência prova como o Parse Server pode ser dimensionado para muito mais do que as 600 req/s que a Parse.com anunciou em sua página de preços (veja abaixo), muito além dos limites impostos por alguns outros back-ends de caixa preta. Vários recursos valiosos garantem que o Parse Server seja sua melhor opção de dimensionamento de aplicativos. Gostaria de enfatizar alguns dos mais importantes desses elementos.
Contents
1-Escalonamento sem grandes reengenharias
Flexibilidade para adicionar novos módulos: Assim que seu aplicativo cresce, você precisa de novos recursos para manter os usuários envolvidos ou até mesmo para melhorar a aquisição e, às vezes, uma plataforma de backend completa pode não estar disponível. Como o Parse Server é uma solução de código aberto, ele permite que você instale vários módulos npm (NodeJS) e integre novas APIs acessando recursos mais avançados.
Escalonamento vertical x horizontal: O Parse Server foi projetado para oferecer suporte ao escalonamento horizontal sem problemas, por exemplo, para compartilhar um estado entre as instâncias. Ele permite que você simplesmente crie novas instâncias idênticas do Parse Server para compartilhar o processamento das solicitações do seu aplicativo. Isso o ajuda a encontrar o melhor equilíbrio entre o dimensionamento vertical, que apenas aumenta as configurações da máquina, e o dimensionamento horizontal para otimizar o desempenho e os custos. Por exemplo, você pode começar com uma instância do Parse Server em uma única máquina e escalar verticalmente em uma plataforma de nuvem enquanto monitora constantemente o custo e o desempenho. Assim que seu aplicativo crescer, você poderá criar uma cópia desses servidores e adicionar um balanceador de carga para distribuir melhor as solicitações.
Execute seu aplicativo em uma infraestrutura à prova de falhas
As redundâncias são importantes quando você começa a escalonar seu aplicativo. A última coisa que você quer é que seu servidor fique inativo com uma grande quantidade de usuários. Certifique-se de usar a estrutura a seguir assim que começar a escalonar seu aplicativo.
- Balanceador de carga
- Escalonamento automático para servidores de aplicativos (mínimo de dois)
- Conjunto de réplicas para servidores de banco de dados (dois servidores + um árbitro)
Otimize o desempenho da consulta: Você pode usar as solicitações de aplicativos personalizadas do Parse Server para obter o melhor desempenho para cada tipo de aplicativo.
2 – A pilha do Parse Server é sólida
Pode parecer um desafio à primeira vista, mas a escalabilidade é realmente impressionante. Mesmo com a natureza de thread único do Javascript, o Node pode tirar proveito de vários núcleos usando o módulo de cluster, o que permite ao desenvolvedor criar uma rede de processos com portas compartilhadas. Para aumentar a escala em várias máquinas, o desenvolvedor pode usar o nginx para equilibrar a carga das solicitações recebidas em várias instâncias do Parse Server. Além disso, a autenticação do site do Node pode ser executada com eficiência usando a biblioteca connect-auth. Esse processo evita alguns dos erros comuns de desenvolvimento, e a velocidade é outra grande vantagem.
3 – Implante o Parse Server em qualquer lugar
Você pode instalar o Parse Server em servidores de sua escolha. Isso permite que você evite problemas como latência e use a melhor infraestrutura para atender às suas necessidades. Se você tiver as habilidades necessárias, poderá criar sua própria infraestrutura otimizada para seu aplicativo e hospedar o Parse Server. Você também pode optar por uma solução em nuvem se achar que ela terá um desempenho melhor.
É possível implementar o Parse em qualquer nuvem importante disponível no mercado. Alguns exemplos são AWS, Google Cloud, Digital Ocean ou Azure. Se preferir um serviço gerenciado e especializado, você pode optar pelo Back4app.
Concluímos que o modelo de código aberto é a chave para o sucesso do Parse Server. Esse modelo realmente garante que você possa fazer o que quiser com a estrutura assim que dimensionar seu aplicativo. Isso explica em grande parte por que o Parse Server se tornou a estrutura de código aberto mais popular para a criação de back-ends de aplicativos. Atualmente, o repositório git tem mais de 26.000 stargazers, e a comunidade inclui mais de 100.000 mil desenvolvedores.
Gostou desta postagem? Registre-se no Back4App GRATUITAMENTE.
Como dimensionar o Parse Server?
Para atingir os mais altos níveis de desempenho com grandes aplicativos Parse, por favor:
Otimize suas consultas para desempenho;
Execute seu aplicativo em uma estrutura redundante e à prova de falhas;
Adicione módulos NPM extensivamente
Qual o tamanho que um aplicativo Parse pode ter?
Na Back4app, já escalamos aplicativos acima da marca de 10.000 solicitações por segundo. Portanto, os aplicativos podem crescer bastante com a infraestrutura adequada.
Onde posso implantar o Parse?
Você pode implantar o Parse em serviços especializados de hospedagem do Parse, como o Back4app, ou em qualquer nuvem, como AWS, Azure, Alibaba, Google Cloud ou Digital Ocean.