我的应用服务器经常会处于龟息状态,检查内存和CPU的使用都很稳定,但是它就是不响应其他的请求,可能要过个十几分钟才行,请大家畅所欲言,讨论一下各种可能的原因。2

S

siyan

Unregistered / Unconfirmed
GUEST, unregistred user!
我的应用服务器经常会处于龟息状态,检查内存和CPU的使用都很稳定,但是它就是不响应其他的请求,可能要过个十几分钟才行,请大家畅所欲言,讨论一下各种可能的原因。2003-06-17 虽然问题有如大海捞针,也希望大家能帮忙捞一捞,也许你没捞到却给了别人提示也说不定啊!请大家继续踊跃发言! (200分)<br />说明一下系统环境:
ORACLE 8i的数据库服务器,DCOM应用服务器,客户端采用socketconnection连接方式
服务器端采用每个模块对应一个Remote DataModule方式,全部采用ApartMent线程模型
MultiInstance,某些remote DataModule中与主界面有消息传递(PostMessage方式),
消息的处理比较繁琐
碰到这种情况,如果客户打电话来,我就把当前的exe服务器结束掉,让客户激活一个
新的,不过这只能是权益之计,不知道大家有没有碰到类似问题,欢迎大家讨论出现
这种问题的各种可能原因,当然有解决的办法更好
 
没碰到过,认真学习,但按道理不应该出现以上问提,
否则不是很麻烦且危险。
 
不明白客户打电话来你把当前的服务器结束掉?
你叫石燕还是十堰的?
 
应该检查网络的问题!!
前段时间在青岛有个例子还你的很像,搞了几个月找不着毛病
最后找到是网络的毛病
 
to chnplzh 是很麻烦,不然我也不会提这个问题
to xzh2000 我估计是某个线程阻塞了,导致服务器不相应其他请求,我之后点右键,选关闭把服务器停掉 ,“你叫石燕还是十堰的? ” 不明白你这句话是什么意思
to52free 要如何检查呢,我总不能跟用户说是你们的网络有问题吧
这个问题从5月份开始出现,5月以前没有出现这个问题
我查看了更新的代码,没有发现什么问题,很担心项目因为这个问题而失败
请大家多多指点
 
多线程吧,
 
to 52free 能否详细说明一下该如何检查呢
to changsong1314 大侠太惜字如金了吧,多说几句都不肯
to xzh2000 不好意思,我反应比较迟钝,现在才明白你的意思,其实名字只是一个代号
你怎么理解都行,无所谓了,我之所以关闭服务器,是想让客户端重新激活
一个新的服务器,这样系统就可以继续使用,不会说某些用户会等待10~20
分钟的时间,都不知道是不是死机了
 
没响应之后,其它用户可以登录吗?
 
不行了,但以前登录的可以继续用,那些不能登录的就会打电话过来反映问题
然后我就结束掉当前的服务器程序,他们就可以登录了
 
今天增加一台应用服务器做负载平衡
可是新的服务器也出现上面所说的问题
看来不是机器的问题
诸位想到什么可能的原因请畅所欲言
如果解决了,可另行开贴加分
 
当然是程序的问题
以前的客户真的可以正常使用?
 
你是说断开后以前的用户能否正常使用吗,说实话我不知道
我认为应该是不行的
如果是程序的问题,你认为可能是程序里做了什么样的处理导致的呢
你不会让我把整个应用服务器源代码给你吧
 
把你更改前的东西,再拿过来用用,如果没问题,就是你该出问题来了。我经常会觉得自己写的程序没有问题,可是一运行,根本就不是哪回事。
如果以前一直运行的程序也有问题,不妨换一个网络环境试试,如果你在广域网上应用你的程序可以先用局域网模拟一个,如果不出问题再找广域网的问题。一点一点排除,找出问题出在那你就好办了,否则的话这些问题是很难根据你的描述做出准确地判断的。
 
代码肯定会再次检查的,我想知道的是对于这种情况,服务器端可能是在哪些处理上
不得当而导致的呢
比如说线程模型的使用、对象调用的方式、消息的使用等等等等
好为我指明一个方向
 
将组件做成COM+组件(不要DCOM的),并设置“闲置关闭前的时间”为较短的时候(比如说20分钟),如果此组件的引用计数为0并达到20分钟时就会自动关闭,如果再有客户端访问,组件又会被自动激活,这不就省却了你手动重启进程的麻烦了吗?
 
BTW: 近期你在微软新闻组(IIS)上发过贴子吗?(我好像见到有你这样的网名)
 
to Sachow
我们的系统已经到后期了,这个问题解决的好的话,相信很快就可以结束了
这个时候,要全部换成COM+好像不太合适吧,而且我手动重启进程是因为某些地方
出现了我所未知的问题,导致系统运行不正常,在这一点上COM+和DCOM的区别不大吧
BTW:我想可能是巧合吧,我还没那么厉害
 
你的客户多吗?
也有可能是网络问题,出问题的时候Ping一下.
 
to xeen
客户不多,最多时达到过60个,但那时很稳定
昨天做了分流,每台服务器只有20个连接,一样出问题
 
以前听说Midas有运行许可,你购买了吗?
Delphi安装的那个midas.dll据说与它有区别.
 
顶部