金蝶K/3产品性能稳定性案例集
2.3.2.3 K/3系统在Win2003环境的设置指南
Windows Server 2003是迄今为止微软最强大的Windows 服务器操作系统,它在运行效率、可靠性、安全性方面均有了巨大的进步与提高,针对Web Services、网络应用、企业级高端计算等方面有更强大的功能支持。
为了支持该优秀平台,K/3系统在Win2003环境下进行了大量的测试,除了证明K/3系统完全支持Win2003,还验证了该Win2003的强大特性,K/3系统在该环境下运行性能更加稳定,更加充分发挥三层结构的优势。
K/3V10.2版本前,在WIN2003装K/3系统需要启用网络DTC访问,网络COM+访问,IIS等环境并进行一些简单配置,安装后也需要对COM+,IIS等进行一些配置才能运行K/3系统,相关配置请参考下面文档说明:
注意:Windows Server 2003 SP1/SP2的相关设置与未装SP1/SP2的2003不一样,2003 SP1/SP2的用户请参阅下一节《Win2003系统安装SP1后K/3系统不能使用的解决方法》
2.3.2.4 Win2003系统安装SP1后K/3系统不能使用的解决方法
微软推出Win2003操作系统以来,其良好的性能及稳定性获得大量用户的好评,但如此庞大的一个系统无可避免会在安全性上有漏洞,微软及时推出相应的SP1。SP1 通过提供诸如安全配置向导之类的新安全工具增强了安全基础结构,它有助于确保服务器的基于角色的操作的安全、通过数据执行保护提高纵深防御能力并通过后安装安全更新向导提供安全可靠的第一次引导方案。
但SP1的相关安全设置也导致了K/3在应用上出现错误,需要对其进行相应的配置,相关配置请参考下面文档进行:
注意:K/3V10.2以前版本在WIN2003操作系统上安装时没有自动进行2003环境配置,需要参
照该文档进行2.3.2.3
2.3.2.5 登录出现“automation”错误 1、问题描述:
进入主控台出现“automation”错误。
2、问题分析:
一般主控台登录出现“automation”错误有两种情况造成,一是客户端本机装有K/3中间层的包或卸载不干净,另一是没有卸载老版本K/3就直接安装安装新版本造成的(或者老版本卸载时有问题),导致客户端的注册表混乱造成的。
3、解决方案:
“冲击波”病毒出现后、微软出了针对性补丁加强了系统安全,这时客户端若远程连接中间层,必须确保本机不能有K/3中间层的包,否则会出现“automation”错误。
针对没有卸载老版本K/3就直接安装安装新版本造成的(或者老版本卸载时有问
14
金蝶K/3产品性能稳定性案例集
题),导致客户端的注册表混乱造成的,请参照下面方法处理:
1) 确认客户端kdsvrmgr.vbr和中间层kdsvrmgr.exe最后修改时间一致。
2) 把老版本的kdsvrmgr.vbr拷贝到system32目录下,在客户端先执行 clireg32 -u
-nologo x:\\winnt\\system32\\kdsvrmgr.vbr,清除老版本组件的注册信息 3) 把新版本的kdsvrmgr.vbr拷贝到system32目录下,在客户端再执行 clireg32 -d
-nologo -s xx.xx.xx.xx x:\\winnt\\system32\\kdsvrmgr.vbr,注册新版本组件的客户端信息(xx.xx.xx.xx指中间层的IP地址)
4) 若问题不能解决,请在客户端执行一下RegClear清除K/3注册信息再安装K/3。
注意:“冲击波”病毒出现后、微软出了针对性补丁加强了系统安全,这时客户端若远程连接中间层,必须确保本机不能有K/3中间层的包。
2.3.2.6 COM+在组件服务中被多次注册 1、问题描述:
K/3中的同一个组件服务,在COM+组件服务中被同时注册了多次,从而导致K/3系统运行发生错误。
2、特点:
Prog标识相同,但CLSID不一致
3、解决方法:
删除重复的组件,重新加入到组件服务中。
注意:在编译COM+组件的时候,注意打上兼容属性,避免一个prog标识多个CLSID的情况。如下图:
15
金蝶K/3产品性能稳定性案例集
2.3.2.7 COM+组件对象存放的目录需要使用英文且不要加特殊的符号
COM+组件对象存放的目录,最好使用英文而且不要加特殊的符号,否则客户端调用COM+组件有可能出现失败。
1、问题描述:
示例:在E:\\COM+问题\\MidwareTroubleshooting\\Demo\\COM+\\MemoryLeak\\Debug下存放MemoryLeak.dll组件对象。注册后如下图:
此时客户端调用将出现下面信息提示:
16
金蝶K/3产品性能稳定性案例集
2、解决方法:
目录使用英文。
注意:COM+组件对象存放的目录需要使用英文且不要加特殊的符号。
2.3.2.8 Windows安全更新导致金蝶中间层不能使用 1、问题描述:
客户通过专门的补丁服务器下载Windows补丁,然后安装到K/3中间层,安装完成后,K/3客户端会无法访问K/3中间层,重启K/3中间层也无效,但K/3中间层本身的K/3系统可用。(打了10次左右的Windows补丁,只有2次安装后K/3中间层是可以访问的)。客户只要重新用修复安装K/3中间层后(无需K/3客户端重新注册),就可以使用。
2、问题分析:
微软工程师通过查看COM+安装日志和系统事件日志,发现每次Windows补丁安装,都导致COM+的Catalogs重新安装。初步怀疑补丁对COM+产生影响。在停止了所有K/3中间层服务之后,再次安装Windows补丁进行测试,K/3客户端可正常访问。
3、解决方法:
重新用修复安装K/3中间层或用户在安装Windows补丁前,先停止所有K/3中间层服务。
注意:在安装Windows补丁前,先停止所有K/3中间层服务。
2.3.2.9 中间层服务器升级到WIN2003后出现“XX组件不可用”、“内存不足”等错误 1、问题描述:
客户将K/3中间层服务器升级到Windows Server 2003之后,发现K/3运行一段时间以后,无法正常工作,出现客户端请求无法得到处理,最终导致COM+ Application崩溃的现象,中间层服务器Event Logs记录了大量的COM+错误。
客户端会提示“XX组件不可用”、“内存不足”等错误。中间层没有提示,但Event Logs出现以下错误日志。比较典型的错误日志有:
1) The run-time environment has detected an inconsistency in its internal
state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors.
d:\\srv03rtm\\com\\complus\\src\\comsvcs\\threads\\stathread.cpp(284)中的错误,hr = 8007000e: CSTAThread: CoGetApartmentID failed
2) 运行时环境检测到其内部状态存在不一致。这说明进程中存在潜在的不稳定性,
可能是由于 COM+ 应用程序中运行自定义组件、COM+ 应用程序使用的组件或其他因素引起的。
17
相关推荐: