1

複雑なXformsをTomacatおよびWebsphereApplicationサーバーにデプロイしました。Xformのパフォーマンス(つまり、フォームのレンダリング時間、制御値の変更時間、動的な制御値の変更)は、Web-logicApplicationServerにデプロイされたものと比較して比較的優れています。OrbeonフレームワークをJ2EEフレームワークと統合するために使用したロジックを以下に説明します。1)view.xmlをデータベース(レンダリングする必要のある実際のXform)に保存します。2)DBから同じものを取得し、次のようにリクエスト属性に挿入します。

request.setAttribute(OPS_XFORMS_RENDERER_DOCUMENT_ATTRIBUTE_NAME,
            formTemplate.getTemplateContent());
getOPSDispatcher("/xforms-renderer").forward(request, response);

上記と同じロジックをTomacatとWebsphereApplication Serverの両方に実装しました。これは、Web-logicApplicationServerよりも優れたパフォーマンスを提供するようです。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-logicApplicationServerのパフォーマンスオーバーヘッドを解決するための有用な推奨事項を提供してください。

4

1 に答える 1

1

この質問には可動部分が多すぎて、ここであなたを助けることができないようです. YourKitなどの優れたプロファイラーを使用して、WebLogic と Tomcat で同じ操作をプロファイリングすることをお勧めします。次に、収集したデータを各アプリケーション サーバーと比較して、違いがどこにあるかを確認できます。

これは、MaxThreadsConstraint負荷テストを行っている場合にのみ役立つと言われています。アプリケーション サーバーにリクエストを 1 リクエストずつ送信しているときにこれが影響を与えるとしたら、私は驚かれることでしょう。最初にテストを開始することをお勧めします。

于 2011-05-03T17:22:58.460 に答える