亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

靈活使用EJB的本地和遠程接口(四)

2019-11-18 12:34:05
字體:
來源:轉載
供稿:網友

  部署不同的體系結構
  服務器項目
  創建一個名為“TestServerTomcat”的 Tomcat 服務器項目。在此項目內,選擇 New Server and Server Configuration,輸入“ServerTomcat”作為服務器名(Server name),并且在“Apache Tomcat version 4.1”下選擇 Test Environment 作為服務器類型(Server type)。在下一個面板中,指定 TOMCAT_HOME 作為安裝 Tomcat 的目錄,并且指定適當的 JDK 位置設置。請參見圖 7。
  
 靈活使用EJB的本地和遠程接口(四)(圖一)


  
圖 7. 服務器 Tomcat 設置

  創建服務器項目“TestServerWAS”。在此項目中,創建服務器“ServerWAS”并接受所有的缺省值。(具體情況請參見 “Hello World”J2EE 應用程序文章)。
  
  最后,您的工作臺看起來應該是這樣的:
  
 靈活使用EJB的本地和遠程接口(四)(圖二)

  
圖 8. 具有所有項目的工作臺

  現在,我們可以將項目添加到服務器并測試 J2EE 應用程序。
  
  部署 All-in-One-All-Local 體系結構
  要部署這種體系結構,您需要遵循下列步驟:
  
  a.將 DualEARForAllInOne 添加到 WebSphere application Server 配置。打開服務器配置編輯器,輸入必要的設置;例如,將類路徑設置為項目文件夾。由于我們稍后將進行性能測試,所以最好同時更改某些環境設置;例如,將 java VM 參數設置為 -Xms512M -Xmx512M,禁用通用測試客戶端(universal test client)等等。
  
  b.更改某些數據源設置也是有必要的?,F在,從提供者列表中刪除“Cloudscape”,并且為“Default DB2”提供者添加版本 5.0 的數據源。接受所有的缺省值,并且指定 dualDB 作為“databaseName”資源特性值。在服務器配置編輯器的 EJB 選項卡上,將缺省數據源設置為 Data source 1。
  
  c.返回到 DualEJBModule01 EJB 部署描述符編輯器。對于 DualEntity Bean,將“CMP Connection Factory JNDI name”的值設置為 jdbc/ds1,并且將“Container authorization type”設置為 Per_Connection_Factory。
  
  d.對于初始測試,確保 DualEJBModule02 的 web.xml 和 ejb-jar.xml 中的“useLocal”設置為 true。
  
  e.發布并啟動 ServerWAS。
  
  f.通過 Web 瀏覽器導航到 URL http://localhost:9080/DualWebModule03。您應該看到索引頁面,帶有顯示的表單。
  
 靈活使用EJB的本地和遠程接口(四)(圖三)

  
