Sincronização da Web para replicação de mesclagem

A sincronização da Web para replicação de mesclagem permite replicar dados usando o protocolo HTTPS, o que é útil nos seguintes cenários:

  • Sincronizando dados de usuários móveis pela Internet.

  • Sincronizando dados entre MicrosoftSQL Server bancos de dados por um firewall de empresa.

Por exemplo, um representante de vendas ambulante pode usar a sincronização da Web. A empresa, Adventure Works Cycles, tem representantes de vendas que viajam a várias lojas e fornecedores ao longo das suas regiões. Em viagens longas os representantes ficam em hotéis e precisam de uma forma conveniente para carregar os dados de vendas e baixar as atualizações de produtos no final de cada dia.

O departamento de TI de Adventure Works configurou cada notebook com SQL Server e habilitou a replicação de mesclagem para usar a sincronização da Web. O Merge Agent em cada notebook possui uma URL de Internet que aponta para os componentes de replicação que são instalados em um computador que está executando Microsoft Serviços de Informações da Internet (IIS). Esses componentes sincronizam o Assinante com o Publicador. Agora, cada representante pode se conectar através de qualquer conexão de Internet disponível sem usar uma conexão remota de discagem, e pode carregar e baixar os dados apropriados. A conexão de Internet usa o Protocolo SSL (Secure Sockets Layer); portanto, uma rede privada virtual (VPN) não é requerida.

Para obter informações sobre como configurar os componentes que são requeridos para sincronização da Web, consulte Configurando a sincronização da Web.

ObservaçãoObservação

A sincronização da Web é projetada para sincronizar dados com computadores portáteis, dispositivos de mão e outros clientes. A sincronização da Web não é destinada para aplicativos de alto volume de servidor a servidor.

Visão geral de como a sincronização da Web funciona

Quando a sincronização da Web é usada, as atualizações no Assinante são empacotadas e enviadas como uma mensagem XML ao computador que está executando IIS usando o protocolo HTTPS. O computador que está executando IIS então envia um comando ao Publicador em formato binário, normalmente usando TCP/IP. Atualizações no Publicador são enviadas ao computador que está executando IIS e, então, são empacotadas como uma mensagem XML para entrega ao Assinante.

A ilustração seguinte mostra alguns dos componentes que são envolvidos em sincronização da Web para replicação de mesclagem.

Fluxo de dados e componentes de sincronização da Web

A sincronização da Web é uma opção apenas para assinatura pull; então, um Merge Agent sempre será executado no Assinante. Esse Merge Agent pode ser o Merge Agent padrão, o MErge Agent do controle de Active X ou um aplicativo que fornece sincronização através do RMO (Replication Management Objects). Para especificar o local do computador que está executando IIS, use o parâmetro -InternetUrl para o Merge Agent.

O SQL Server Replication Listener (Replisapi.dll) está configurado no computador que está executando o IIS e é responsável por lidar com as mensagens enviadas para o servidor pelo Publicador e pelos Assinantes. Cada nó na topologia controla o fluxo de dados XML usando o Merge Replication Reconciler (Replrec.dll). Para obter mais informações as topologias com suporte, consulte Topologias para sincronização da Web.

O SQL Server 2005 ou posterior é necessário para todos os computadores que participam da sincronização da Web.

Processo de sincronização

As etapas seguintes acontecem durante a sincronização:

  1. O Merge Agent é iniciado no Assinante. O agente faz o seguinte:

    1. Faz uma conexão SQL ao banco de dados de assinatura.

    2. Extrai quaisquer alterações do banco de dados.

    3. Faz uma solicitação HTTPS ao computador que está executando IIS.

    4. Carrega as alterações de dados como uma mensagem de XML.

  2. O SQL Server Replication Listener e Reconciliador de Replicação de Mesclagem que estão hospedados no computador que está executando IIS, fazem o seguinte.

    1. Respondem à solicitação de HTTPS.

    2. Fazem uma conexão SQL ao banco de dados de publicação.

    3. Aplicam as alterações carregadas ao banco de dados de publicação.

    4. Extraem as alterações de download para o Assinante.

    5. Enviam de volta uma resposta de HTTPS ao Merge Agent.

  3. O Merge Agent no Assinante oferece suporte à resposta HTTPS e aplica as alterações de download ao banco de dados da assinatura.