我们在 Tomacat 和 Web sphere Application 服务器中部署了复杂的 Xforms。Xform 的性能(即表单渲染时间、控件值更改时间、动态控件值更改)与部署在 Web 逻辑应用程序服务器中的相同性能相比要好得多。我们用于将 Orbeon 框架与我们的 J2EE 框架集成的逻辑如下所述, 1) 我们将 view.xml 存储在我们的数据库中(需要渲染的实际 Xform)。2)我们从数据库中检索相同的内容并注入请求属性,如下所示,
request.setAttribute(OPS_XFORMS_RENDERER_DOCUMENT_ATTRIBUTE_NAME,
formTemplate.getTemplateContent());
getOPSDispatcher("/xforms-renderer").forward(request, response);
上面提到的我们在 Tomacat 和 Web sphere Application Server 中实现的相同逻辑似乎提供了比 Web-logic Application Server 更好的性能。我们在 Orbeon 资源中发现,如果我们编辑 WEB-INF/weblogic.xml,并添加以下元素:
<wl-dispatch-policy>OrbeonWorkManager</wl-dispatch-policy>
<work-manager>
<name>OrbeonWorkManager</name>
<max-threads-constraint>
<name>MaxThreadsConstraint</name>
<count>4</count>
</max-threads-constraint>
</work-manager>
将提高性能。它对我们的情况有用吗?请就上述情况向我们提出建议,并为我们提供任何有用的建议,以解决我们在 Web 逻辑应用程序服务器中的性能开销。