Visão geral dos XML Web Services Nativos

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Este tópico compara os XML Web Services Nativos no MicrosoftSQL Server ao Microsoft SQLXML, descreve como funcionam os XML Web Services Nativos e lista algumas vantagens de sua utilização.

Os XML Web Services Nativos não são úteis nem recomendados para os seguintes cenários:

  • Aplicativos caracterizados por grande acesso simultâneo em tempo real, com transações de curta duração.

  • Tipo de web farm em expansão.

  • Como uma substituição para a camada intermediária, especificamente onde a arquitetura de aplicativos tem demandas de lógica de negócios de grande escala que são melhor acomodadas em componentes da camada intermediária.

Comparando os XML Web Services Nativos ao SQLXML

Antes do SQL Server 2005, o acesso a um banco de dados do SQL Server exigia o uso do protocolo TDS. O TDS é um protocolo proprietário para o qual deve haver suporte em clientes de desktop baseados no Windows. Às vezes, os clientes SQL Server devem usar o Microsoft Data Access Components (MDAC). A pilha do MDAC é instalada no computador cliente que se conecta ao SQL Server. Para o SQL Server, o SQLXML 3.0 é um componente de camada intermediária que dá suporte ao acesso baseado na Web ao SQL Server, mas o IIS (Serviços de Informações da Internet) também deve ser usado.

A partir do SQL Server 2005, com a combinação do uso do HTTP e do SOAP, os XML Web Services Nativos fornecem uma alternativa para ambientes diferentes do Windows, como mostra a ilustração a seguir.

Comparando os XML Web Services Nativos ao SQLXML

Como não há mais a necessidade de ter o MDAC instalado no cliente ou do SQLXML com essa dependência na camada intermediária do IIS, o acesso SOAP e HTTP permite que mais clientes acessem o SQL Server. Isso inclui clientes de aplicativos da Web que usam aplicativos cliente existentes, como um navegador da Web. Os XML Web Services Nativos facilitam o trabalho com o Microsoft.NET Framework, Microsoft SOAP Toolkit, o Perl e outros conjuntos de ferramentas e sistemas operacionais de desenvolvimento da Web.

A tabela a seguir mostra alguns recursos oferecidos por cada tecnologia.

XML Web Services Nativos

Microsoft SQLXML

  • Uma implementação de servidor SOAP totalmente compatível que pode dar suporte a clientes SOAP 1.1 e SOAP 1.2.

  • Suporte completo à execução em lotes com parâmetros.

  • Geração WSDL dinâmica no servidor.

  • Arquivos de esquema e modelo XML. Eles dão suporte a exibições XML atualizáveis.

  • Diagramas de atualização.

  • Carregamento em massa de XML.

Como funcionam os XML Web Services Nativos

Para usar os XML Web Services Nativos no SQL Server, é necessário estabelecer um ponto de extremidade HTTP no servidor. Este ponto de extremidade é basicamente o gateway pelo qual clientes baseados em HTTP podem consultar o servidor. Depois que um ponto de extremidade HTTP é estabelecido, os procedimentos armazenados ou as funções definidas pelo usuário podem ser adicionados ou disponibilizados para usuários do ponto de extremidade. Isto pode ocorrer quando o ponto de extremidade é criado ou atualizado. Quando procedimentos e funções estão habilitados, eles são especificados como métodos Web. Uma coleção de métodos Web que são criados para serem usados em conjunto pode ser chamada serviço Web.

Estes serviços Web podem ser descritos usando o formato WSDL. O formato WSDL é gerado por uma instância do SQL Server e retornado para clientes SOAP para qualquer ponto de extremidade HTTP no qual o WSDL esteja habilitado, como mostra a ilustração a seguir. Se necessário, o formato WSDL pode ser uma solução personalizada em vez de ser gerado pelo SQL Server. Opcionalmente, o ponto de extremidade pode ser configurado para não responder solicitações WSDL.

Como funcionam os XML Web Services Nativos

Depois desse processo, coleções de serviços Web habilitados para SQL Server podem ser implementados e usados para ajudar a criar e preencher uma Arquitetura Orientada a Serviços (SOA). Para obter mais informações pesquise a palavra-chave "SOA" na MSDN Online Library neste site da Microsoft.

Vantagens do uso dos XML Web Services Nativos

Uma instância do SQL Server que pode funcionar como seu próprio XML Web Service oferece as seguintes vantagens:

  • Qualquer aplicativo de serviços Web pode acessar uma instância do SQL Server

    Este é o principal benefício. Como os XML Web Services Nativos são baseados em tecnologias bastante conhecidas, como o XML e o HTTP, agora qualquer dispositivo que pode analisar XML e enviar solicitações HTTP pode acessar o SQL Server. Isso permite um acesso mais amplo ao SQL Server em ambientes heterogêneos nos quais os aplicativos executados em sistemas operacionais diferentes o Windows podem exigir conectividade com o SQL Server. Tradicionalmente, nesses casos, o uso de drivers JDBC (Java Database Connectivity) ou ODBC (Open Database Connectivity) era a única solução disponível. Os XML Web Services Nativos no SQL Server fornecem uma outra alternativa de baixo custo. Por exemplo, esse recurso poderia ser muito útil para cenários nos quais um administrador de banco de dados tem scripts escritos em Perl que são executados em sistemas operacionais diferentes do Windows para gerenciar um recurso do SQL Server.

  • Integração aprimorada com conjuntos de ferramentas de desenvolvimento da Web da Microsoft e de terceiros

    Com os XML Web Services Nativos, os resultados de consultas SQL retornam em formato XML. Com o uso de esquemas predefinidos, ambientes de desenvolvimento integrado (IDEs) inteligentes com suporte a SOAP/HTTP interno, como o MicrosoftVisual Studio 2005 ou o JBuilder, podem tirar proveito dos XML Web Services Nativos para ajudar na geração de código proxy que abstrai a comunicação com uma instância do SQL Server. Na maior parte do tempo o IDE gera e fornece os objetos que os aplicativos cliente podem então usar para acesso a dados baseados na Web.

  • Suporte aprimorado para clientes móveis se conectam de forma intermitente ou flexível

    A utilização dos XML Web Services Nativos também permite acessar uma instância do SQL Server a qualquer momento. Isso facilita o desenvolvimento de aplicativos para dispositivos móveis ou que se conectam de forma intermitente. Depois que uma conexão foi estabelecida e que o servidor iniciou o processamento de solicitações, o servidor pode ser monitorado usando os mecanismos existentes disponíveis nos clientes tradicionais baseados na rede que usavam o TDS e as Net-Libraries do SQL Server.

  • Medidas de segurança internas do servidor reduzem a necessidade de implementar firewalls adicionais

    Os XML Web Services Nativos fornecem um nível interno de segurança para o acesso à Web. Diferentemente de um servidor Web típico, os pontos de extremidade HTTP que são criados para uso pelo SQL Server não permitem o acesso de usuário anônimo. Para criar pontos de extremidade, primeiro são necessários privilégios administrativos em nível de sistema no servidor, e os pontos de extremidade expõem apenas os métodos armazenados que são tornados públicos ao configurar os pontos de extremidade.