IIS8 的内存改善(IIS8 Memory Improvements )

以下这篇文章翻译自外国朋友Rick Barber的博客!本文着重就windows server 2012 IIS8的内存改进进行了说明!

There is a lot of buzz in the Internet Information Services (IIS) community about IIS 8, the version of IIS that is included with Windows Server 2012.  While there are plenty of new features in IIS 8, for this writing I am going to focus on the memory improvements that you will see for the application pools.  Memory is a key resource on an IIS server as it is often the first limiting factor if you planned your CPU and disk requirements appropriately.

很多的互联网信息服务社区都有关于windows server 2012所包含的IIS版本 — iis8的信息。虽然iis8有很多新功能,在本文,我将重点放在应用程序池的内存的改善上,如果您的处理器和磁盘需求规划适当,内存往往是一个关键资源服务器的第一限制因素,。

I was fortunate to be able to attend TechEd North America 2012 and get some early first-hand knowledge of IIS 8.  During the conference I attended all of the sessions on IIS since that is my primary interest.  One presentation really caught my attention because not only did it talk about performance improvements, it included some demos showcasing these improvements.  With numbers.

我很幸运能够参加TechEd North America 2012 并接触到一些早期的关于IIS8的第一手资料。会议期间,我参加所有的会议就因为这是我的主要兴趣。一个演示确实引起了我的注意,因为它不仅谈到性能的改进,包括一些演示用数字展示了这些改进。

Numbers mean a lot to me.  Any person can talk on and on but to me it all comes down to numbers.  My first degree in mathematics has taught me that while numbers never lie, they can be manipulated in many ways.  These different ways are sometimes used to present misleading information so I always look at numbers cautiously.  With that in mind I set out to come up with some of my own numbers.


My goal here isn’t to try to disprove the numbers that were presented, it is to present numbers to you from my perspective.  In fact, I am not running the same tests that were presented on purpose but have come up with my own tests.  In general terms, there is one claim that I am looking at for the purpose of this post:  IIS 8 uses less memory.


I built two fresh Windows servers, one with Windows 2008 R2 64-bit running IIS 7.5 and one with Windows 2012 64-bit running IIS 8.  Each one is virtualized in my test lab and is running on the same hardware with the same resources allocated to it.  Both also have the most up-to-date security patches installed.  I want the server environment on both servers to be as equal as possible.

我建立了两个新的Windows服务器,一台使用Windows 2008 R2 64位运行IIS 7.5与Windows 2012 64位运行IIS 8。在我的测试实验室,并在相同的硬件上运行相同的资源分配给它的每一个虚拟机。两者还都安装有最新的安全补丁。我想让两台服务器上的服务器环境尽可能的相同。

Next I created a basic HTML page with an image and then converted that same HTML page over to an .aspx page running in ASP.Net 4.0.  I ran tests on IIS 7.5 with .htm and .aspx files on a 32-bit application pool and a 64-bit application pool.  I ran the same tests on IIS8.  Here are the results of the memory used by the worker process:

接下来,我创建了一个基本的带图片HTML页面,然后转换成相同的HTML页面的以aspx页面运行在ASP.Net 4.0。我在IIS 7.5中运行测试。HTM和一个32位的应用程序池和一个64位的应用程序池.aspx文件。我运行相同的测试第IIS8。以下是工作进程使用的内存的结果

IIS 7.5 IIS 8
.htm (32-bit) 4.5 MB 3.2 MB
.htm (64-bit) 6.0 MB 4.2 MB
.aspx (32-bit) 10.0 MB 8.0 MB
.aspx (64-bit) 12.7 MB 11.9 MB

So as you can see, IIS 8 does use less memory than previous versions of IIS no matter how you do the numbers even in the very simple tests that I ran.  A smaller footprint per application pool opens the door to higher densities on IIS servers or if you are running a smaller number of sites you can get by with less hardware.  This makes hosting your application on a cloud server even better than before.  No matter how you look at it, IIS 8 will allow you to host your web applications with an overall lower cost of ownership.


目前共 0 条评论