HTTP Compression 101 & Enabling HTTP Compression + Caching on IIS – For FASTER WEBSITES

HTTP COMPRESSION MISSING-IN-ACTION (BEFORE)

image

HTTP COMPRESSION IN-ACTION (AFTER)

image

WHAT IS HTTP COMPRESSION?

According to RFC 2616, Internet HTTP Compression is a method to send, from the Web server, an HTTP response message in compressed format to a requesting Web browser.

This technology assumes that the Web server is capable of encoding the outbound content and the Web browser is capable of (automatically) decoding the received content.

HTTP Compression saves transfer data volume and speeds ups Web page load time. This short overview discusses various aspects of HTTP compression, suggest proven solutions, and gives hints to further reading.

HTTP Compression is a publicly defined way to compress content (mostly textual) transferred from Web servers across the world wide Web to browsers. The impact of compression is that the number of transmitted bytes is reduced and thus a higher performance is gained. HTTP Compression uses public domain compression algorithms to encode HTML, XML, JavaScript, CSS and other file formats at the server-side. This standards-based method of delivering compressed content is built into HTTP/1.1, and all modern Web browsers support the HTTP/1.1 protocol, i.e. they can decode compressed files automatically at the client-side. This means, in particular, that no additional software or user interaction on the client-side is required.

HTTP REQUEST FLOW
Client sends request to server

When a Web browser loads a Web page, it opens a connection to the Web server and sends an HTTP request to the Web server. A typical HTTP request looks like this:

GET /index.html HTTP/1.1
Host: www.http-compression.com
Accept-Encoding: gzip
User-Agent: Firefox/5.0

With this request, the Web browsers asks for the object "/index.html" on host "www.http-compression.com". The browser identifies itself as "Firefox/5.0" and claims that it can understand HTTP responses in gzip format.

Server sends compressed response to client

After parsing and processing the client's request, the Web server may send the HTTP response in compressed format. Then a typical HTTP response looks like this:

HTTP/1.1 200 OK
Server: Apache
Content-Type: text/html
Content-Encoding: gzip
Content-Length: 12345
[GZIP COMPRESSED DATA]

With this response, the Web server tells the browser with status code 200 that he could fulfil the request. In the next line, the Web server identifies itself as Apache. The line "Content-Type" says that it's an HTML document. The response header "Content-Encoding" informs the browser that the following data is compressed with gzip. Finally, the length of the compressed data is stated.

COMPRESSION FORMATS
deflate

More information:
http://www.gzip.org/zlib/
http://en.wikipedia.org/wiki/DEFLATE

gzip

More information:
http://www.gzip.org/
http://en.wikipedia.org/wiki/Gzip

ENABLE HTTP COMPRESSION @ WEBSITE LEVEL

To more efficiently use available bandwidth, enable IIS HTTP compression. HTTP compression provides faster transmission time between compression-enabled browsers and IIS, regardless of whether your content is served from local storage or a UNC resource. You can compress static files and application response files. Compressing application response files is usually called dynamic compression.

Go to inetmgr > WebSites > Properties > Go to Service Tab

a. Select the checkbox – Compress application files (Dynamic files compression)

b. Select the checkbox – Compress static files (Static files compression)

image

Also, you can specify where to log/store temporary compressed content and the capacity of the temporary directory… Default value is 95MB, you can increase it based on the size of your static contents.

CONFIGURE IIS METABASE – DIRECT MANUPULATION OF METABASE XML

image

image

CONFIGURE IIS METABASE COMPRESSION PARAMETERS – USING SCRIPTS

IMPORTANT – Please make sure you follow these steps for any METABASE CHANGES

  1. STOP IIS
  2. Take BACKUP of METABASE XML
  3. Make changes as outlined below for IIS (using CSCRIPT)
  4. RESTART IIS

Run these commands – to configure static & dynamic compression parameters for both GZIP & Deflate compression schemes.

Note – you can dump below script commands in a batch file and execute it at command prompt on your Windows server

cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoStaticCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoOnDemandCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoDynamicCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoStaticCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoOnDemandCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoDynamicCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcOnDemandCompLevel 10
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDynamicCompressionLevel 9
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoStaticCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoOnDemandCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoDynamicCompression TRUE
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcOnDemandCompLevel 10
cscript C:\Inetpub\AdminScripts\adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDynamicCompressionLevel 9

5. Go to inetmgr > Default WebSite > Right click Properties > HTTPHeaders Tab

clip_image004

Social Media–What Does These Terms Mean To You?

Blogs – can typically thought of as a tool to organize your thoughts, status, ideas, news, and almost everything else that can be communicated in chronological order. This clearly means more permanence than emails, since emails can have tons of wanted + unwanted contents, difficult to keep your inbox organized, limited search abilities, etc… Blogs are one of the most effective means to communicate to the users of your niche or community.

Podcast – Written words turned into live audible or visual communication that encourage different types of learning are called podcasts. Typically they are in portable formats and hence one of the important features is you can listen or watch the podcasts while on road or waiting on airport, or at your favorite Starbucks location…Podcasts are normally split by subject, and hence are normally delivered in small chunks v/s a very large episode… Usually few minutes to an hour or so. This helps the users decide exactly which topic they are interested in and hence helps maintain their library clean.

Social Network – is the tool you want to use if you are looking to replace your intranets & corporate directories, and promote non-e-mail conversation channels within and outside the organization. The key purpose is bring the like-minded people around the globe together thru shared interests, no organizational center, and with a sense of group for what is important and beneficial to the community.

Social Bookmarking – tools help entire groups to learn about new articles, tools, and other web resources instead of being beneficial to only a single machine, or browser, or human. One of the great examples is StumbleUpon.

to be continued…

Remarketing Using Email & Social Media

REGISTER NOW - Remarketing Using Email & Social Media
Thursday, October 13th
11am PDT | 2pm EDT | 7pm BST

Everyone abandons shopping carts and online forms -we’ll show you how easy it is to recover them. In this webcast, we'll be sharing tips on how to recover up to 50% of your website abandoners by triggering real-time remarketing campaigns through email and social media using SeeWhy’s Conversion Manager.

You'll also learn:
• How to calculate the monetary value of your abandonment problem 
• What results the top eCommerce companies are getting and what you can expect
• Best practices on how to optimize your shopping cart recovery campaigns 
• How to leverage ESP's and social media to help

Source

[Webcast] Conversion Tactics: Rethinking abandonment

What you'll learn:

  • Why visitors abandon
  • How abandonment is part of the normal purchase cycle
  • How to generate incremental revenues from abandoners

Why first time purchasers are a critical segment that need special attention

Register Today >>