谁碰到过DCOM+ADO客户端或中间服务死掉的情况,一天六七次

明度 2003-08-26 08:53:58

三层,不到30个客户端(win9x),六七个中间服务在同一台服务器上做为NT服务运行

DCOM+ADO模式

问题,客户端有时会突然死掉,比如正要打开一个库存模块的界面,死掉了
然后整个客户端程序就死掉了,结束任务,再运行客户端,再点那个库存模块的界面,仍死掉,...一直如此

不得已,把库存的服务重启(状态显示它还是运行中)

客户端再运行进去点库存就可以了

一天会出现六七次左右
...全文
31 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
明度 2003-09-08
  • 打赏
  • 举报
回复
再顶
明度 2003-09-04
  • 打赏
  • 举报
回复
楼上
DCOM真的这么弱吗,看来我走错一步啊
飛無痕 2003-09-03
  • 打赏
  • 举报
回复
我用SocketConnection,程序运行了两年多,没听过客户投诉会死机的。非常稳定。用DCOM时经常会出问题.建议你用SocketConnection方式.
明度 2003-09-02
  • 打赏
  • 举报
回复
哈欠:

我们现在中间层就是一些数据集组件,更新都用前台applyUPDATE,在中间层不作其它处理。
所以(数据库处理代码)根本就没有。
gub 2003-09-02
  • 打赏
  • 举报
回复
我也正在经历多层的第一次
halfdream 2003-09-02
  • 打赏
  • 举报
回复
很典型的问题,
编写这样服务程序关键两点
1,抓异常,释放资源;
2,记录日志.

大致是这样..
try
...(数据库处理代码)...
except on e:exception do
begin
Adoconnection.close;//必须这样才能释放资源,以备下次正常使用.
WriteLog(e.Message)//writelog 是自定义一个记录日志信息的函数..
end

snake_eye 2003-09-01
  • 打赏
  • 举报
回复
数据库连接池是不是没关闭啊!
明度 2003-09-01
  • 打赏
  • 举报
回复
心小志大:
感谢感谢,总是个办法。在哪里注册共享啊?

悠游在线:
装不了2K啊,工厂里都是32M内存的机子,这个...做不到。

海天子:
是写得比较失败,都第一次写,没有高人指点。是EXE的。
huojiehai 2003-08-31
  • 打赏
  • 举报
回复
但最好不要编译成DLL,还是用exe吧,试试看!!!
huojiehai 2003-08-31
  • 打赏
  • 举报
回复
看来你的中间层写得很失败。
yousoft2013 2003-08-31
  • 打赏
  • 举报
回复
我遇过这样的问题
建议使用win2K,并打开pack
再仔细看看程序上操作数据库,有没有问题!
halfdream 2003-08-30
  • 打赏
  • 举报
回复
在处理数据库操作时候,抓一下异常,在处理异常代码里面将Adoconnection关闭一下.
空中居士 2003-08-29
  • 打赏
  • 举报
回复
我碰到过,一般重新启动后恢复运行,
原因不清,关注
tccb 2003-08-26
  • 打赏
  • 举报
回复
一定是某些系统资源出问题。。。
应用程序输出详细的运行日志,所有系统调用都记录返回码,跟踪死机的故障点。。。
明度 2003-08-26
  • 打赏
  • 举报
回复
开发都是中规中矩的
应该不存在事务未结束的问题

因为即使是查询操作也会出现机掉
eastliangliang 2003-08-26
  • 打赏
  • 举报
回复
是不是有事务未结束?
danny_ht204 2003-08-26
  • 打赏
  • 举报
回复
我曾经作过做为NT服务的中间层,也是同样的情况。
主要是事务冲突了。
可以把DCOM注册为共享式的
danny_ht204 2003-08-26
  • 打赏
  • 举报
回复
我曾经作过做为NT服务的中间层,也是同样的情况。
主要是事务冲突了。
可以把DCOM注册为共享式的

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