Menu Docs
Página inicial do Docs
/ /
Serviços Atlas App
/ /

Configurar e Ativar Atlas Device Sync

Nesta página

  • Visão geral
  • Pré-requisitos
  • Procedimento

Você pode configurar e habilitar o Atlas Device Sync por meio da IU do App Services, do App Services CLI ou da Atlas App Services Admin API. Pode atualizar uma configuração existente da mesma maneira. Se for a primeira vez que habilitar o Device Sync, a interface do usuário será uma ótima opção porque orienta nas etapas necessárias.

Você pode querer ajustar as configurações do Atlas Device Sync após já ter habilitado o Device Sync. Você pode atualizar uma configuração seguindo os mesmos passos usados para habilitar o Device Sync inicialmente. Se você estiver usando o modo Flexible Sync, poderá atualizar as configurações sem a necessidade de encerrar e reiniciar o Sync.

Se você estiver reativando o Device Sync depois de pausá-la ou encerrá-la, consulte Retomar ou reativar o Device Sync.

Dica

O Device Sync é pausado automaticamente após 30 dias de inatividade.

Se você ainda não decidiu como deseja configurar seu modelo de dados, consulte Visão geral da sincronização do modelo de dados.

A menos que esteja usando modo de desenvolvimento, especifique pelo menos um esquema válido para uma collection no cluster sincronizado antes de habilitar a sincronização. No mínimo, o esquema deve definir _id como uma chave primária. Você também deve incluir o(s) campo(s) que pretende usar como seus campos de query.

Para obter mais detalhes sobre como definir um esquema, consulte Definir e aplicar um esquema.

Observação

Requisitos de fonte de dados para Device Sync

Para habilitar o Device Sync, seu aplicativo do App Services App deve ter pelo menos uma fonte de dados vinculada que atenda aos seguintes requisitos:

  • Um cluster de MongoDB Atlas não fragmentado executando o MongoDB 5.0 ou posterior.

  • O cluster não pode ser uma instância sem servidor ou instância do banco de dados de dados federado. Consulte Limitações da fonte de dados.

1

Para habilitar o Device Sync para seu aplicação, navegue até a tela de configuração do Device Sync através do menu de navegação esquerdo.

2

Siga as instruções para configurar o Device Sync Para obter detalhes sobre as configurações disponíveis, consulte Configurações de Sync.

3

Clique em Enable Sync, anote todas as recomendações que aparecerem e confirme sua escolha.

1

Use sua chave de API Admin do MongoDB Atlas para fazer login na CLI:

appservices login --api-key="<my api key>" --private-api-key="<my private api key>"
2

Obtenha uma cópia local dos arquivos de configuração do seu aplicativo. Para obter a versão mais recente do seu aplicativo, execute o seguinte comando:

appservices pull --remote="<Your App ID>"

Você também pode exportar uma cópia dos arquivos de configuração do aplicativo da interface do usuário ou com a API Admin. Para saber como, consulte Exporte um aplicativo.

3

Você pode habilitar a sincronização para um único cluster vinculado em seu aplicativo. Se ainda não tiver vinculado o cluster ao seu aplicativo, siga primeiro o guia Vincule uma fonte de dados.

O aplicativo App Services tem um diretório sync onde você pode encontrar o arquivo de configuração de sincronização. Se você ainda não tiver ativado o Sync, esse diretório estará vazio.

Adicione um config.json semelhante a:

{
"type": "flexible",
"development_mode_enabled": <Boolean>,
"service_name": "<Data Source Name>",
"database_name": "<Development Mode Database Name>",
"state": <"enabled" | "disabled">,
"client_max_offline_days": <Number>,
"is_recovery_mode_disabled": <Boolean>,
"indexed_queryable_fields_names": <Array of String Field Names>,
"queryable_fields_names": <Array of String Field Names>,
"collection_queryable_fields_names": <Map[String][]String>
}

Consulte a Referência do arquivo de configuração de sincronização para mais informações.

4

Implante suas alterações para começar a sincronizar dados. Importe a configuração do seu aplicativo:

appservices push --remote="<Your App ID>"
1

Você pode ativar o Realm Mobile Sync para um único cluster vinculado em sua aplicação. Se você ainda não vinculou o cluster à sua aplicação, siga o guia Vincular um conjunto de dados .

Observação

Autenticando sua solicitação com um token de acesso

Para autenticar sua solicitação no App Services Admin API, você precisa de um token de autorização válido e atual da API do MongoDB Cloud. Leia a documentação de autenticação da API para saber como adquirir um token de acesso válido.

Você precisará do arquivo de configuração de serviço do cluster para configurar a sincronização. Você pode encontrar o arquivo de configuração listando todos os serviços por meio da API de administrador:

Encontre o ID do seu cluster
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services \
-X GET \
-h 'Authorization: Bearer <Valid Access Token>'

Identifique o cluster cuja configuração você precisa atualizar para habilitar a sincronização. Se você aceitou os nomes padrão ao configurar seu aplicativo, ele deverá ser um cluster cujo name seja mongodb-atlas e type seja mongodb-atlas. Você precisa do _id deste cluster.

Agora você pode obter o arquivo de configuração do serviço para este cluster:

Obter o arquivo de configuração do serviço para o cluster
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services/{MongoDB_Service_ID}/config \
-X GET \
-h 'Authorization: Bearer <Valid Access Token>'

Para configurar a sincronização, adicionaremos um objeto flexible_sync a essa configuração em uma etapa a seguir.

2

Se você quiser ativar o Modo de desenvolvimento para simplificar a produção, use o seguinte comando:

Habilitar modo de desenvolvimento
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/sync/config \
-X PUT \
-h 'Authorization: Bearer <Valid Access Token>' \
-h "Content-Type: application/json" \
-d '{"development_mode_enabled": true}'
3

Para implantar suas alterações e começar a sincronizar dados, envie uma solicitação de API Admin que atualize a configuração do cluster com um objeto flexible_sync usando a seguinte configuração de modelo:

Atualizar configuração de sincronização
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services/{MongoDB_Service_ID}/config \
-X PATCH \
-h 'Authorization: Bearer <Valid Access Token>' \
-h "Content-Type: application/json" \
-d '<Flexible Sync Configuration>'
Configuração flexível de sincronização
{
"flexible_sync": {
"state": "enabled",
"database_name": "<Name of Database>",
"client_max_offline_days": <Number>,
"is_recovery_mode_disabled": <Boolean>,
"indexed_queryable_fields_names": <Array of String Field Names>,
"queryable_fields_names": <Array of String Field Names>,
"collection_queryable_fields_names": <Map[String][]String>
}
}

Para obter detalhes sobre a configuração de sincronização, consulte a Referência do arquivo de configuração de sincronização.

Você pode confirmar que a configuração de sincronização foi adicionada obtendo a configuração do serviço novamente, conforme descrito na etapa 1.

Voltar

Configurar sincronização