ASP 101 - Active Server Pages 101 - Web04
The Place ASP Developers Go!

Please visit our partners


Windows Technology Windows Technology
15 Seconds
4GuysFromRolla.com
ASP 101
ASP Wire
VB Forums
VB Wire
WinDrivers.com
internet.commerce internet.commerce
Partners & Affiliates














ASP 101 is an
internet.com site
ASP 101 is an internet.com site
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

ASP 101 News Flash ASP 101 News Flash



 Top ASP 101 Stories Top ASP 101 Stories
Getting Scripts to Run on a Schedule
The Top 10 ASP Links @ Microsoft.com
What is Adovbs.inc and Why Do I Need It?

QUICK TIP:
Is The User Still There?
Show All Tips >>
ASP 101 RSS Feed ASP 101 Updates


A Quick Look at XCompress

by John Peterson

Introduction

If you're like most, you've spent a lot of time and money building your web site. You've tweaked your database code, streamlined your ASP and/or ASP.NET code, set up caching to make things faster, and validated your HTML to the latest/most compatible version so that everything will be perfect. Why should you stop there? There's an easy way to improve your site even more by speeding it up...

XCompress

XCompress is a compression product that works either as an ISAPI filter or as a COM object. It compresses the data (using the GZip compression format) right before it leaves the server. The data is then transfered to the client in its compressed form. The client then decompresses it. Most recent browsers handle this by default and for the ones that don't, XCompress will seamlessly downgrade to a non-compressed data transmission mode.

Using it as an ISAPI filter (the most common usage) is so simple it's scary... install it, tell it what types of files to compress, and it does the rest. No additional programming or changes to your pages are necessary. It even compresses dynamic content (ASP/ASP.NET files) on the fly, making the resulting pages a fraction of their original size.

I didn't really play with the product as a COM object, but if you do need to do something a little different, it's nice to know that type of flexabilty is built in.

Screen Shots

There's really not much to the UI of the product:

That's about it! Simply install it, enter your license key, tell it what MIME types to compress in the dialog box above and you're good to go. If you're not sure which types to compress, you're in luck, the product includes some recommendations and plenty of documentation.

Perhaps the most useful feature of the product (aside from it doing it's job!) is the fact that it includes performance monitor counters so you can see in real time how well it is working. For example, if you set it up to compress already-compressed file types, you'll notice very poor compression ratios. By checking the statistics on your own site, you can find the settings that work best for you.

Conclusion

The product does what it says and does it quite well. Best of all it does it without a lot of fuss on your part. That being said... I'm not sure how much this will help the average web site since many sites suffer from other performance issues that are probably having a larger effect on their perceived performance then their bandwidth consumption. On the other hand... it really can't hurt! If performance is important to you and you've already optimized what you can, give XCompress a look.

The situations when I would consider XCompress (or some other compression solution) to be an absolute must are on sites that...

  • ...have a lot of users using slow (aka. dial-up) connections. - They need all the help they can get!
  • ...pay for bandwidth on a per MB transferred basis. - It'll pay for itself pretty quickly.
  • ...serve content that is highly compressible (like .bmp files). - The perceived speed increase will be worth it.
  • ...don't do a lot of processing, but find their net cards pushing their limits. - It's much cheaper then a new server.

If you'd like to find out how much XCompress can help your site, check out their online XCompress Benefit Analysis.

Update: XCompress vs. IIS

I've gotten quite a few questions from people asking why they should use XCompress when IIS has built in HTTP compression and it's free. Here are the main problems with IIS compression that I've run across:

  • It's difficult to configure for different file types - registry editing is the only way I could find to get the job done. It doesn't compress ASP.NET files by default and it operates off extension and not MIME type.
  • It's impossible to set it up differently for different sites hosted on the same server. All changes affect the entire computer.
  • It has some bugs that can be a real pain to deal with. KB article Q313712 is the big one. XCompress's site lists a number of others, but misses Q314307.
  • It's simply not as efficient as XCompress and uses more CPU cycles.

Update: More on XCompress vs. IIS

I recently got an email from my contact over at XCache mentioning a new page they've posted. It seems they've had a lot of inquiries about how XCompress is different from the built in IIS compression as well. I thought I should mention it for those of you who want a little more information. Their list of reasons why XCompress is superior to IIS built in compression can be found here.

They've also reworked their site a little to make it clear that XCompress does not have some of the problems that IIS does. Both the "First 2048 Bytes" and "Uppercase Characters" KnowledgeBase articles make it sound like these are problems with all compression products of this type when they are in fact only problems in IIS compression. See the page linked above... it should help clear things up.

Update: XCompress for IIS 1.2 and XCompress 1400

A new version of XCompress is out... XCompress for IIS 1.2. For a list of new features existing customers can login and check out their "What's New in This Version" page and then download the new setup.

For those of you looking for a hardware based solution, our friends over at XCache now have that covered too...

The XCompress 1400 is a compression only appliance using HTTP Compression in a highly effective way to improve page response times and lower bandwidth requirements. Most text transmissions regardless of origination (i.e. XML, ASP, CGI, JSP, DHTML, HTML, etc.) can be compressed by up to 90% by the XCompress 1400. For most web applications, this degree of compression translates to an overall bandwidth reduction of approximately 30% - sometimes much higher.

For more info on the XCompress 1400 compression appliance, click here.

XCompress for IIS Version 2.1 Released

XCache Technologies has launched XCompress for IIS V2.1. This latest version is vastly improved over V2.0, fixing many bugs reported by customers running V2.0 and has been extensively beta tested.

XCompress for IIS V2.1 supports Windows 2003 .NET Server running IIS 6.0 and Windows XP for development environments. The Windows 2003 .NET Server version runs both in IIS 5.0 isolation mode and multiple process IIS 6.0 mode.

XCompress for IIS V2.1 supports Windows XP and IIS 5.1 for those of you wanting to run on development servers.

XCompress for IIS V2.1 also allows you to choose what type of streaming optimization you want for true streaming compression, and fully support Cold Fusion files. We have also updated the Smart Compression Technology code to address .bmp files.

XCompress for IIS V2.1 Overview
XCompress for IIS Features (New Features in Version 2.1)

More Information

For more information, check out the XCompress home page.


Home |  News |  Samples |  Articles |  Lessons |  Resources |  Forum |  Links |  Search |  Feedback

Internet.com
The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers