成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

提高EJB性能十大技巧

開發 后端
本文敘述為了提高EJB性能,把應用的技巧總結一下一共有十大技巧。

EJB調用是耗時、費力的。怎么提高EJB性能?我們為解決這一問題,開始邊寫邊討論。等到完成了,我才發現,我們所應用的技巧總結一下,竟有十條。把提高EJB性能的這些技巧總結一下,為以后的項目做參考。

1.用一個Session Bean封裝多個Entity Bean,將原來的多個Entity Bean的Remote調用和Local調用封裝在一個Session Bean中。所以建立一個ServerFacade,它為多個對象提供統一獲取EJB Home和獲取對象的接口。ServerFacade為程序要用到的所有EJB的home handle提供緩存,提高訪問JNDI Name的時間,達到提高訪問效率的目的。以后查找JNDI Name的方法都應寫在接口里,調用時直接從接口調用。

2.在EJB的Remote接口中使用粗粒度的方法,不推薦使用細粒度方法。

3.如果EJB的Remote接口獲取成功,應不再使用Remote接口,而是將Remote接口構造成一個一般的Java對象,通過調用一般的JAVA 對象的方法來達到減少對網絡的訪問。

4.如果你部署EJB客戶端和EJB在相同的JVM上,建設使用EJB2.0規范的Local接口代替Remote接口。

5.用"transient"關鍵字聲明不必要的數據變量,替代以前的"public"、"private"等,避免不必要的數據變量占用網絡資源。示例:

  1. public class DemoCMP implements EntityBean {   
  2. transient EntityContext entCtx;   
  3. transient InitialContext initCtx;   
  4. public String id;   
  5. public String description;   
  6. …   

6.在ejb-jar.XML部署文件中,對Session Bean中非事務的方法,將trans-attribute屬性賦為"NotSupported"或"Never"

  1. <ejb-jar>   
  2. …   
  3. <assembly-descriptor>   
  4. <container-transaction>   
  5. <method>   
  6. <ejb-name>abookesessionBean</ejb-name>   
  7. <method-name>*</method-name>   
  8. </method>   
  9. <trans-attribute>NotSupported</trans-attribute>   
  10. </container-transaction>   
  11. </assembly-descriptor>   
  12. </ejb-jar> 

7.設置事務的超時時間,在JBoss中,要修改${jboss.home}/server/${jboss.configuration}/conf /jboss-service.xml ,如下所示:

  1. <server>   
  2. …   
  3. <mbean code="org.jboss.tm.TransactionManagerService"   
  4. name="jboss:service=TransactionManager">   
  5. <attribute name="TransactionTimeout">300</attribute>   
  6. </mbean>   
  7. …   
  8. </server> 

8.當事務鎖定數據庫的行記錄時,事務應跨越可能的最小的時間。

9.調整EJB 服務器的各種參數,如線程數、EJB池大小、連接池參數等。以在JBoss修改連接池參數為示例,進行說明。如果JBoss和MySQL相連,配置${jboss.home}/server/${jboss.configuration}/deploy/mysql-service.xml,來修改連接池參數,包括MinSize、MaxSize、BlockingTimeoutMillis、IdleTimeoutMinutes、 Criteria等,各參數的含義如下所示:
◆MinSize :連接池保持的最小連接數。
◆MaxSize :連接池保持的最大連接數。
◆BlockingTimeoutMillis :拋出異常前最大的等待連接時間。
◆IdleTimeoutMinutes :關閉連接前連接空閑的最大時間。
◆Criteria :有ByContainerAndApplication、ByContainer、ByApplication和ByNothing等值。
下面是一個例子:

  1. <depends optional-attribute-name="ManagedConnectionPool">   
  2. <!--embedded mbean-->   
  3. <mbean code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool"   
  4. name="jboss.jca:service=LocalTxPool,name=MySqlDS">   
  5. <attribute name="MinSize">0</attribute>   
  6. <attribute name="MaxSize">50</attribute>   
  7. <attribute name="BlockingTimeoutMillis">5000</attribute>   
  8. <attribute name="IdleTimeoutMinutes">15</attribute>   
  9. <attribute name="Criteria">ByContainer</attribute>   
  10. </mbean>   
  11. </depends> 

10.對于數據庫事務,應選擇較低成本的事務等級,避免造成壞數據。遞增成本的事務等級包括:
TRANSACTION_READ_UNCOMMITED;
TRANSACTION_READ_COMMITED;
TRANSACTION_REPEATABLE_READ;
TRANSACTION_SERIALIZABLE;

以上是提高EJB性能的技巧,為以后的項目做參考。

【編輯推薦】

  1. 配置JBoss如何從數據庫里讀取信息
  2. JBoss Rules的入門學習
  3. 在JBoss下通過本地接口訪問EJB
  4. JBoss的classLoader問題
  5. 用Eclipse啟動JBoss
責任編輯:佚名 來源: 百度博客
相關推薦

2024-08-06 16:31:32

2014-10-28 16:11:37

AndroidApp性能優化

2009-06-29 19:13:54

VMware ESX虛擬化虛擬機

2020-07-10 06:10:14

Python開發代碼

2011-05-11 10:46:51

2012-10-08 09:21:49

jQuery Mobi

2009-08-21 17:11:29

VMware Work

2010-05-07 08:59:50

ASP.NET

2015-03-19 10:24:21

程序員提高職場價值提高職場價值技巧

2017-09-08 10:24:26

云存儲平臺技巧

2010-08-30 13:54:30

CSS

2013-09-26 14:42:28

2016-11-09 21:33:29

2016-10-12 09:02:28

大數據存儲技巧

2009-03-12 09:35:30

求職簡歷技巧

2011-06-14 18:54:25

網站流量

2014-12-15 14:59:38

2012-10-09 17:31:33

2024-09-23 08:10:00

開發Python網絡爬蟲

2023-02-21 14:55:40

React開發技巧
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品一区免费 | 99免费精品 | 51ⅴ精品国产91久久久久久 | 国产精品完整版 | 欧美激情一区 | 美女久久久久 | a亚洲精品 | 污污的网站在线观看 | 国产国产精品 | 亚洲 一区| 国产91在线 | 中日 | 欧美在线视频一区 | 全免费a级毛片免费看视频免费下 | 国产一区亚洲二区三区 | 91久久久久久久久久久久久 | 色五月激情五月 | 天天躁人人躁人人躁狂躁 | 国产三级大片 | 日韩欧美在线一区 | 天堂男人av| 中文字幕一区二区三区四区五区 | 国产网站在线免费观看 | 久久久精彩视频 | 欧美激情在线精品一区二区三区 | 国产精品夜间视频香蕉 | 日韩成人免费av | 欧美国产亚洲一区二区 | 免费特级黄毛片 | 99re66在线观看精品热 | 免费一区二区三区在线视频 | 成人黄色在线观看 | 久热精品在线 | 亚洲午夜精品 | 亚洲精品九九 | 99reav| www.99热.com| 天天弄天天操 | 亚洲午夜精品久久久久久app | 九色 在线| 99re6在线 | 日本福利视频 |