Exchange 2007 内存使用问题

有很多人问到关于Exchange 2007 Server 服务器的内存使用问题。

首先它和Exchange 2003 是有很大差别的,Exchange 2003是32位架构设计,所以内存最大使用限制是4GB.而Exchange 2007是64位的,对内存的使用将不再有限制,甚至可以高达32GB甚至更高.我自己在测试环境中甚至发现 Store.exe这个进程对内存的占有率甚至高达90%,这是个正常现象,如果你刚好遇到,不用但是是不是出了什么问题。

在Exchange 2003里,存储进程Store.exe 处理数据库缓存是有上限的,一般在900MB,但是在Exchange2007里,数据库缓存将没有限制,最小是512M,上不封顶,也就是说内存有多大,缓存就扩充到多大,你会发现如果没有其他应用程序使用内存的话,Store.exe这个进程甚至消耗掉96%的内存,这样的目的就是要降低数据库对磁盘的I/O访问,提高性能和响应时间。当发现有其他应用程序需要一定的内存时,Store.exe这个进程会自动的缩小数据库缓存来释放一部分的内存空间出来以供使用。

当然我们也可以设定数据库缓存大小来控制其对内存的无限制的占有,方法如下:

How to modify the default database cache size:
To modify msExchESEParamCacheSizeMax:
1. Start ADSI Edit.
2. Open the following object:
Configuration/Services/Microsoft Exchange/Your organization/Administrative
Groups/Your administrative group/Servers/Server name/Information Store
3. Right-click Information Store, and then click Properties.
4. Under the list of Attributes, scroll down and select msExchESEParamCacheSizeMax.
5. Click the Edit button, then type the number of 8 kilobyte (KB) pages that you
want to set the maximum cache size to.
    For example. 1GB cache equates to 1048576 (1024 * 1024). Divide the cache that you
want to set by 8kb to determine the value to enter. In this case, 1048576 divided
by 8 is 131072.

If you wanted to set the cache size to 16GB, the value would be 2097152 (16777216
divided by 8).

Note
======
The msExchESEParamCacheSizeMax parameter controls the ESE buffer size. Its
value is expressed as a page count, and must be set to an exact multiple of 8192
for maximum efficiency. If this value is not met, the cache size is rounded up to
the next 32-MB boundary when virtual memory is allocated. If this value is
incorrectly set, memory may be wasted.


6. Quit ADSI Edit, and then restart the Microsoft Exchange Information Store service.

不过,这样做可能会影响邮件服务器的性能,不建议大家这样做。

posted @ 2010-10-22 15:49  bluehat  阅读(1278)  评论(0编辑  收藏  举报