圖 9. 索引和結果頁面

  g.現在,您可以測試整個 J2EE 應用程序,并且在 Application Developer 中觀察控制臺消息。
  
  部署 All-in-One-All-Remote 體系結構
  部署這種體系結構不需要更改項目設置。然而,要在相同的部署(實現 All-in-One-All-Remote)中轉換到遠程接口,您需要將 DualEJBModule02 的 web.xml 和 ejb-jar.xml 中的“useLocal”設置值更改為 false。
  
  部署分離容器(Separate Containers)體系結構
  要實現這種體系結構,您需要從“ServerWAS”配置中刪除 DualEARForAllInOne 項目,并且將 DualEARForEJBContainer 添加到它,然后,將 DualWebModule03 項目添加到“ServerTomcat”配置。指示 Servlet 使用特定的 URL 來定位 EJB(通過取消 web.xml 中相關參數設置的注釋)。在 ejb-jar.xml 中將“useLocal”設置為 true,以便實現 WebSphere Application Server 中的 EJB 容器內的最快通信。在啟動服務器之前,我們必須為 Tomcat 設置環境。打開 Tomcat 服務器編輯器,選擇 Environment 選項卡以設置“Class Path”:
  
  ·添加變量:${WAS_50_PLUGINDIR}/PRoperties。
  
  ·添加文件夾:DualEJBModule02/ejbModule、DualJavaModule00。
  
  ·對于 Tomcat 類加載器,我們需要 Enterprise JavaBeans 類和接口(通常包含在 javax.ejb 包內)。對于 Tomcat,將標準的 j2ee.jar 放入類路徑可能會引起已知的不兼容性問題,因為 javax.servlet 包出現在 j2ee.jar 和 servlet.jar 這兩個文件中。避免這個問題的惟一方法是創建一個新的 j2ee-modified.jar,只包含必要的與 EJB 有關的類(通過下載的文件提供)。將此文件添加到“External JAR”選項中。
  
  ·將“Java VM Arguments”設置為 -Xms256M -Xmx256M。
  
  要啟動該應用程序,您必須首先啟動 ServerWAS,然后啟動 ServerTomcat。將瀏覽器指向 http://localhost:8080/DualWebModule03 來查看索引頁面,因為 Tomcat 使用端口 8080 作為 HTTP 的缺省端口。
  
  使用簡單的 Java HTTP 測試客戶端進行測試
  現在,我們將通過一個簡單的 Java HTTP 測試客戶端(通過下載的文件提供)來進行某些性能測試。測試客戶端測量測試的持續時間內平均的響應時間和成功的采樣數(即得到了響應的采樣數)。要啟動測試客戶端(一個帶有簡單的自解釋 GUI 的 Java 應用程序),可以運行 start.bat。該 URL 應該對將要測試的體系結構是有效地。選擇 Set,然后選擇 Start。當測試完成時,結果將顯示在帶顏色的文本區中。
  
 靈活使用EJB的本地和遠程接口(四)(圖四)

  
圖 10. 簡單的 Java HTTP 測試客戶端

  測試客戶端產生指定的線程數,每個線程都通過它自己的 URL 對象提供。該客戶端生成 HTTP GET 和 POST 請求,帶有在 init.properties 文件中定義的參數(在 client.jar 文件中提供)。id 請求參數值是由隨機數生成器計算出來的整數,而 firstName 和 lastName 請求參數是由從預定義的 String 數組挑選的元素創建的。該客戶端使用 GET 請求來在“Set”模式下測試 URL,然后它使用 POST 請求來進行實際的性能或負荷測試。每個請求都發送一個請求,再等待響應,然后發送另一個請求到服務器,如此等等。測試結果將在下一部分進行討論。別忘了在啟動測試之前禁用 web.xml 和 ejb-jar.xml 中的跟蹤!
  
  性能測試結果及分析
  測試設置
  與開發人員的機器中的典型環境相比,測試設置中并沒有什么非凡之處。我們用于測試的計算機的配置為 Intel Pentium III 處理器、1 GHz 和 1.5GB 的 RAM、windows 2000、DB2 V8.1、WebSphere Studio Application Developer Version 5.1、Tomcat 4.1.29 和 IBM JDK 1.3.1(帶有已啟用的 JIT)。因此,為了進行測試設置,所有的服務和應用程序都應該已運行在相同的單處理器計算機中。
  
  我們所進行的測試有兩種類型:單線程和多線程(上述體系結構中的每一個都有 100 個線程)。為了獲取可復驗的結果,每種測試設置在客戶端上都有一系列運行。在這些系列中第一次運行的結果被認為沒有代表性,運行測試以使 JVM 和服務器“預熱”。在每次測試運行之后便刪除數據庫 PERSON 表中的所有記錄。單次測試運行一般持續的時間通常為 10 分鐘。對于分離容器(Separate Containers)體系結構,為了進行多線程測試,Tomcat 的 server.xml 中的設置需要作如下調整:
  ...
  <Connector acceptCount="10"
   className="org.apache.coyote.tomcat4.CoyoteConnector"
   connectionTimeout="20000"
   debug="0" enableLookups="false"
   maXProcessors="200" minProcessors="200"
   port="8080" redirectPort="8443"
   useURIValidationHack="false"/>...
  
  不需要進行重要的數據庫或服務器調整。
  
  結果
  實際的測試結果顯示在下表中。重要的是相對數而不是絕對數本身。一般來說,本地和遠程接口的性能結果與預覽有很好的一致性。(同時參見參考資料。)在我們的測試中,多線程吞吐量一般要低一些,因為每個 JVM 都必須在相同的單處理器計算機中分派多線程。對于這個樣本應用程序,請求處理時間比較少,所以線程分派和時間安排相當大程度上是在整個處理時間中共享的,因而增加了響應時間。
  
 靈活使用EJB的本地和遠程接口(四)(圖五)

  
