12年老牌互聯(lián)網(wǎng)IT解決方案提供商
騰佑科技咨詢熱線咨詢熱線: 400-996-8756
工單提交 注冊/登錄
百度云服務中心騰佑科技公司

如何理解Java應用服務器的七種“武器”

發(fā)布時間:2019-07-04 17:55 作者:admin

簡述:?某些技術創(chuàng)造自己的傳奇的方法是很有趣的。我還記得自己在作為程序員時處理包含源代碼注釋(例如不要放入此處"或者稍微文雅一點"此處危險")的產(chǎn)品。"

      在意識到軟件架構的重要性后,應用服務器必然成為程序員的一件必不可少的"武器"。對應用服務器技術的透徹理解可以為程序員提供認識軟件架構的更大的空間,這種方式影響著軟件工程學文化。它接下來會用一些有用的工具來武裝現(xiàn)代的IT人,提升價值鏈。下面騰佑小編就來介紹一下關于Java應用服務器的七種“武器”。

如何理解Java應用服務器的七種“武器”

      第一種武器:信心——理解應用服務器并不困難

      某些技術創(chuàng)造自己的傳奇的方法是很有趣的。我還記得自己在作為程序員時處理包含源代碼注釋(例如"不要放入此處"或者稍微文雅一點"此處危險")的產(chǎn)品。我們感覺非常復雜的代碼是不可管理的。應用服務器也成了相似的情況,人們毫無理由地恐懼的領域。在市場上,很多雇主把人們對于應用服務器的應用知識作為強制性的工作要求。實際上應用服務器并不是很復雜。例如,Sun微系統(tǒng)公司在自己的基于J2EE的應用服務器中包含了大量的文檔信息。你甚至于可以免費下載它,并在一個很基本的Windows XP專業(yè)版計算機上運行那些優(yōu)秀的示例。

      Sun的教程記述了大量的代碼示例,演示了J2EE和該公司的應用服務器產(chǎn)品的優(yōu)勢和易用性。閱讀這些文檔是有價值的,因為它為我們洞察這種極其重要的軟件技術的工作情況提供了入口。Sun的競爭者還有BEA、IBM和開放源代碼應用服務器JBOSS。

      BEA甚至于把應用服務器作為它的"透明計算"的第一步。它具有面向服務的架構的優(yōu)點,在面向服務的架構中,我們可以利用舊的和新的應用程序來簡化不斷增長的敏捷型組織對服務的需求。BEA的觀點是可能出現(xiàn)一種情況:公司改變它們的IT系統(tǒng)和業(yè)務流程可以像從一個應用程序中剪切數(shù)據(jù)然后粘貼到另一個應用程序中那樣簡單。其要點在于這種努力是基于應用程序服務器技術的。

      很明顯,應用服務器是成熟的軟件工業(yè)中的重要元素。它們內容豐富,并且依靠集中的應用程序管理,允許數(shù)據(jù)的集中存儲。這種技術是可以使用并且不難理解的。

      第二種武器:平臺性——應用服務器是一種軟件平臺

      應用服務器趨向于減少企業(yè)需要的中間件數(shù)量--因為它們是中間件!與包含了防火墻的Windows類似,應用服務器可能吸收一些現(xiàn)有的中間件產(chǎn)品所扮演的角色。這是因為應用服務器自身就是用于軟件部署以供多個客戶端使用的平臺。在應用服務器中使用的軟件有截然不同的生命周期,包括:

      開發(fā)者建立應用程序或組件

      包裝成可部署的元素

      部署在應用服務器平臺上

      被最終用戶使用

      在再次部署中由開發(fā)者更新特性或修補

      應用程序達到使用壽命后期的時候收回

      在很多情況下,它與"正常的"應用程序軟件的管理方式是不同的。這一點對于多層分布式軟件系統(tǒng)尤其突出(在這種情況下客戶端用戶與后端服務器應用程序交互操作)。應用程序服務器與多層軟件應用程序套件之間最主要的區(qū)別在于,應用服務器提供了大量的軟件包裝支持。換句話說,應用服務器為很多領域(例如線程管理、數(shù)據(jù)庫連接、網(wǎng)絡訪問等等)提供了運行時(runtime)支持。應用服務器中的這些設施都是自由使用的,但是在傳統(tǒng)的軟件套件中,它們一般要求人們手動編寫代碼來實現(xiàn)。

      簡單的說,應用服務器有效地分割了主機平臺與應用程序軟件的業(yè)務邏輯。通過提供對軟件的大量支持,應用服務器技術允許軟件設計者和開發(fā)者將精力集中在解決自己特定領域的問題上。適當?shù)厥褂脩梅掌骷夹g可以減少軟件開發(fā)的費用。[page]

      在上面的軟件生命周期中,我們把標準的應用服務器工具(例如基于ant的工具)當作專用工具來使用。其它的一些與J2EE應用服務器部分綁定的應用程序還包括:

      管理控制臺

      部署工具

      調試工具

      J2EE兼容性檢測程序

      管理控制臺用于管理應用服務器上執(zhí)行的軟件,例如激活/不激活、列舉組件等等。部署工具用于為應用服務器環(huán)境準備軟件。調試工具用于輔助解決那些發(fā)生的問題。J2EE兼容性檢查對于新軟件的作者來說是非常重要的,因為J2EE組件與標準的Java類是不同的。

      Sun的文檔表明應用服務器軟件產(chǎn)品的生產(chǎn)事務是可以在專家之間進行分工的。程序員編寫和測試源代碼,接著把這些源代碼傳遞給部署人員。部署人員準備并包裝軟件供我們在應用服務器上使用。在這個時候,軟件可能被傳遞回程序員以供調試和集成測試。另一組專家可以檢測該軟件的J2EE兼容性。其要點是一個或多個稱職人員可以執(zhí)行這么多不同的復雜的事務。

      數(shù)據(jù)集中管理器對應用服務器下運行的應用程序擁有更大的控制權。這意味著企業(yè)中運行的軟件可以在同一個平臺上集中地管理和部署。在某些方面,應用服務器技術使我們"后退"到了大型機時代的軟件部署情形。反對的觀點認為這種模型使客戶端不需要寄宿和執(zhí)行大量的代碼,但是在客戶端上執(zhí)行比在一個或多個應用服務器上執(zhí)行的效率更高;同樣,由于帶寬的迅速擴大,帶寬的約束力也逐步縮小。

