我們剛剛發佈了一個新教程和示例代碼,以闡述如何在Windows Azure中使用 JAVA 相關技術。 在該指南中,我們提供了分步教程,說明如何將 JAVA Spring Framework 應用程式(PetClinic 應用程式範例)遷移到 Windows Azure 雲。 此文檔附帶的代碼同樣也發佈在 GitHub 中。 我們鼓勵 JAVA 開發人員下載並探索此新示例和教程。
Windows Azure 是一個開放的雲平臺,它支援各種程式設計語言和框架,包括 Microsoft .NET、JAVA、Node.js、PHP、Python 和 Ruby。 該指南專為 JAVA 開發人員編寫,演示如何將典型的 JAVA 應用程式遷移到 Windows Azure 雲。 該教程主要闡述基於常用的 Spring Framework 構建的應用程式範例 (JAVA PetClinic),並向您介紹適用于 Eclipse 的 Azure JAVA SDK、使用 memcached 的 Windows Azure 緩存 、Windows Azure 雲服務、Windows Azure SQL 資料庫以及用於許多其他類型 JAVA 應用程式的各種其他技術。
Windows Azure 雲服務 (PaaS) 還是 Windows Azure 虛擬機器 (IaaS)?
從根本上說,有兩種不同的方式在 Windows Azure 上運行應用程式層,例如網站。 第一種方式是通過基於 Azure 雲服務的平臺即服務 (PaaS)。 第二種方式是通過基於 Windows Azure 虛擬機器 (VM) 的基礎結構即服務 (IaaS)。 不管使用哪種方式,開發人員都可從多個全球資料中心(美國四個、歐洲兩個、亞洲兩個)選擇一個來託管其應用程式。 •使用 Windows Azure 雲服務,開發人員只需關注應用程式,平臺會根據運行的應用程式層自動設定並維護實例(在表層下為 Windows YHyperHY Hyper-V VM)。 實例可以水準伸縮一至數百個克隆,並自動進行負載平衡。 您可以修改實例大小(具有不同的虛擬核與記憶體量),但實例本身(包括作業系統層的所有修補和安全更新)基本上由 Windows Azure 自行進行管理。 該指南主要闡述在 Windows Azure 雲服務上運行 JAVA Pet Clinic 應用程式範例。 •通過 Windows Azure 虛擬機器,開發人員可以創建自己的 VM 映射,並負責安裝和管理此 VM(包括安裝在 VM 上的任何軟體)。 我們為JAVA 開發人員提供了各種可用的預構建 VM 映射,包括 Windows 和多種 Linux版本。 這也是當開發人員對作業系統和 VM 具有低級控制時在 Windows Azure 雲中運行 JAVA 應用程式不錯的方式;且可以在多個 VM 上直接安裝其他軟體(如 mySQL)以構建完整的應用程式, 從應用程式層到資料層。 大部分 JAVA 應用程式可以通過更改少量代碼或無需更改代碼即可輕鬆遷移。 您也可以設置負載平衡, 通過輪循機制平衡多個 VM(可能運行 Tomcat/JSP 層)的負載。 不過虛擬機器與 Azure 雲服務不同,而是與 VM 在本地運行類似,開發人員必須管理VM的全部, 包括任何安全補丁。 本部新教程主要闡述在 Windows Azure 雲服務中運行 JAVA,但我們鼓勵開發人員同時嘗試使用 Windows 或 Linux VM 的 Windows Azure 虛擬機器。
Windows Azure 平臺上的 Spring Framework
該新指南包含了 Spring Framework 最近更新的 PetClinic 示例,因為它適合演示多種廣泛用於創建可伸縮的 JAVA EE 應用程式的企業技術, 例如Spring Data JPA、MVC、AOP、JMX、EhCache 和 Logback,並且它也是大家所熟悉的。 我們將通過 AOP 在 Azure 緩存上加入瞬態故障處理和 Memcached 以擴展 PetClinic。
對於熟悉 Eclipse 和 STS 的 JAVA 開發人員,Microsoft 提供了適用于針對 JAVA 的 Eclipse 的 Windows Azure 工具組。 此工具組對使用Eclipse在Windows Azure 中進行 JAVA 開發提供以下資源: •適用于具有 JAVA 的 Eclipse 的 Windows Azure 外掛程式 •適用于 SQL Server 和 Windows Azure SQL 資料庫的 Microsoft JDBC 4.0 驅動程式 •適用于 JMS 的 Apache Qpid 用戶端庫套裝程式 •適用于 JAVA 的 Windows Azure 庫套裝程式 •Windows Azure 存取控制服務篩選器 •Windows Azure 常見外掛程式
在該指南中,我們將使用適用于具有 JAVA 的 Eclipse 的 Windows Azure 外掛程式和適用于 SQL Server 的 Microsoft JDBC 4.0 驅動程式。 Eclipse 的外掛程式提供了 Windows Azure 服務的 JAVA 包裝和 一個Windows Azure 模擬器。
結論
Windows Azure 是一個開放的雲平臺,它支援各種程式設計語言和框架。 我們鼓勵 JAVA 開發人員探索 新的 Windows Azure JAVA 教程和示例代碼,瞭解所使用的 Windows Azure JAVA 相關技術。