Training
Module
Implement Windows Server Data Deduplication - Training
Implement Windows Server Data Deduplication
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
By Yanbing Shi
This article provides an overview of IIS Compression.
IIS Compression is a bundle of two IIS compression scheme providers, iisbrotli.dll and iiszlib.dll, that expand IIS's capability to compress HTTP responses. iisbrotli.dll supports Brotli compression, while iiszlib.dll supports both Gzip and Deflate compression.
An IIS compression scheme provider:
StaticCompressionModule
and DynamicCompressionModule
.IIS StaticCompressionModule
and DynamicCompressionModule
:
IIS ships a default compression scheme provider gzip.dll:
The in-box gzip.dll is based on an internal implementation of Gzip and Deflate encoding, and it works properly. So why introduce new compression scheme providers in IIS Compression?
Brotli compression:
Brotli decompression on the client (browser) side is in general faster. Enabling Brotli compression can potentially improve performance, especially for serving static contents.
While iiszlib.dll included in IIS Compression offers same Gzip and Deflate compression as the default provider gzip.dll, iiszlib.dll:
IIS Compression
:
brotli
and zlib
libraries with IIS compression modules through implementing the IIS HTTP Compression API.Making IIS Compression
open-source provides transparency to the community and allows flexible and agile future enhancement, bug fixing, and customization. The project also serves a general reference for developing an IIS compression scheme provider to the community.
The iiszlib.dll and iisbrotli.dll compression scheme providers are not IIS modules, they are extensions of IIS StaticCompressionModule
and DynamicCompressionModule
. At runtime, StaticCompressionModule
and DynamicCompressionModule
load the compression scheme providers and pass the response content data to them for compression.
Therefore, one or both of the two compression modules need to be installed on the IIS server as a prerequisite. See HTTP Compression on how to install the features. Once the modules are installed, ensure static and/or dynamic compression are enabled for a desired URL namespace. See URL Compression on how to enable the corresponding type of compression.
Download the Microsoft IIS Compression release from the following locations:
Open a command prompt with administrator user rights.
Stop the WAS and W3SVC services by entering the following:
net stop was /y
Run iiscompression_<architecture>.exe; for example:
msiexec /I iiscompression_x86.msi
msiexec /I iiscompression_amd64.msi
Accept the End User License Agreement (EULA).
Complete the installation.
Start the WAS and W3SVC services by entering the following:
net start w3svc
The IIS Compression installer drops iisbrotli.dll and iiszlib.dll to %ProgramFiles%\IIS\IIS Compression
.
The installer registers iisbrotli.dll as the br (Brotli) compression scheme provider in applicationHost.config. It also replaces the default gzip compression scheme provider gzip.dll with iiszlib.dll. A sample <httpCompression>
element in applicationHost.config is shown below:
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
<scheme name="br" dll="%ProgramFiles%\IIS\IIS Compression\iisbrotli.dll" />
<scheme name="gzip" dll="%ProgramFiles%\IIS\IIS Compression\iiszlib.dll" />
<dynamicTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="application/atom+xml" enabled="true" />
<add mimeType="application/xaml+xml" enabled="true" />
<add mimeType="image/svg+xml" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
</httpCompression>
Training
Module
Implement Windows Server Data Deduplication - Training
Implement Windows Server Data Deduplication