如何理解Java應用服務器的七種“武器”

      第三種武器:技術傳承——應用服務器是基于組件的

      J2EE應用程序遵循廣泛采用的面向組件的方法。它們被分割成運行在客戶端或服務器上的應用程序??蛻舳思乃迲贸绦蚝蚢pplets,服務器寄宿Java小服務器程序、JavaServer頁面和企業(yè)級JavaBean(EJB)技術。

      可以在應用服務器上部署的主要的組件文件類型有:Web檔案文件(WAR)和企業(yè)級jar(EAR)文件??蛻舳藨贸绦蚨急淮虬蒍AR文件。我們可以把組件準備好,在Sun應用服務器上部署它,而大多數(shù)準備工作是在向導的幫助下或使用工具(例如部署工具、asant和管理控制臺等等)來自動地完成的。

      應用服務器技術的面向組件的特性與軟件工程文化的趨勢是一致的。有趣的是,軟件架構的演化在描述給定架構的軟件元素的時候趨向于不使用組件這個單詞。作為代替的是,在某個組件不僅僅是運行時實體的時候,推薦使用元素來描述它。應用服務器技術是否需要更多的架構細節(jié)也是很有意思的。

      第四種武器:團隊工作——應用服務器提供了軟件協(xié)同工作的能力

      J2EE的根基之一是XML,它日益成為粘合各種應用程序的"膠水"。在網(wǎng)絡管理領域,由于XML允許我們簡單地定義服務并把它們轉換為軟件,從而顯得光芒耀眼。XML作為改善軟件(特別是寄宿在應用服務器上的軟件)之間協(xié)同工作能力的一種途徑,其重要性還會不斷增加。

      J2EE還提供了對數(shù)據(jù)庫事務的支持。使用ATM取錢就是事務的一個例子。如果在事務的過程中出現(xiàn)電力中斷或網(wǎng)絡故障,你不希望帳號多次記入貸方,除非你中了彩票(哈哈)。因此,事務支持是應用服務器基礎構造的一個重要的元素,它在J2EE中占據(jù)著重要的位置。

      第五種武器:想象力——應用服務器是高度抽象的

      我經(jīng)常在想,軟件從業(yè)人員提升價值鏈的最好辦法就是使用抽象事務。我們不是在分散的和有限的事務上孤獨地工作,而是找出不太明確的抽象事務。抽象事務的例子包括建立存儲備份策略、定義某個重要的應用程序特性的需求等等。

      抽象事務是很大的挑戰(zhàn),它強迫大腦分而治之。應用服務器為運行在它上面的軟件使用了一個相當抽象的模型。例如,J2EE允許你的軟件訪問后臺的數(shù)據(jù)庫,用這種方法提供了抽象的支持。它同時還考慮資源情況,隱藏了特定數(shù)據(jù)源的復雜性。

      第六種武器 獨立性——J2EE與Sun的應用服務器是獨立的、截然不同的

      這是一個很基本的觀點:J2EE本質上是一個高級的API,但是它的確包含了一些在應用服務器環(huán)境之外運行部件。其中一個例子是XSLT,它允許我們把傳統(tǒng)的數(shù)據(jù)轉換為XML,反之亦然。

      J2EE的重要性還在持續(xù)增長;有些軟件架構專家甚至于把J2EE作為21世紀軟件工程文化首要的改造部分。它與環(huán)球網(wǎng)在90年代改變軟件工程文化的情況類似--這也是花費精力了解J2EE和相關技術的另一個原因。更深一層的原因是微軟和Sun目前在讓它們的產(chǎn)品協(xié)同工作方面積極地合作。

      第七種武器:發(fā)展——應用服務器:軟件未來之窗

      應用服務器對企業(yè)中的軟件集中執(zhí)行的能力是強大的、引人注目的。它可能使IT業(yè)對已部署的軟件的控制能力提高了一個很高的層次。當主要的軟件組件基于應用服務器的時候,我們可以應用體系結構方面的品質屬性,例如安全性、可修改性和可靠性。

      這樣,J2EE和應用服務器技術無疑會成為軟件未來的橋梁。它還符合軟件架構專家和面向服務的架構典型。

      結論

      不要害怕應用服務器技術!即使很便宜的PC也可以寄宿高級的軟件套件(例如Sun的J2EE和它的應用服務器產(chǎn)品)。當然你也可以使用開放源代碼的。其要點是這種技術越來越流行,同時越來越易于使用。

      通過使用這種技術,你將了解軟件工程文化的發(fā)展趨勢,并會看到某些重要工作的產(chǎn)物。每個人都在談論Web服務,但是都沒有使用和建立自己的例子那么全面。即使企業(yè)級JavaBeans、Servlets和其它的J2EE技術也是如此。使用J2EE免費評估版本或類似的產(chǎn)品可以很容易地實現(xiàn)所有這些事務。

      鄭州騰佑科技有著12年豐富的IDC(服務器租用/托管)從業(yè)經(jīng)驗/云計算服務提供商·IDC運營專家·2018年成為百度云河南指定服務中心。

點擊展開全文

騰佑科技(mubashirfilms.com)成立于2009年,總部位于河南鄭州,是一家集互聯(lián)網(wǎng)基礎設施及軟硬件于一體化的高新技術企業(yè),具有IDC/ISP/ICP/云牌照、雙軟等資質,并擁有多個國家版權局認證。公司自成立以來,一直致力于發(fā)展互聯(lián)網(wǎng)IDC數(shù)據(jù)中心DataCenter、云計算Cloud、大數(shù)據(jù)BigDate、人工智能AI、內容加速CDN、互聯(lián)網(wǎng)安全、軟件定制開發(fā)等產(chǎn)品服務及行業(yè)客戶技術一體化智能解決方案;2018年成為百度智能云AI河南服務中心。

售前咨詢熱線:400-996-8756

備案提交:0371-89913068

售后客服:0371-89913000

熱門活動

百度云服務中心
  • 熱門資訊
  • 隨便看看