Microsoft Ajax CDN – O que é e por que utilizar

O Microsoft Ajax Content Delivery Network ou comumente chamado de Microsoft CDN, é uma iniciativa destinada a melhorar a performance de websites permitindo que os navegadores acessem arquivos de script com maior rapidez.

O Microsoft CDN lhe permite utilizar em suas aplicações as bibliotecas JavaScript mais populares sem que obrigaoriamente precise armazenar os arquivos físicos das mesmas em seu servidor.

Você deve estar se perguntando: “e qual a utilidade disso?” Simples! As bibliotecas disponíveis no CDN são estrategicamente distribuídas por servidores de cache de todo o mundo e ao usuário acessar um site, o conteúdo é baixado de um desses servidores de forma mais rápida, minimizando a banda utilizada pelo seu site.

Agora imagine o seguinte cenário: Você publicou o seu site utilizando os recursos do Microsoft Ajax CDN e aquele site legal que você sempre acessa também teve a ótima idéia de fazer o mesmo. Ao acessar um desses dois sites pela primeira vez, o arquivo será baixado para sua máquina e ficará em cache. Quando você acessar o segundo website, ele usará o arquivo que já está armazenado no cache do seu navegador, o que reduz o tempo de carregamento do site.

Ah, mas quanto tenho que pagar por isso? Nada! Este serviço está disponível gratuitamente para todos, não exige qualquer tipo de registro e pode ser utilizado tanto para fins comerciais quanto não-comerciais.

Agora que você já entendeu o que é o Microsoft Ajax Content Delivery Network, vamos a prática ver como ele pode ser adicionado em seus projetos.

Para incluir os scripts do CDN em seu projeto, basta adicioná-los normalmente como qualquer outro script, porém, apontando para os servidores da Microsoft. Veja o exemplo abaixo onde utilizamos o jQuery 1.4.2:

<br />
<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js" type="text/javascript"></script> 

Simples, não é? A-há! Agora aposto que você deve estar pensando: “E se por acaso os sevidores da Microsoft não estiverem disponíveis?”. Bom, neste caso você precisará implementar manualmente uma funcionalidade de fall-back para estes arquivos. Por exemplo:

 <script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js" type="text/javascript"></script><br />
<script type="text/javascript">// <![CDATA[<br />
if (typeof jQuery == 'undefined') {     document.write(unescape("%3Cscript src='/js/jquery-1.4.2.min.js' type='text/javascript'%3E%3C/script%3E")); }<br />
// ]]></script><br />

Ele tentará obter o arquivo dos servidores da Microsoft e se por acaso não for bem sucedido, ele irá escrever a chamada para o arquivo do seu servidor local.

Os servidores da Microsoft são confiáveis mas é uma boa prática ter este fall-back implementado para previnir qualquer problema desagradável.

Configurando o CDN no ASP.Net 4.0

Agora, se você já adotou o ASP.Net 4.0 em seus projetos, veja o novo recurso do ScriptManager para utilização do CDN.

<br />
<asp:ScriptManager<br />
ID="ScriptManager1"<br />
EnableCdn="true"<br />
Runat="Server" /><br />

Como você pode conferir acima, agora ele conta com a propriedade EnableCd. Quando você seta o valor dessa propriedade para true, sua aplicação utilizará o Microsoft CDN para requisitar os arquivos JavaScript que antes eram armazenados nas dll’s System.Web.dll ou System.Web.Extensions.dll automaticamente.

Bibliotecas Disponíveis

Atualmente o Microsoft Ajax Content Delivery Network armazena os arquivos das seguintes bibliotecas JavaScript:

  • ASP.NET Ajax 4
  • ASP.NET Ajax 3.5
  • Ajax Control Toolkit 40412
  • jQuery 1.4.2
  • jQuery 1.4.1
  • jQuery 1.4
  • jQuery 1.3.2
  • jQuery UI 1.8.5
  • jQuery Cycle 2.88
  • jQuery Templates (Beta 1)
  • jQuery Validate 1.7
  • jQuery Validate 1.6
  • jQuery Validate 1.5.5
  • ASP.NET MVC 1.0

Essa lista cresce ao passar dos tempos e recomendo consultar a seguinte página para obter um status e a lista atualizada: http://www.asp.net/ajax/cdn

Pretty cool, huh? Eaí, que tal adotar você também a utilização do CDN?

Compartilhe!

Tags: , ,

1 Response to "Microsoft Ajax CDN – O que é e por que utilizar"

  • Vitor Canova says:
Leave a Comment