COM+为什么这么多毛病???急 ( 积分: 100 )

  • 主题发起人 主题发起人 ztony
  • 开始时间 开始时间
Z

ztony

Unregistered / Unconfirmed
GUEST, unregistred user!
中间层用了MTS DATAMOUDLE,客户端用SocketConnection 连接,出现下面令人头痛的问题:
1.第一次连接时,要花几秒才,感觉慢;
2.客户端如果一段时间不用,它会收到一个"服务器强迫关闭"的错误,然后什么也不能作,只能重新打开客户程序才行;
3.每次客户调用中间层,它就自已创建一次....,感觉有点慢
4.安全方面,因用的是Socketconnection ,所以只要知道IP与端口就可以与服务器通信了...
不够安全.
不知大家用COM+是怎么作的...程序就要测试了,望大家多出主意
 
直接socket编程实现, 不要用那个鸟东东
 
htw,请问有例子吗...?发个过来看一下
 
建议在中间层加入密码验证功能,前台加入登录窗口。Socketconnection 其实挺好的,如果用DCOMConnection的话DCOM安全设置很麻烦。Socketconnection 只启动个scketsrv.exe程序就可以连了。只要用COM那就已经决定慢了,COM的实时性是不行的。
建议看看李维的“Delphi深度历险”里面好像有这方面的例子。
 
应该不会慢,再一个,楼主说"每次客户调用中间层,它就自已创建一次....,"是不是因为你

initialization
TComponentFactory.Create(ComServer, Tfm_data,
Class_fm_data, ciMultiInstance, tmApartment);
这个地方选的是单一 ciSingleInstance, tmSingle
楼主应该看看,有单实例 和多实例选 择的
 
建立成一个COM服务,设置缓冲池,超时设置成无限时间
 
你可以先把应用服务器开启,这样第一个连接的时间就会快些了。
把scketsrv.exe的timeout设置长一点。
把scketsrv.exe的线程池大小设置多些。[:D]
 
asksomeone, 本人用的是, ciMultiInstance, tmNeutral.
 
boy2002cn,建立成一个COM服务,设置缓冲池,超时设置成无限时间
------------------------------------------------------------
怎么叫建一个COM服务.难道一个APPSERVER+MTSDATAMOUDLE不算是COM服务吗
另在WIN2003的COM服务管理中,将缓冲池设成100,创建超时设置成60000ms,这样不行吗?
 
xinjinren,把scketsrv.exe的timeout设置长一点。
把scketsrv.exe的线程池大小设置多些。[:D]
-------------------------------------------
我设置是这样
scketsrv.exe的timeout= 60
scketsrv.exe的线程池大小=100
不知要设成多少才算合适?????
 
我的服务器配置是DELL 2950 (2.G 双核CPU*2 +4G内存+76G硬盘*4个作RAID5 )
数据库为ORACLE9I
 
我可与大家在线讨论.
我的联系方式:
QQ:15219668,MSN/EMAIL:progtony@hotmail.com,谢谢指导..
 
后退
顶部