Parse Server – Melhor alternativa ao Parse

Parse Server – Melhor alternativa ao Parse

Introdução ao Parse Server

Parse Server é a versão Open Source da plataforma de criação de aplicativos do Facebook, o Parse. Neste artigo, serão detalhadas as opções para a migração do Parse bem como as principais diferenças entre o Parse e sua versão Open Source. Ao final do artigo será mostrado um exemplo de como efetuar se uma integração ao Stripe.

Como sabem, no início de 2016 o Facebook decidiu não mais prestar serviços de hospedagem de aplicativos e optou por criar uma versão Open Source de seu Backend as a Service. Tal decisão afetou milhares de desenvolvedores ao redor do mundo e o prazo para migração das aplicações está terminando. Se você ainda não definiu uma alternativa para o Parse, que encerrará os serviços em 28 de Janeiro de 2017, você não está sozinho. Felizmente, o Parse lançou uma versão Open Source que é o Parse Server. Escrito em Node.js, o Parse Server pode criar aplicativos de qualquer infraestrutura habilitada para Node.

Parse Server – Novas Fronteiras

Migrar sua aplicação pode ser um pouco mais trabalhoso que você imaginava, mas a boa notícia é que você pode fazer muito mais coisas com Parse Server que você podia com o Parse. Por exemplo, você pode hospedar o Parse Server em seu próprio servidor ou utilizar um serviço de hospedagem especializado. Você também pode desenvolver e testar suas aplicações localmente e ter certeza que tudo está funcionando corretamente antes de publicá-las. Estas características são apenas o topo do iceberg! Esta plataforma é poderosa e flexível e ainda oferece muitas outras vantagens em comparação ao Parse.com.

Principais Características do Parse Server

  • O Parse Server é uma plataforma independente do Facebook.
  • O Parse Server é um projeto Open Source.
  • O Parse Server utiliza a base de dados MongoDB.
  • Pré Requisitos para utilização são:
  • Node versão 4.3.
  • MongoDB versão 2.6X, 3.0X ou 3.2.6.

Migração Parse para o Parse Server

Existem três possibilidades para a migração de sua aplicação para o Parse Server.

Parse Server Hosting— As principais vantagens deste tipo de solução são: (1) Velocidade que pode ser implementada. (2) O baixo custo. (3) O fato de não haver downtime para o usuário final que utiliza os aplicativos. O principal serviço de hospedagem Parse Server é o Back4App.

Servidor Próprio — Neste caso, o usuário efetua a instalação do Parse Server em seu próprio servidor ou em provedores de infraestrutura, tais como, a Amazon AWS. A principal vantagem é o controle total sobre o servidor e a principal desvantagem é o maior custo.

Backend as a Service — A escolha desta opção implica na migração da aplicação do Parse para um novo serviço de backend as a service, tal como, Stamplay ou Backendless.

Parse Server — Principais características

Abaixo seguem as principais características do Parse Server.

Sem limites de consultas

O Parse tinha que estabelecer 1.000 objetos de consulta (query) máximos e os prazos para as centenas de milhares de aplicativos hospedados. Com o Parse Server, estes limites não existem mais. O usuário pode configurar a query máxima e o prazo máximo, funções na nuvem, e requests com Parse Server se você escolher, não há limites predefinidos.

Melhor gerenciamento da Base de Dados

Parse Server é muito mais flexível no que diz respeito a base de dados. Uma vez migrada a sua aplicação para o Parse Server, você terá:

· Controle completo sobre qualquer base de dados que usar. Desenvolvedores já tem escrito diversas adaptações para o Parse Server que permitem controlar uma variedade de plataformas de base de dados e sistemas de armazenamento de dados.

· A capacidade de adicionar índices.

· Backup real e funcionalidades restauradas, ao invés do processo manual do Parse de exportar arquivos JSON.

Enquanto nem todos desenvolvedores precisam destas ferramentas, muitos desenvolvedores apresentam interesse em ter mais controle sobre sua base de dados.

Live Queries (Consultas instantâneas)

O Parse Server suporta Live Queries e gera feeds contínuos de alterações de objetos, como mensagens de jogos em tempo real e elimina a necessidade de executar consultas adicionais cada vez que você precisar de novos dados para estes tipos de aplicações. Você pode usar consultas momentâneas Parse no Parse Server usando callsubscribe() instead of find(), que informa ao servidor para fazer atualizações de objetos em tempo real.

