session.getdatabase经常出现花费很长时间才能获取到

oa有4个服务器搭成集群,邮件服务器只有一台,oa01服务器通过session.getdatabas获取邮件未读数量没问题,oa04服务器总是出现一模一样的方法获取邮件数据库需要耗时5分多,重启或修复下数据库又没问题了,但是用一段时间又会出现,不知道这个应该从哪入手解决啊?网络、死循环都排查了 没有问题。不过oa01是代理直接访问,oa04是webservice代理访问,代码是一样的。求助

参与6

2同行回答

jianmjjianmj其它??
感觉是 连接数过多引起的,如果你是用 oa04 去读取 oa01 的未读数,在 oa01 的控制台上 drop oa04 后,再试试显示全部

感觉是 连接数过多引起的,如果你是用 oa04 去读取 oa01 的未读数,在 oa01 的控制台上 drop oa04 后,再试试

收起
互联网服务 · 2016-06-24
浏览1438
yuxiaoxuyuxiaoxu软件开发工程师上海理想
WebService处理开销会比代理大一些。但是5分钟太夸张了。建议你设置断点查看下执行时间分析下。1、是针对特定的数据库而是任何数据库都有这样的时间差;到时候,你用代码统计,输出超时长的数据库再单个手工测试,一般打开慢你客户端直接打开也会很慢。2、是服务器之间的网络访...显示全部

WebService处理开销会比代理大一些。但是5分钟太夸张了。

建议你设置断点查看下执行时间分析下。

1、是针对特定的数据库而是任何数据库都有这样的时间差;到时候,你用代码统计,输出超时长的数据库再单个手工测试,一般打开慢你客户端直接打开也会很慢。

2、是服务器之间的网络访问速度,由于是通过局域网进行的,主机之间的网络速度是不是有差异。你也可以将oa04用WebService访问部署在oa01上看下时间。

收起
软件开发 · 2016-06-20
浏览1416
  • 数据库问题我也测试过,在出现异常的时候我使用代理通过session.getdatabase的方式获取names库也会卡在那不动,但是网络是通这的,这个时候使用其他用户访问04服务器也没有出现问题,很奇怪,不知道还有哪些原因会导致这样,另外有没有方法能在超时时终止getdatabase这个方法?
    2016-06-20
  • yuxiaoxu  yuxiaoxu回复 rzf006
    你在控制台trace下看看。
    2016-06-20

提问者

rzf006
软件开发工程师华腾
擅长领域: 安全

相关问题

相关资料

问题状态

  • 发布时间:2016-06-20
  • 关注会员:2 人
  • 问题浏览:2920
  • 最近回答:2016-06-24
  • X社区推广