領先一步
VMware 提供培訓和認證,助您快速進步。
瞭解更多本次會議分享了許多在 vSphere 上執行 Java 的經過生產驗證的方法。涵蓋了如何為大規模部署調整 JVM 和 VM 的大小。會議將有一個專門章節介紹 GC 調優,並展示如何使用在過去 15 年 JVM 調優實際現場經驗中開發的 GC 配方來調優各種 JVM。
本次會議討論了三個關鍵趨勢和相關的調優技術。關鍵趨勢包括:整合、彈性和靈活性以及效能
整合 許多客戶發現他們的中介軟體部署已經激增,並且伴隨著更高的成本成為管理上的挑戰。我們看到客戶普遍傾向於將虛擬化作為減少伺服器例項數量的一種方式。同時,客戶也利用整合的機會來合理化為特定負載提供服務所需的中介軟體元件數量。中介軟體元件最常執行在 Java 虛擬機器 (JVM) 中,觀察到的規模從 100 個到數千個 JVM 例項不等,為 JVM 例項整合提供了許多機會。因此,中介軟體虛擬化提供了兩次整合的機會——第一次是整合伺服器例項,第二次是整合 JVM 例項。這一趨勢影響深遠,因為地球上的每一個 IT 部門都在考慮整合帶來的成本節約。一家酒店行業的客戶進行了伺服器資源的整合,同時整合了許多堆小於 1GB 的較小 JVM。他們將這些小於 1GB 的較小 JVM 中的許多整合成了兩類,一類是 4GB 的,另一類是 6GB 的。他們以這樣的方式進行整合,使得應用程式可用的淨總 RAM 量與原始 RAM 量相等,但 JVM 例項數量減少。他們做到這一切的同時提高了效能並保持了良好的 SLA。由於他們必須管理的 JVM 例項數量減少,並且環境得到最佳化,從而輕鬆實現了 SLA,他們的管理成本也大大降低。
另一家保險行業的客戶也達到了與上述客戶相同的效果,此外還能夠在開發和 QA 環境中超量分配 CPU,以節省第三方軟體許可成本。另一方面,有時我們會遇到客戶出於合理的業務需求,要求一個應用程式對應一個 JVM,或一個業務線對應一個 JVM。在這種情況下,您無法真正整合 JVM 例項,因為這會導致一個業務線的應用程式生命週期與另一個業務線混雜。然而,雖然這些客戶無法透過 JVM 整合消除額外的 JVM 例項而獲益,但他們確實可以更充分地利用伺服器硬體上可用的計算資源,這些資源在非虛擬化環境中原本會利用不足。
彈性和靈活性 具有季節性需求的應用越來越普遍。例如,我們的許多客戶會執行各種營銷活動,從而為他們的應用帶來季節性流量高峰。藉助 VMware,您可以透過在需要時自動配置新的虛擬機器和中介軟體元件來處理這種流量突增,然後在負載平息後自動關閉這些 VM。此外,在不造成服務中斷的情況下更改更新/修補硬體的能力對於支援雲時代規模和正常執行時間的中介軟體至關重要。VMware VMotion 使您能夠在無需停止應用程式或 VM 的情況下移動 VM。僅憑這種靈活性,在管理大規模中介軟體部署時,中介軟體的虛擬化就已物有所值。一家金融領域的客戶,每天處理數百萬筆交易,他們經常使用 VMotion 來安排硬體升級,而無需任何停機時間。否則,這將對其業務造成昂貴的計劃停機。
效能 客戶經常報告虛擬化後中介軟體平臺效能有所提升。效能提升部分歸因於客戶在虛擬化專案中通常會更新的硬體。由於強大的 VMware hypervisor,效能也有一定的提升。最近一位報告效能大幅提升的客戶提供了以下證言
“透過我們的 OrderExpress 專案,我們升級了中介軟體服務、商務、門戶、WCM、服務層、DB2 資料庫;從 AIX 遷移到 Linux;在 VMware 上進行虛擬化;將應用程式移至三層 DMZ;將我們的交易量提高了 150% 以上;並添加了顯著的新功能,極大地改善了客戶體驗。同時更改如此廣泛的技術元件是一項巨大的挑戰。然而,透過使用 VMware vSphere 和額外的架構更改,我們成功地將效能提高了 300% 以上;將成本降低了數百萬;提高了安全性、可用性和可伸縮性;並且我們計劃繼續發展此應用程式,以保持每年超過 30% 的增長。”
– Jeff Battisti,Cardinal Health 高階企業架構師
在本次會議中,我將展示小型和大型 JVM 中介軟體元件的實際 JVM 和 VM 大小。還將詳細介紹我多年來開發的 GC 調優配方,該配方已證明可以處理從 4GB 到 88GB+ 及更高的 JVM 堆大小。當然,記憶體資料庫的引入推動了使用這些更大 JVM 的趨勢,因此我們將討論如何最佳地調優 JVM、VM 以及部署它們的硬體平臺。
我認為大小調整問題是我們客戶群中最常被問到的問題,因此我計劃在本次會議期間重點討論它。
Emad Benjamin 在 IT 行業工作了二十年。他畢業於臥龍崗大學,獲得電氣工程學士學位。職業生涯早期,他是一名 C++ 軟體工程師,1997 年轉而使用 Java 進行程式設計,此後一直專注於 Java。在過去七年裡,他的重點是 VMware vSphere、vFabric GemFire 和 SQLFire 上的 Java。Emad 自 2005 年起一直在 VMware 工作,是《Enterprise Java Applications Architecture on VMware》一書的作者。Emad 之前曾在 VMworld、SpringOne 和 Open World 上就 Java 虛擬化主題發表演講。
瞭解更多關於 Emad 的資訊 »
基於 Actor 的併發模型是一種正規化轉變。什麼是正規化轉變?
科學主導理論中基本假設或正規化的改變。正規化轉變使簡單的想法難以理解。儘管 Actor 模型是一個簡單而具有革命性的想法,但程式設計師很難看到其實際的好處和用法。類似地,Scala 程式語言在簡化基於 Actor 的設計方面帶來了很多優勢,但也帶來了一種新的編碼風格。解決這個問題的一種可能方法是根據舊正規化來評估新正規化。在本次演示中,我們將採用一個基於 Spring 的現有 Web 應用程式,並逐步使用 Actor 和 Scala 來實現它。我們將對新想法持懷疑和審慎態度,但同時也會保持開放心態。我們將利用 Spring 的知識來學習基於 Actor 的併發模型。同時,我們將學習 Actor、Scala 的最佳實踐以及如何將它們與 Spring Framework 結合使用。
Nilanjan 是 Typesafe 的一名顧問和培訓師。他於 2000 年開始他的職業生涯,作為一名軟體開發人員,使用面向物件程式語言。Nilanjan 曾與 IBM、ThoughtWorks 和 LivingSocial 合作過,在 Java/JEE、Ruby、Groovy 以及 Scala 中管理和開發軟體解決方案方面積累了豐富的經驗。自從接觸到 Scala 這門美妙的語言以來,他就對用 Scala 程式設計充滿熱情。目前,他利用業餘時間從事 scala-webmachine 開源專案(restful 資源框架)的工作。過去,Nilanjan 還參與了其他開源專案和庫。在 Typesafe,他主要負責教授和設計 Scala 和 Play 課程,並幫助客戶採用這些技術。Nilanjan 喜歡在各種會議上透過演講分享他的經驗。他也是《Scala in Action》一書的作者。
瞭解更多關於 Nilanjan 的資訊 »Josh Suereth 是 Typesafe 的一名高階軟體工程師,也是《Scala In Depth》一書的作者。自從 2007 年接觸到這門美妙的語言以來,他就一直是 Scala 的愛好者。他於 2004 年開始職業生涯,作為一名軟體開發人員,最初接觸 C++、STL 和 Boost。大約在同一時間,Java 熱潮正在蔓延,他的興趣也轉向了 Web 託管的分散式 Java 解決方案,以幫助衛生部門發現疾病爆發——從 EJB 到 Hibernate/Spring,甚至還有一些 Applets。他於 2007 年首次將 Scala 引入到他的公司程式碼庫中,此後不久他就被 Scala 熱潮感染,開始為 Scala IDE、maven-Scala-plugin 和 Scala 本身貢獻程式碼。2009 年,他開始撰寫《Scala In Depth》一書,該書為在日常應用中使用 Scala 提供了實用支援。如今,Josh 是多個 Scala 開源專案的作者,包括 Scala 自動化資源管理庫、PGP sbt 外掛,同時還為 Scala 生態系統的關鍵元件(如 maven-Scala-plugin)做出了貢獻。他目前在 Typesafe Inc. 的工作涵蓋了從構建 MSI 到分析效能問題等各種任務。Josh 經常透過文章和演講分享他的專業知識。
瞭解更多關於 Josh 的資訊 »