J2EE應用的核心策略
對於J2EE,我們知道當開發應用時,在架構設計階段的決定將對應用的效能和可擴充套件性產生深遠的影響。現在當開發一個應用專案時,我們越來越多地注意到了效能和可擴充套件性的問題。應用效能的問題比應用功能的不豐富問題往往更為嚴重,前者會影響到所有使用者,而後者只會影響到碰巧使用該功能的那些使用者。
作為應用系統的負責人,一直被要求"要少花錢多辦事"----用更少的硬體,更少的網路頻寬,以及更短的時間完成更多的任務。J2EE通過提供元件方式和通用的中介軟體服務是目前首選的最優方式。而要能夠構建一個具有高效能和可擴充套件性的J2EE應用,需要遵循一些基本的架構策略。
快取(Caching)
簡單地說,快取中存放著頻繁訪問的資料,在應用的`整個生命週期中,這些資料存放在永續性儲存器或存放在記憶體中。在實際環境中,典型的現象是在分散式系統中每個JVM中有一個快取的例項或者在多個JVM中有一個快取的例項。
快取資料是通過避免訪問永續性儲存器來提高效能的,否則會導致過多的磁碟訪問和過於頻繁網路資料傳輸。
複製
複製是通過在多臺物理機器上建立指定應用服務的多個拷貝來獲得整體更大吞吐效率。理論上看,如果一個服務被複製成兩個服務,那麼系統將可處理兩倍的請求。複製是通過單一服務的多個例項的方式從而減少每個服務的負載來提高效能的。
並行處理
並行處理將一個任務分解為更為簡單的子任務,並能夠同時在不同的執行緒中執行。
並行處理是通過利用J2EE層執行模式的多執行緒和多CPU特點來提高效能。與使用一個執行緒或CPU處理任務相比,以並行方式處理多個子任務可以使作業系統在多個執行緒或處理器中進行分配這些子任務。
非同步處理
應用功能通常被設計為同步或序列方式。非同步處理只處理那些非常重要的任務部分,然後將控制立即返回給呼叫者,其他任務部分將在稍後執行。
非同步處理是通過縮短那些在將控制返回給使用者之前必須處理的時間來提高效能的。雖然都做同樣多的事情,但是使用者不必等到整個過程完成就可以繼續發出請求了。
資源池
資源池技術使用的是一套準備好的資源。與在請求和資源之間維持1:1的關係的不同,這些資源可被所有請求所共享。資源池的使用是有條件的,需要衡量下面兩種方式的代價:
A、維持一套可被所有請求共享資源的代價
B、為每個請求都重新建立一個資源的代價
當前者小於後者時,使用資源池才是有效率的。
希望通過本文介紹的是J2EE中的五個核心策略,對你有幫助。
-
J2EE工程師知識點:JPA的優勢
J2EE規範是這樣定義J2EE元件的:客戶端應用程式和applet是執行在客戶端的元件;JavaServlet和JavaServerPages(JSP)是執行在伺服器端的Web元件;EnterpriseJavaBean(EJB)元件是執行在伺服器端的業務元件。下面YJBYS小編為大家整理了關於J2EE工程師知識點,希望對你...
-
j2ee入門到精通學習步驟
一、準備篇1什麼是J2EE?它和普通的Java有什麼不同?答:J2EE全稱為Java2Platform,EnterpriseEdition。J2EE平臺本質上是一個分散式的伺服器應用程式設計環境——一個Java環境,它提供了:·宿主應用的一個執行基礎框架環境。·一套用來建立應用...
-
2016年J2EE筆試題目及答案
1、heap和stack有什麼區別?答:棧是一種線形集合,其新增和刪除元素的操作應在同一段完成。棧按照後進先出的方式進行處理。堆是棧的一個組成元素2、Java中的異常處理機制的簡單原理和應用答:當JAVA程式違反了JAVA的語義規則時,JAVA虛擬機器就會將發生的錯誤表示為一個...
-
關於JavaEE中10個安全控制
很多常見攻擊,例如跨站點指令碼攻擊(XSS)、SQL注入、跨站點偽造請求(CSRF),以及XML外部實體(XXE)絲毫沒有涵蓋。你可以阻止web應用程式和web服務暴露於這些攻擊,但這需要一定量的工作和測試。幸運的是,OpenWebApplicationSecurityProject(OWASP)公佈了10大最關鍵的we...