你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
问题
话题
文章
帮助
登录
注册
Problem: GIS服务负载很大时W3WP和SOM进程占用大量内存
文章编号 :
34872
软件:
ArcGIS Server 9.2, 9.3, 9.3.1
操作系统:
Windows XP, 2003 Server
1 个回复
EsriSupport
赞同来自:
错误信息:
当GIS服务负载很大时,IIS的W3WP进程和SOM进程占用大量的内存,严重影响其他程序。
原因:
.NET的垃圾回收有代的概念(Garbage Collector Basics and Performance Hints)。本地变量和短期对象划分为第一代,启动垃圾回收的时候会被频繁地回收。长生命周期的对象是第二代或更高,启动垃圾回收的时候回收频率会小很多。
ArcGIS Server DCOM运行时可调用包装代理以及它们引用的SOM进程里的DCOM对象很可能被划分成到高等级,在Web服务器和SOM里累积,直到第二代或第三代的垃圾回收算法被触发。
高负载情况下,二代和三代垃圾回收可能由于CPU使用率高二延迟,从而引起W3WP和SOM进程的内存占用快速增长。
解决方法:
如果在web service服务器上,内存是关键的受限资源,降低.Net默认的垃圾回收时间间隔也许是比较理想的办法。降低垃圾回收间隔会促使垃圾回收算法清除那些不再使用的二代和三代对象。 ArcGIS Server web service通过web.config的设置,强制在指定数量的请求以后启动垃圾回收。 根据对REST服务在压力情况下的表现,默认使用垃圾回收间隔(10000次请求)来解决上面所描述的内存消耗问题。 如果存在W3WP和SOM占用进程内存增长的问题,垃圾回收间隔可以设置的更小(比如1000)。这会触发更频繁的垃圾回收。但是,垃圾回收是很耗CPU的操作,降低垃圾回收的时间间隔会引起吞吐量的下降。如果要选择一个小于10000的垃圾回收间隔,必须谨慎地设置这个数字,以确保吞吐量不会受到明显的影响。 修改默认垃圾回收间隔的步骤如下: 1、定位到ArcGIS Server web service实例的目录,通常是 C:\Inetpub\wwwroot\ArcGIS\Services 2、在文本编辑器重打开web.config 3、编辑GCInterval的值 <configuration> ... <appSettings> ... <add key="GCInterval" value="1000" /> ... </configuration> 4、通过命令行的“iisreset”命令或windows服务列表的IISAdmin,重启IIS 1)通过开始-->控制面板-->管理工具-->服务打开服务控制面板 2)在本地服务面板,选择“IIS Admin Service”,点击重启链接
创建时间:2008-05-21
最近更新: 2010-06-17
【
原文链接
】
http://support.esrichina.com.cn/2008/0521/772.html
要回复问题请先
登录
或
注册
发起人
EsriSupport
相关问题
ArcGIS Server服务状态正在停止
ArcGIS Server制作的缓存地图服务中,能否实现大比例尺下楼房阴影类似的3d效果?
Linux下如何将ArcGIS Server的服务端口改为80
ArcEngine10.1 如何发布地图服务
访问arcgisserver发布的服务,提示要输入用户名密码,验证登录
地图服务发布成功,但无法启动服务
对已发布的缓存服务,如何只更新局部范围的切片
ArcGIS无法访问身份验证服务
使用portal10.5能直接发布三维模型服务吗
Engine10.1如何发布地图服务?
新建.shp类型的FeatureClass,一系列操作后,想要删除源文件。如何解除文件的占用?
问题状态
最新活动:
2015-12-01 18:06
浏览:
1083
关注:
1
人
1 个回复
EsriSupport
赞同来自:
当GIS服务负载很大时,IIS的W3WP进程和SOM进程占用大量的内存,严重影响其他程序。
原因: .NET的垃圾回收有代的概念(Garbage Collector Basics and Performance Hints)。本地变量和短期对象划分为第一代,启动垃圾回收的时候会被频繁地回收。长生命周期的对象是第二代或更高,启动垃圾回收的时候回收频率会小很多。
ArcGIS Server DCOM运行时可调用包装代理以及它们引用的SOM进程里的DCOM对象很可能被划分成到高等级,在Web服务器和SOM里累积,直到第二代或第三代的垃圾回收算法被触发。
高负载情况下,二代和三代垃圾回收可能由于CPU使用率高二延迟,从而引起W3WP和SOM进程的内存占用快速增长。
解决方法:
如果在web service服务器上,内存是关键的受限资源,降低.Net默认的垃圾回收时间间隔也许是比较理想的办法。降低垃圾回收间隔会促使垃圾回收算法清除那些不再使用的二代和三代对象。 ArcGIS Server web service通过web.config的设置,强制在指定数量的请求以后启动垃圾回收。 根据对REST服务在压力情况下的表现,默认使用垃圾回收间隔(10000次请求)来解决上面所描述的内存消耗问题。 如果存在W3WP和SOM占用进程内存增长的问题,垃圾回收间隔可以设置的更小(比如1000)。这会触发更频繁的垃圾回收。但是,垃圾回收是很耗CPU的操作,降低垃圾回收的时间间隔会引起吞吐量的下降。如果要选择一个小于10000的垃圾回收间隔,必须谨慎地设置这个数字,以确保吞吐量不会受到明显的影响。 修改默认垃圾回收间隔的步骤如下: 1、定位到ArcGIS Server web service实例的目录,通常是 C:\Inetpub\wwwroot\ArcGIS\Services 2、在文本编辑器重打开web.config 3、编辑GCInterval的值 <configuration> ... <appSettings> ... <add key="GCInterval" value="1000" /> ... </configuration> 4、通过命令行的“iisreset”命令或windows服务列表的IISAdmin,重启IIS 1)通过开始-->控制面板-->管理工具-->服务打开服务控制面板 2)在本地服务面板,选择“IIS Admin Service”,点击重启链接
创建时间:2008-05-21
最近更新: 2010-06-17
【原文链接】
http://support.esrichina.com.cn/2008/0521/772.html
要回复问题请先登录或注册