国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

最佳實踐:有狀態會話 bean運行結束時應及時被顯式刪除

2019-11-18 15:24:46
字體:
來源:轉載
供稿:網友

  讀者:架構設計師、開發人員

產品:WebSphere application Server
版本:3.0.2.x、3.5.x、4.0
平臺:全部

要害字:servlet、jsp、EJB、有狀態會話bean

主題:EJB、性能、servlet 和 JSP

摘要
當企業 java bean(EJB)客戶機不再需要有狀態會話 bean 時,該客戶機應該顯式地將它從容器中除去。通過這樣做,應用程序可以減少對鈍化(passivation)的需要、最小化容器開銷和提供更高級的性能。假如不顯式地除去它們,容器對許多有狀態會話 bean 的治理將耗費資源。

建議
有狀態會話 bean 的實例與特定客戶機有密切關系。它們將保持在容器中,直到由客戶機顯式地除去它們,或者當它們超時時由容器除去為止。同時,容器可能需要將非活動的有狀態會話 bean 鈍化到磁盤。這需要容器的開銷并對應用程序構成了性能打擊。假如隨后應用程序需要鈍化的會話 bean,容器通過從磁盤恢復該 bean 來激活它。

通過在完成使用時顯式地除去有狀態會話 bean,應用程序將減少對鈍化的需求,使容器開銷最小化并改進性能。通過顯式地除去有狀態會話 bean,您不必依靠于超時值。

當完成使用時顯式地除去有狀態會話 bean

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.naming.*;
import com.ibm.uxo.ejbs.*;

public class BestPRacticesServlet extends HttpServlet {

BestPracticesHome sseHome = null;

public void init(ServletConfig config) throws ServletExcpetion {
super.init(config);
try {
sseHome = EJBhomeCache.getInstance().getMbhHome();
}
catch(Exception e) {
throw new ServletException("INIT Error: " + e.getMessage(),e);
}
}

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

BestPractices ssmgr = null;

try {
ssmgr = sseHome.create(1);
ssmgr.someBunchOfMethods();
ssmgr.remove(); // EXPLICITLY REMOVE WHEN DONE!
}
catch (Exception e) {
e.printStackTrace();
}
}
}

應被取代的方法
Application Server 可以使用超時值來處理除去您的有狀態會話 bean。但是,當治理這些資源時,您可能體驗到下降的性能,這取決于應用程序。

參考資料
WebSphere Application Server Development Best Practices for Performance and Scalability
作者
姓名:Harvey W. Gunther
職務:高級性能分析師
部門:WebSphere 產品開發
公司:IBM
地點:美國北卡羅萊那州羅利(Raleigh)
電子郵件:hgunther@us.ibm.com

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大化| 深州市| 马边| 健康| 永新县| 婺源县| 岑溪市| 景德镇市| 新乡市| 友谊县| 东兴市| 汉川市| 阿勒泰市| 洪洞县| 临西县| 阿拉善盟| 康保县| 贵定县| 宾阳县| 佳木斯市| 黄骅市| 余庆县| 巴彦县| 纳雍县| 德钦县| 盱眙县| 定南县| 吉隆县| 化隆| 桐城市| 安福县| 东乡| 恭城| 潞西市| 威信县| 汝南县| 米泉市| 惠州市| 汽车| 汤原县| 宜兰市|