InfoQ

新闻

云工具将Java EE带入Amazon EC2

作者 Dionysios G. Synodinos译者 张龙 发布于 2008年6月1日 上午8时59分

社区
Architecture,
Java
主题
数据访问,
云计算,
虚拟化
标签
亚马逊,
弹性计算集群

POJOs in Action”的作者Chris Richardson发布了云工具(Cloud Tools),这是一套在Amazon的弹性计算云(Amazon's Elastic Computing Cloud,即EC2)上部署和测试Java EE应用的工具,该工具基于Apache License 2.0

该云工具主要有三个组成部分

  • 用来运行Tomcat及与EC2Deploy协同工作的亚马逊机器映象(Amazon Machine Images——AMIs)
  • 核心框架——EC2Deploy
  • 一个使用EC2Deploy将web应用部署到EC2上的Maven插件

Chris Richardson撰写了博文说明他为何创建云工具

计算机硬件以前是一种稀少而昂贵的资源。在计算处理的早期,很多开发者需要共享同一台机器。现在每个开发者都拥有自己的机器了,但很少人拥有一台以上的机器。这意味着运行性能测试常常要重新配置机器的环境。与此类似,甚至仅仅复制一部分产品环境也需要大量的工作。然而通过使用EC2,这一切变得不同。有一套Linux服务器用来处理web service调用。根据服务器的类型,每台服务器每小时你只需要支付10-80美分,你最多可以使用20台服务器!无需其他费用,也不必再为购买和配置机器而苦等。

我创建EC2Deploy的目的是为了让企业Java开发者能更加轻松地使用EC2。它是一个Groovy框架,用来将企业Java应用部署到一套Amazon EC2服务器上。EC2Deploy提供了一个简单、易于使用的API以加载一套EC2实例;配置MySQL、Apache和一个或多个Tomcata服务器;还能部署一个或多个Web应用。此外,它还能运行JMeter并收集性能指标。

在项目的主页上就如何使用Maven插件将应用部署到EC2上有一个简短的介绍:

该Maven插件是使用云工具的最简单的方式。一旦你在pom.xml中配置好了插件,你就可以使用“mvn cloudtools:deploy”将你的Web应用部署到EC2上。这会:
  • 加载指定数量的Amazon EC2实例
  • 配置一个MySQL主数据库(master database):创建schema,然后运行数据库初始化脚本
  • 配置零个或多个MySQL从属(slaves)(在不同的可用区域下可选)
  • 将你的Web应用上传到EC2上
  • 配置一个或多个Tomcat服务器,然后部署你的Web应用
  • 配置一个Apache实例以跨Tomcat服务器进行负载平衡

该云工具的maven插件还支持以下目标:

  • cloudtools:jmeter - 运行负载测试
  • cloudtools:redeploy - 重新部署web应用
  • cloudtools:dbsave - 在S3中保存数据库快照
  • cloudtools:dbrestore - 从S3中恢复数据库快照
  • cloudtools:clone - 创建集群拷贝
  • cloudtools:describe - 描述集群
  • cloudtools:list - 列出可用集群
  • cloudtools:stop - 关闭集群

增加了持久存储后,Amazon EC2在硬件资源的分配和管理上正在不断获得超越传统的动力,同时像云工具这样的软件的创建也拉开了整个EC2软件生态圈的序幕。

关于云计算更多的信息,请访问:http://www.infoq.com/cloud-computing

查看英文原文:Cloud Tools bring Java EE on Amazon EC2

没有回复

回复

独家内容

剖析短迭代

敏捷教练Dave Nicolette提出:我们应该如何设定迭代长度?是要根据发布周期的时间么?使用短迭代又有哪些好处?

应用JSF、Ajax和Seam开发Portlets(1/3)

本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。

AtomServer:数据分发的发布动力(第二部分)

在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。

架构师(试刊第二期)

InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!

一种正规的性能调优方法:基于等待的调优

在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。

Java程序员ActionScript 3入门

通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。

浅谈如何创建Rails应用

本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。

Alexandru Popescu谈InfoQ.com网站架构

InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。