圖 11. 單線程客戶端的平均響應時間

  
 靈活使用EJB的本地和遠程接口(四)(圖六)

  
圖 12. 多線程客戶端的平均響應時間

  
 靈活使用EJB的本地和遠程接口(四)(圖七)

  
圖 13. 單線程客戶端的吞吐量

  
靈活使用EJB的本地和遠程接口(四)(圖八)

  
圖 14. 多線程客戶端的吞吐量

  結束語
  本文展示了樣本 J2EE 應用程序的設計方法、實現和測試結果,提供了 Enterprise Java Bean 的本地和遠程接口使用的基本比較。公開 EJB 的本地和遠程接口并不會限制 J2EE 應用程序部署中的靈活性。這兩種接口使您可以改變部署場景而不用更改應用程序的源代碼,并且還使您可以利用所選的任何部署體系結構。當本地接口用在相同的 JVM 中時,性能是最優的。使用分離容器(Separate Containers)體系結構性能可能會降低。對于確定的 J2EE 設計模式,我們推薦通過創建處理本地和遠程接口的代碼來將兩種接口同時用于會話 Bean(有時用于實體 Bean),以達到最大的效率,而進行很少的額外工作。
  
  關于作者 Sheldon Wosnick 是 IBM 多倫多實驗室的 WebSphere Studio Application Developer Server Tools 小組中的一名顧問軟件開發人員。他和他的隊員們負責 WebSphere Studio 產品家族的整個服

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产成人精品女人久久久| 日韩欧美成人区| 欧美日韩美女在线观看| 国外视频精品毛片| 国产裸体写真av一区二区| 久久91亚洲精品中文字幕奶水| 国产精品一区二区久久国产| 国产精品网红福利| 亚洲精品videossex少妇| 久久精品国产99国产精品澳门| 国产69久久精品成人| 中文字幕日韩精品在线| 久久久亚洲网站| 高清视频欧美一级| 久久国产精品久久久久久久久久| 国产亚洲欧美日韩一区二区| 国产精品高潮呻吟久久av无限| 亚洲qvod图片区电影| 一区二区三区国产在线观看| 97视频在线观看成人| 亚洲综合一区二区不卡| 久久视频在线观看免费| 欧美成人黑人xx视频免费观看| 日韩高清电影免费观看完整版| 97在线精品视频| 九九精品视频在线| 亚洲欧美成人网| 国产精品久久中文| 亚洲欧美国产日韩天堂区| 亚洲福利视频网| 成人在线播放av| 亚洲人成网在线播放| 国语对白做受69| 国产精品1234| 亚洲性69xxxbbb| 亚洲国产日韩欧美在线99| 日韩中文字幕在线免费观看| 久久九九全国免费精品观看| 日韩欧美视频一区二区三区| 久久免费视频在线| 国产在线高清精品| 色黄久久久久久| 国产精品视频xxx| 亚洲精品国产精品国产自| 91久久精品美女高潮| 国产亚洲精品美女久久久| 中文字幕日韩在线播放| 欧美日韩国产123| 日韩欧美aⅴ综合网站发布| 欧美大码xxxx| 97在线看福利| 欧美成人一二三| 亚洲天堂av在线免费| 最近2019好看的中文字幕免费| 久久久久国产视频| 久久久伊人欧美| 亚洲国产精品99| 久久青草精品视频免费观看| 亚洲国产精品国自产拍av秋霞| 国产精品日韩欧美综合| 中文字幕亚洲天堂| 亚洲国产精品成人一区二区| 欧美激情一区二区三区高清视频| 欧美精品做受xxx性少妇| 成人在线国产精品| 中文字幕一区电影| 日韩电影免费观看中文字幕| 国产精品久久久久久av| 欧美理论在线观看| 亚洲视频视频在线| 亚洲a成v人在线观看| 国产这里只有精品| 疯狂做受xxxx高潮欧美日本| 亚洲的天堂在线中文字幕| 久久人人爽人人| 亚洲欧美另类在线观看| 国产成人一区二| 91美女福利视频高清| 国产一区二区三区日韩欧美| 成人免费视频a| 成人激情视频小说免费下载| 伊人亚洲福利一区二区三区| 亚洲精品视频免费在线观看| 91久久中文字幕| 91在线观看欧美日韩| 欧美日韩国产第一页| 久久五月天色综合| 91精品视频免费| 欧美午夜视频一区二区| 91超碰caoporn97人人| 97精品国产aⅴ7777| 色狠狠久久aa北条麻妃| 久久免费成人精品视频| 国产精品第七十二页| 亚洲欧洲美洲在线综合| 俺去了亚洲欧美日韩| 久久亚洲电影天堂| 中文综合在线观看| 亚洲色图狂野欧美| 91精品国产91久久久久久吃药| 日韩高清人体午夜| 亚洲高清免费观看高清完整版| 欧美午夜www高清视频| 欧美激情女人20p| 欧美日韩免费观看中文| 91精品国产99久久久久久| 成人444kkkk在线观看| 亚洲美女性生活视频| 亚洲国产精品女人久久久| 国产精品99久久久久久久久| 国产69精品久久久| 91免费的视频在线播放| 亚洲国产另类 国产精品国产免费| 亚洲电影中文字幕| 国产精品美女主播在线观看纯欲| 久久香蕉国产线看观看网| 欧美日韩精品中文字幕| 亚洲人成在线观| 日产精品久久久一区二区福利| 久久久久久高潮国产精品视| 欧美一级电影在线| 亚洲欧美综合精品久久成人| 亚洲在线一区二区| 欧美一级淫片丝袜脚交| 精品国产自在精品国产浪潮| 久久久久久国产精品| 欧美大尺度激情区在线播放| 5252色成人免费视频| 欧美另类交人妖| 国产精品女人网站| 精品视频久久久| 亚洲精品免费一区二区三区| 成人免费视频97| 亚洲欧美变态国产另类| 中文字幕精品—区二区| 国产精品日韩在线一区| 亚洲精品一区av在线播放| 91热精品视频| 久久av资源网站| 欧美日韩亚洲国产一区| 欧美午夜激情小视频| 色伦专区97中文字幕| 亚洲国产精品嫩草影院久久| 欧美一级淫片丝袜脚交| 日韩一级黄色av| 国产精品久久久久久久久久久久久| 欧美在线播放视频| 黑人狂躁日本妞一区二区三区| 九九热精品视频在线播放| 国产精品视频一区国模私拍| 98精品国产自产在线观看| 欧美自拍大量在线观看| 久久久久国产精品免费| 91啪国产在线| 亚洲一区二区精品| 欧美丝袜一区二区三区| 国产精品视频在线观看| 亚洲黄在线观看| 日韩最新免费不卡| 亚洲已满18点击进入在线看片| 欧美在线欧美在线| 日本一区二区在线播放| 国产欧美最新羞羞视频在线观看| 最近2019年中文视频免费在线观看|