发新话题
打印

请问:为何我通过网络访问另一台机器上的jor报表服务,时间很长>30s

请问:为何我通过网络访问另一台机器上的jor报表服务,时间很长>30s

请问:为何我通过网络连接另一台机器上的jor服务,(比如: http://192.168.1.1:8080/jor/reportviewer?file=I:/test.xml)生成报表的时间会长达30多秒,是不是报表job返回时,有超时的可能性。或是设置了等待时长?但是我在本地(一台机器上测试,访问的本机器的jor服务)(比如: http://localhost:8080/jor/reportviewer?file=I:/test.xml)时间就只有几秒?

TOP

问题补充???

项目工程和jor都跑在同一台服务器上,只有db跑在另一台服务器上。通过后台可以看见生成报表的数据几秒就都已经准备好了,但是在页面上能看见生成的报表还要等30s,期待解决。。。。。。

TOP

由源代码可以看出,localhost的访问,与其他ip的访问是完全一致的.   建议你试试我们的示例报表,是不是同样有这个问题.

我想知道,其他网友,是否也碰到了同样问题,欢迎跟帖.

TOP

非常感谢!

目前的情况是,比如:我把报表jor放到一个tomcat里,项目工程放到一个tomcat里,DB放到另一台机器上,用第三台机器访问项目工程(准备一些数据后),跳转到jor服务上,  这样需要等30s  用的是response.sendRedirect("http://localhost:8088/jor/reportviewer?file=E:/eclipse/workspace/test.xml")  把localhost换成本机器的IP,也是一样的。

TOP

这样的跳转,自然没有效率,

效率最高的方案是,将 jor,与你的项目,放在一个应用中,也即你可以将 jor 的web.xml与你项目的 web.xml合并在一起。当然,jar,jsp,js等等,都放在一起.

次之的方案是, 在一个tomcat 下,部署两个应用,一个 jor,  一个你的项目,通过跳转访问报表.

你的方案是最没效率的,我相信,你之所以这样部署,肯定另有考虑.

TOP

恩,谢谢您的回答!支持jor

TOP

服务器,开启两个网口,访问报表响应时间长

我是这样部署的:
在一个tomcat 下,部署两个应用,一个 jor,  一个我的项目,通过跳转访问报表,
在这台机器上开启了两个网口,这样生成报表的时间平均25s,如果关掉一个网口,速度非常快,
请问Admin  这是为什么呢?

TOP

可能是你的tomcat的配置问题,换一台机子上部署看看,是否有同样问题,初步感觉,与简表本身关系不大。

你这种配置,在我们的客户中相当普遍的。即在webapps上,开两个应用目录,一个是简表,一个是你自己的业务系统,没有客户反馈说,这种配置,速度就会下来.

TOP

在webapps上,开两个应用目录,一个是简表,一个是你自己的业务系统,是这么配置的,而且DB放在另一台服务器上,会不会与jor的.xml报表模板中连接数据库命令上的IP地址有关,选择路由浪费了时间?(那台部署tomcat的机器开启了连个网口,不同的网段)

TOP

这个应该不会.

TOP

致admin

我换了三台2003Server机器来测试,还是同样问题:
假若开启两个网口,tomcat和sqlserver部署在同一台机器上,则速度很快,
假若开启两个网口,tomcat和sqlserver部署在不同机器上,则速度慢25s,
假若开启一个网口,tomcat和sqlserver无论部署在相同还是不同机器上,则速度很快,

TOP

可以是网络的原因,你检查一下,不同机上的sql查询,速度是否慢.

TOP

发新话题