Adições recentes ao Parse Server

É importante ressaltar que o Parse Server não é uma cópia exata do Parse. As principais funcionalidades estão contempladas no Parse Server, mas existem diversas funcionalidades que não estão disponíveis. Entretanto, este não é um grande motivo de preocupação, visto que que o Parse Server é um projeto Open Source e existe uma comunidade de cerca de 600 mil desenvolvedores que pode aprimorar o produto e efetuar melhorias contínuas na ferramenta.

Parse Dashboard

O Parse lançou o Painel de controle alguns meses atrás para auxiliar o gerenciamento das aplicações que utilizam a plataforma. É fácil de instalar, configurar e atualizar.

Push Notifications

O Parse adicionou recentemente esta funcionalidade em sua versão Open Source. Desta forma, você pode direcionar canais e instalações específicas e Push Notifications para os usuários iOS e Android. E com o novo adaptador push, você pode enviar notificações via qualquer serviço móvel de notificações push que fornece uma API.

Pointer Permissions

As versões mais recentes do Parse Server e Parse Dashboard também incluem Pointer Permissions, que oferecem uma nova maneira de proteger todos os objetos em uma classe simultaneamente. Pointer Permissions obtém facilmente, de forma segura, mensagens e perfis sem qualquer novo código do cliente ou servidor.

Funcionalidade de configuração

Finalmente, você pode agora usar a poderosa funcionalidade do Parse Config para configurar sua aplicação no Parse Server.

Acessando Analytics para seu Parse Server App

Uma das principais limitações do Parse Server é a falta de um painel de gerenciamento dos aplicativos. Uma alternativa para esta situação é instalação do Google Analytics, Mixpanel ou utilizar um serviço de hospedagem tal como o Back4App.

Exemplo: Integração com o Stripe

No exemplo abaixo será detalhado como criar um aplicativo Android e efetuar uma integração com um meio de pagamento. Será utilizado o Stripe e ao final do tutorial será possível visualizar o botão que permite a compra com apenas um clique.

Para efetuar o download do projeto, por favor, acesse:

https://github.com/dominwong4/Back4app-Stripe-Android-Tutorial

Passo 1 — Criar o Dashboard

Acesso o Parse Dashboard e siga as instruções abaixo:

Crie a Classe : Item

Insira as seguintes colunas:

ItemName
 price
 quantityAvailable

insert a sample item record
 ItemName: test
 price: 10
 quantityAvailable: 10

Crie a classe : Order

Insira as seguintes colunas:

name

email

address

zip

city_state

item

size

fulfilled : Boolean

charged : Boolean

stripePaymentId

Passo 2 — Chave do Stripe

Crie um login e senha no Stripe conforme especificado abaixo:

https://manage.stripe.com/account/apikeys

Caso não funcione, siga os passos a seguir:

§ Account Settings à API Key

Copie:

test publishable key (for Android Client)

pk_test_1IqGGvSacpQ8lpIBxuVvI5rP

test secret key (for CloudCode Server)

sk_test_U4ztvrYPxe7Ph3w0ii155rnw

Passo 3 — Crie um Cloud Code para o pagamento via Stripe

https://github.com/dominwong4/Back4app-Stripe-Android-Tutorial/blob/master/CloudCode/main.js

main.js (replace Stripe.initialize to your secret key)

Passo 4 — Crie um Android Client Appication

1. Adicione o pacote Parse e Stripe ao seu projeto

vá para build.gradle e adicione o seguinte código:

E então clique em “sync now” para sincronizar.

Agora vá para AndroidManifest.xml

2. Para implementar a barra de pagamento, é necessário o acompanhamento das funções obrigatórias.

Veja o código inteiro:

https://github.com/dominwong4/Back4app-Stripe-Android-Tutorial

Acima de onCreate()

Dentro onCreate()

Para a função principal de compras

Passo 5: Teste

Se tudo funcionar bem poucos ajustes serão necessários.

1. O armazenamento está diminuído

2. A requisição pode ser encontrada em Class:Order

3. O carregamento -> true and stripePaymentId != undefined at Class:Order

4. O painel de controle do Stripe tem registro de transações

Os artigos originais podem ser encontrados em:

Novas possibilidades com o Parse Server

Parse Server: a New Open Source Baas Framework | back4app blog
If you still haven’t settled on an alternative to Parse, the premier cross-platform BaaS that will be shutting down as…blog.back4app.com


Leave a reply

Your email address will not be published.