我们刚刚发布了一个新教程和示例代码,以阐述如何在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 相关技术。

本文翻译自:

http://blogs.msdn.com/b/windowsazure/archive/2013/11/06/migrating-a-java-spring-framework-application-to-windows-azure.aspx

将 Java Spring Framework 应用程序迁移到 Windows Azure的更多相关文章

  1. 将Spring Boot应用程序迁移到Java9:兼容性

    将 Spring Boot 应用程序迁移到 Java 9:兼容性 随着 Java 9 的到来,关于如何迁移应用程序以使用模块系统有很多的讨论.遗憾的是,大多数文章的焦点都集中于简单的 Hello Wo ...

  2. 使用SQL Database Migration Wizard把SQL Server 2008迁移到Windows Azure SQL Database

    本篇体验使用SQL Database Migration Wizard(SQLAzureMW)将SQL Server 2008数据库迁移到 Azure SQL Database.当然,SQLAzure ...

  3. [博客迁移]探索Windows Azure 监控和自动伸缩系列2 - 获取虚拟机的监控定义和监控数据

    上一篇博文介绍了如何连接Windows Azure: http://www.cnblogs.com/teld/p/5113063.html 本篇我们继续上次的示例代码,获取虚拟机的监控定义和监控数据. ...

  4. [博客迁移]探索Windows Azure 监控和自动伸缩系列3 - 启用Azure监控扩展收集自定义监控数据

    上一篇我们介绍了获取Azure的监控指标和监控数据: http://www.cnblogs.com/teld/p/5113376.html 本篇我们继续:监控虚拟机的自定义性能计数器. 随着我们应用规 ...

  5. [博客迁移]探索Windows Azure 监控和自动伸缩系列1 - 连接中国区Azure

    最近准备基于Microsoft Azure Management Libraries 实现虚拟机的监控.主要的需求就是获取虚拟机内置的性能计数器数据,基于性能计数器实现后续的监控和自动伸缩. 作为这一 ...

  6. 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序

    原文 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 Jim ...

  7. 在 Windows Azure 网站上使用 Django、Python 和 MySQL:创建博客应用程序

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 根据您编写的应用程序,Windows Azure 网站上的基本Python 堆 ...

  8. 在 Windows Azure 上设计多租户应用程序

    作者:Suren Machiraju 和 Ralph Squillace 审校:Christian Martinez.James Podgorski.Valery Mizonov 和 Michael ...

  9. Windows Azure中文博客 Windows Azure入门教学系列 (一): 创建第一个WebRole程序

    http://blogs.msdn.com/b/azchina/ 本文转自:http://blogs.msdn.com/b/azchina/archive/2010/02/09/windows-azu ...

随机推荐

  1. SQL Server数据转换【包括Geometry类型】的技巧总结

    1. 字段的组合: update new_master_location set tmp_street_unique=street+'_'+city+'_'+state+'_'+zip+'_'+con ...

  2. 让你提前知道软件开发(24):C语言和主要特征的发展史

    文章1部分 再了解C语言 C语言的发展历史和主要特点 作为一门众所周知的计算机编程语言,C语言是谁发明的呢?它是怎样演进的?它有何特点?究竟有多少人在使用它? 1. C语言之父 C语言是1972年由美 ...

  3. PDFium-PDF开源之旅(1)-初探代码下载编译

    近日,Google和Foxit合作开源了Foxit的PDF源代码. 叫PDFium 相关新闻不少.哈,虽说已经不是程序猿了.只是还是有兴趣跑起来围观看看.废话少说.先说编译代码的步骤(事实上Googl ...

  4. Robolectric 探索之路

    layout: post title: Roboletric探索之路,从抗拒到依赖 description: Roboletric Android Unit Testing category: blo ...

  5. 微型 ORM 的第一篇 DapperLambda发布

    引言:因为接触过多个ORM,但使用的时候都遇到了各自的一些不够理想的地方,从最早开始开始公司自己分装的,到后面用EF,以及Dapper和DapperExtensions  到现在用的FluentDat ...

  6. C/C++指针和数组的关系

    首先一个列子说明指针和数组真的不是一回事: 浅谈C中的指针和数组(一) 如果用硬是把数组和指针放在一个,一个放声明里一个放定义中,这里就能看到指针和数组名是不同的.这篇文章从符号表的角度分析一下指针和 ...

  7. quartz 定时调度持久化数据库配置文件

    1 下载quartz对应版本jar包 2 初始化对应数据库sql(版本需要对应,不然会出现少字段的情况) ,下载地址  https://github.com/quartz-scheduler/quar ...

  8. C#指定目录存放DLL

    C#开发中,常常会用到不少扩展库,把这些扩展库的大量DLL放在软件目录下面,非常不美观. 通过设置自定义的DLL存放目录,可以把DLL存在指定的目录下面. 代码如下: <?xml version ...

  9. poj 3258 River Hopscotch 二分

    /** 大意:给定n个点,删除其中的m个点,其中两点之间距离最小的最大值 思路: 二分最小值的最大值---〉t,若有距离小于t,则可以将前面的节点删除:若节点大于t,则继续往下查看 若删除的节点大于m ...

  10. 挺有意思的Blog

    http://blog.csdn.net/dawanganban/article/details/19925449 http://www.syslog.org/ https://baoz.net/li ...