Introducing the Infragistics Content Delivery Network (CDN)

Craig Shoemaker / Friday, June 18, 2010

One of the most important issues for websites to address is the performance of the objects served within a page. Often a single web page will load in a multitude of images, CSS files and JavaScript files. With the 10.2 release of the NetAdvantage Web Client toolset, Infragistics is announcing the launch of a Content Delivery Network (CDN), currently in CTP, which hosts the web resources used by our controls.

As you are probably well aware, the benefits to using a CDN lie in the fact that files required for your applications are spread throughout severs around the world making them physically closer to user’s machines. The closer proximity speeds up transfer rates allowing your websites to load faster. For instance if your website is hosted on a server in Los Angeles and a user in Tokyo accesses your site, serving files from the CDN will pull files from a server geographically closest to Tokyo rather than shipping all the bits from the Los Angeles-based server.

Why Use the CDN?

In addition to the example stated above, there are a number of other reason you may choose to use the CDN:

  • Increased performance: Users are served files from servers from the closed geographic location, thus increasing performance 
  • Higher Network Capacity: Browsers will only open two concurrent connections to any server, therefore serving files from the Infragistics CDN opens up network resources to load more from your servers. 
  • Higher Availability: CDN content offers 100% uptime (under normal circumstances) 
  • File Compression: Files served from the CDN are pre-compressed 
  • Caching: CSS, JavaScript and image files are cached on the user’s machine until the cache is cleared. This means that if your user visits another website using Infragistics controls (when the site is using the CDN) then the files do not need to be downloaded again since the user already has them on their machine. 
  • Script Combination: If you have the enableCdnScriptCombining attribute set to true then all Aikdo control’s scripts are combined into a single compressed file to serve to the client

When Should I Not Use the CDN?

The CDN is best used on public facing websites. Intranet applications will always achieve higher performance speeds by serving files from the local network rather than reaching out to a server on the web.

What About Availability?

In the (unlikely) event that the servers experience any downtime the styles, scripts and images embedded in the Infragistics DLLs are accessed to serve the necessary files as long as you have the enableCdnFallback attribute set to true.

How Do I Use the CDN?

Enabling your application to take advantage of the CDN is configured one of two ways: for the application or on a per-page basis.

Configuring the Entire Application

To turn on CDN access for the entire application update the web.config to match the following markup:

<configuration>
	<configSections>
		<section name="infragistics.web" 
		  type="System.Configuration.SingleTagSectionHandler,System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
	</configSections>

	<infragistics.web styleSetName="Default" enableCdn=" True"enableCdnScriptCombining="True" enableCdnFallback="True" />
</configuration>

Configuring the Page

To add CDN support for individual pages, you must declare an instance of the new WebScriptManager control:

<ig:WebScriptManager runat="server">
    <InfragisticsCDN Enabled="True" enableCdnScriptCombining="True" enableCdnFallback="True"></InfragisticsCDN>
</ig:WebScriptManager>