Performance 更新后XPages Valuebinding失败

Performance 更新后XPages Valuebinding失败,performance,xpages,persistence,Performance,Xpages,Persistence,我有一个特别麻烦的XPages应用程序,它可以完全重写,但事实上,它在过去几年中已经开发并(部分)改进,以努力保持它的平稳运行。但是它越来越慢了,所以昨晚我对它做了两个更改,今天早上我注意到控制台上有很多JVM错误 删除了所有用于显示视图数据的jQuery重复控制表,并将其替换为ViewPanels;在加载和呈现包含大量文档的视图时,这些操作会更快 将页面持久性从“保留在磁盘上”更改为“将当前页面保留在内存中”——希望这也有助于加快速度 今天我看到了很多错误,比如: HTTP JVM:无法打开数

我有一个特别麻烦的XPages应用程序,它可以完全重写,但事实上,它在过去几年中已经开发并(部分)改进,以努力保持它的平稳运行。但是它越来越慢了,所以昨晚我对它做了两个更改,今天早上我注意到控制台上有很多JVM错误

  • 删除了所有用于显示视图数据的jQuery重复控制表,并将其替换为ViewPanels;在加载和呈现包含大量文档的视图时,这些操作会更快

  • 将页面持久性从“保留在磁盘上”更改为“将当前页面保留在内存中”——希望这也有助于加快速度

  • 今天我看到了很多错误,比如:

    HTTP JVM:无法打开数据库:com.ibm.xsp.binding.javascript。JavascriptValueBinding@3b2c3b2c. 欲知详情

    旧记录的存档数据库支持主数据库,通过将数据路径指向存档,将旧记录加载到主数据库的UI中。还有另一个数据库,它包含许多由主前端UI数据库引用的小型支持文档。因此,这里有到其他数据库的链接,这些链接都适用于我和许多其他用户。我需要帮助,以跟踪是什么原因导致上述错误的一些人虽然。链接到此应用程序的所有数据库上的ACL都是相同的,它们都在同一台服务器上,ACL还将服务器作为管理器包含在所有数据库中

    第二个问题是关于速度。前端数据库中约有30000个文档,大小约为25GB。加载视图大约需要4-5秒,事实上,在该数据库中处理所有内容大约需要4-5秒。同一服务器上的UI的另一个副本,但修改为使用主数据库,因为它的数据可以快速加载所有内容。我希望我的应用程序有这样的性能!相比之下,为什么一个单独的数据库使用来自主慢速数据库的数据会如此之快?有没有最佳实践指南说将设计与数据分离是个好主意

    这是web浏览器中的典型错误消息:

    这是服务器日志中的一组典型消息(error-log-0.xml)

    
    严峻的
    com.ibm.commons.log.AbstractLogMgr
    日志
    com.ibm.xsp.FacesExceptionEx:无法打开数据库:com.ibm.xsp.binding.javascript。JavaScriptValueBinding@304a304a
    	;在com.ibm.xsp.model.domino.DominoUtils.openDatabaseByName(DominoUtils.java:188)和xD
    	;在com.ibm.xsp.model.domino.DominoViewDataContainer.openDatabase(DominoViewDataContainer.java:880)和xD
    	;在com.ibm.xsp.model.domino.DominoViewDataContainer.openView(DominoViewDataContainer.java:814)和xD
    	;在com.ibm.xsp.model.domino.DominoViewDataContainer.getDominoView(DominoViewDataContainer.java:802)和xD
    	;在com.ibm.xsp.model.domino.DominoViewDataContainer.getView(DominoViewDataContainer.java:797)和xD
    	;在com.ibm.xsp.model.domino.DominoViewData.getDataObject(DominoViewData.java:274)和xD
    	;在com.ibm.xsp.model.AbstractDataSource.pushData(AbstractDataSource.java:576)和#xD
    	;在com.ibm.xsp.util.DataPublisher.publishControlData(DataPublisher.java:181)和#xD
    	;位于com.ibm.xsp.component.UIDataPanelBase.publishControlData(UIDataPanelBas
    e、 爪哇:310)和#xD ;
    	;在com.ibm.xsp.component.UIDataPanelBase.encodeBegin(UIDataPanelBase.java:246)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:840)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)和#xD
    	;在com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)和#xD
    	;在com.ibm.xsp.component.UIViewRootEx._renderView(UIViewRootEx.java:1317)和#xD
    	;在com.ibm.xsp.component.UIViewRootEx.renderView(UIViewRootEx.java:1255)和#xD
    	;在com.ibm.xsp.application.ViewHandlerExImpl.doRender(ViewHandlerExImpl.java:641)和#xD
    	;在com.ibm.xsp.application.ViewHandlerExImpl._renderView(ViewHandlerExImpl.java:320)和#xD
    	;位于com.ibm.xsp.application.ViewHandlerExImpl.renderView(
    ViewHandlerExImpl.java:335)和#xD
    	;在com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:103)和#xD
    	;在com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)和#xD
    	;在com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:120)和#xD
    	;在com.ibm.xsp.controller.facescoontrollerimpl.render(facescoontrollerimpl.java:264)和#xD
    	;在com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:248)和xD
    	;在com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:204)和#xD
    	;在com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)和#xD
    	;在com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)和#xD
    	;在com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)和#xD
    	;com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:583)和#xD
    	;位于com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFCo
    java:1281)和#xD
    	;com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:860)和xD
    	;com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:803)和xD
    	;在com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:572)和#xD
    	;在com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1265)和#xD
    	;位于com.ibm.domino.xsp.module.nsf.NSFService.doService
    
    <CommonBaseEvent creationTime="2015-07-08T07:07:43.841+01:00" globalInstanceId="EL0a940d8600014e6b9ee19b00000019" msg="CLFAD0131E: Unable to push data because: Unable to open database: com.ibm.xsp.binding.javascript.JavaScriptValueBinding@304a304a" severity="50" version="1.0.1">
    <extendedDataElements name="CommonBaseEventLogRecord:level" type="noValue">
        <children name="CommonBaseEventLogRecord:name" type="string"> 
            <values>SEVERE</values>
        </children>
    </extendedDataElements>
    <extendedDataElements name="CommonBaseEventLogRecord:sourceClassName" type="string">
        <values>com.ibm.commons.log.AbstractLogMgr</values>
    </extendedDataElements>
    <extendedDataElements name="CommonBaseEventLogRecord:sourceMethodName" type="string">
        <values>log</values>
    </extendedDataElements>
    <extendedDataElements name="CommonBaseEventLogRecord:Exception" type="string">
        <values>com.ibm.xsp.FacesExceptionEx: Unable to open database: com.ibm.xsp.binding.javascript.JavaScriptValueBinding@304a304a&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoUtils.openDatabaseByName(DominoUtils.java:188)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoViewDataContainer.openDatabase(DominoViewDataContainer.java:880)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoViewDataContainer.openView(DominoViewDataContainer.java:814)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoViewDataContainer.getDominoView(DominoViewDataContainer.java:802)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoViewDataContainer.getView(DominoViewDataContainer.java:797)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoViewData.getDataObject(DominoViewData.java:274)&#xD;&#xA;&#x9;at com.ibm.xsp.model.AbstractDataSource.pushData(AbstractDataSource.java:576)&#xD;&#xA;&#x9;at com.ibm.xsp.util.DataPublisher.publishControlData(DataPublisher.java:181)&#xD;&#xA;&#x9;at com.ibm.xsp.component.UIDataPanelBase.publishControlData(UIDataPanelBas</values>
        <values>e.java:310)&#xD;&#xA;&#x9;at com.ibm.xsp.component.UIDataPanelBase.encodeBegin(UIDataPanelBase.java:246)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:840)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)&#xD;&#xA;&#x9;at com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:851)&#xD;&#xA;&#x9;at com.ibm.xsp.component.UIViewRootEx._renderView(UIViewRootEx.java:1317)&#xD;&#xA;&#x9;at com.ibm.xsp.component.UIViewRootEx.renderView(UIViewRootEx.java:1255)&#xD;&#xA;&#x9;at com.ibm.xsp.application.ViewHandlerExImpl.doRender(ViewHandlerExImpl.java:641)&#xD;&#xA;&#x9;at com.ibm.xsp.application.ViewHandlerExImpl._renderView(ViewHandlerExImpl.java:320)&#xD;&#xA;&#x9;at com.ibm.xsp.application.ViewHandlerExImpl.renderView(</values>
        <values>ViewHandlerExImpl.java:335)&#xD;&#xA;&#x9;at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:103)&#xD;&#xA;&#x9;at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)&#xD;&#xA;&#x9;at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:120)&#xD;&#xA;&#x9;at com.ibm.xsp.controller.FacesControllerImpl.render(FacesControllerImpl.java:264)&#xD;&#xA;&#x9;at com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:248)&#xD;&#xA;&#x9;at com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:204)&#xD;&#xA;&#x9;at com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)&#xD;&#xA;&#x9;at com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)&#xD;&#xA;&#x9;at com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:583)&#xD;&#xA;&#x9;at com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFCo</values>
        <values>mponentModule.java:1281)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:860)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:803)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:572)&#xD;&#xA;&#x9;at com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1265)&#xD;&#xA;&#x9;at com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:658)&#xD;&#xA;&#x9;at com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:481)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:341)&#xD;&#xA;&#x9;at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:297)&#xD;&#xA;&#x9;at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)&#xD;&#xA;Caused by: com.ibm.xsp.Fa</values>
        <values>cesExceptionEx: Database com.ibm.xsp.binding.javascript.JavaScriptValueBinding@304a304a cannot be opened&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoUtils.doOpenDatabase(DominoUtils.java:240)&#xD;&#xA;&#x9;at com.ibm.xsp.model.domino.DominoUtils.openDatabaseByName(DominoUtils.java:177)&#xD;&#xA;&#x9;... 40 more&#xD;&#xA;</values>
    </extendedDataElements>
    <sourceComponentId component="Expeditor 6.2" componentIdType="ProductName" instanceId="" location="EU1RLNW012" locationType="Hostname" subComponent="" threadId="6" componentType="http://www.w3.org/2001/XMLSchema-instance"/>
    <situation categoryName="ReportSituation">
        <situationType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ReportSituation" reasoningScope="INTERNAL" reportCategory="LOG"/>
    </situation>