我想知道是否可以使用在Microsoft Azure负载平衡虚拟机中配置的群集Tomcat中部署的Jasperserver?

因为jasperserver UI总是由于在上述环境中未加载CSS /主题而崩溃。我已经在下面解释了该问题,并且我是此环境的新手,所以请指导我在上述环境中配置/解决此问题。

但碧玉文件说:
必须配置负载平衡器,以便浏览器用户在连续会话期间始终连接到同一服务器。
仅当禁用节点时,才应进行传输会话。超出此要求,JasperReports Server可以处理任何HTTP负载
基于硬件或软件的平衡器。

问题是:
如果只有一个实例,则没有问题,并且可以正常工作,因为它仅维护一个JSESSIONID。
但是,如果在集群环境中有两个tomcat,Jasper UI会因为css / theme没有加载而崩溃,所以我调查了请求和响应,涉及了多个JSESSIONID,我不知道这个问题是由于负载平衡器或会话管理造成的碧玉,所以请指导我解决这个问题。

注意:对不起,我的英语不好,谢谢您阅读和回答我的问题。每个评论/想法都受到高度赞赏。

错误:

加载资源失败:服务器响应状态为404(未找到)https://domain.test/jasperserver-pro/_themes/C7141728/theme.css
加载资源失败:服务器响应状态为404(未找到)https://domain.test/jasperserver-pro/_themes/C7141728/pages.css
等等...

环境 :
1)具有会话复制的Jasperserver 5.5商业版。
2)两个apache-tomcat-6.0.36集群实例。
3)Linux计算机-Ubuntu 13.10 Server。

谢谢,
Loganathan。

最佳答案

根据您的描述,JasperServer需要会话关联。 Azure负载平衡器不支持会话亲缘关系(截止到今天)。这就是您的应用程序无法正常工作的原因。
您可以通过以下方式解决问题:
1.理想情况下,查找Jasper是否支持存储进程外的会话(例如在数据库中)。我不了解Jasper,但是在IIS中,您可以通过配置更改它。这样,无论查询来自何处,Web服务器都将在数据库中查找会话信息。
2.在应用程序前面安装一个带有请求路由模块的Web角色。最简单的方法是使用ARR(应用程序请求路由),如本文所述:http://coderead.wordpress.com/2011/11/11/using-azurearr-sticky-sessions-in-azure/。它肯定会工作;但这会花费您更多(几个新的小型VM)。
希望能有所帮助,
马吕斯

关于tomcat - Microsoft Azure负载平衡虚拟机中的群集Tomcat JasperServer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23695534/

10-11 01:43