Artigo .net Magazine 60 - Introdução ao Synchronization Framework

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Neste artigo você será apresentado ao synchronization framework, conhecendo os detalhes de arquitetura, componentes principais e as etapas do processo de sincronização.

Esse artigo faz parte da revista .NET Magazine edição 60. Clique aqui para ler todos os artigos desta edição

 

imagem_pdf.jpg

 

Novidades

Introdução ao Synchronization Framework

Sincronize facilmente seus dados

 

Neste artigo você será apresentado ao synchronization framework, conhecendo os detalhes de arquitetura, componentes principais e as etapas do processo de sincronização. Além do entendimento dos aspectos conceituais, criaremos com o Visual Studio 2008 uma aplicação simples que trabalhe de forma desconectada com os dados oriundos de um servidor SQL Server central, armazenando-os em um cache local utilizando o SQL Server Compact e posteriormente sincronizando-os com a ajuda do synchronization framework.

 

Apresentação do Synchronization Framework

Sincronização de dados sempre foi e continua sendo uma necessidade real das empresas e pessoas. Mesmo com o advento da Internet onde podemos acessar aplicações hospedadas em qualquer lugar do mundo, se faz necessário a existência de um mecanismo que permita nossas aplicações buscar dados de um repositório, trabalhar com esses dados de forma desconectada (não fazendo manipulações diretamente na fonte) e posteriormente, sincronizar os dados locais com este repositório remoto.

Enquanto a conectividade não estiver presente em todos os lugares, ainda será necessário construirmos maneiras de manter os dados consistentes e, em algum momento, sincronizados. É factível que os programadores criem seus próprios métodos de sincronização utilizando recursos da linguagem e ferramentas de desenvolvimento, mas neste caso temos que tomar cuidado, pois existem várias características desse problema que tornam os algoritmos mais complexos: como será feita a coerência com o cache local? Como trabalhar com conflitos de sincronização? Como lidar com uma possível interrupção da conexão durante o processo de sincronização? Como garantir que o algoritmo de sincronização será eficiente?

 Para ajudar os desenvolvedores, retirando das suas costas a preocupação com a sincronização dos dados e liberando mais tempo para focar nas regras de negócios (o que é realmente importante), a Microsoft criou o Synchronization Framework.

O Synchronization Framework é uma plataforma de sincronização que habilita a colaboração entre aplicações, serviços e dispositivos, permitindo a troca de dados a partir de fontes distintas (e de formatos diferenciados), usando diferentes protocolos e topologias. Sendo uma plataforma extensível, podemos pensar na sincronização de arquivos (músicas, vídeos, documentos, imagens), registros de bancos de dados, informações vindas de serviços web e feeds (RSS/ATOM).

As características de sua arquitetura já oferecem aos desenvolvedores recursos para detecção e resolução de conflitos, armazenamento de dados, erros de conectividade em redes não confiáveis, além de um algoritmo performático e uma API de fácil uso. Nas próximas seções vamos entender como é organizada a arquitetura do Synchronization framework e como podemos criar uma aplicação que sincronize seus dados.

 

Nota: o synchronization framework não é disponibilizado diretamente através do .NET framework, mas sim através da instalação do SQL Server 2008 ou pelo download direto do framework, que pode ser encontrado na seção de downloads da Microsoft.

 

Arquitetura do Synchronization Framework

Um dos objetivos do Synchronization framework é manter uma arquitetura extensível, onde os mesmos algoritmos sejam utilizados para diferentes fontes de dados, seja um banco de dados, um arquivo XML ou um serviço web. Os principais componentes dessa arquitetura, descritos abaixo, podem ser observados na Figura 1.

 

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?