用 AWS 进行部署和测试
现在,您可能对在 EC2 上部署这个应用程序有些畏惧。其实这差不多与本地部署一样容易。首先,回到 Servers 控制台,右键单击并选择 New。然后,输入 ec2,会看到图 3 所示的 Amazon EC2 Tomcat v6.0 Cluster 选项。选择它并单击 Next。
图 3. 定义 EC2 服务器
在下一个对话框中(见图 4),可以选择希望集群使用的实例数量。目前,保持 1 即可 — 以后随时可以扩展。可以选择一个定制的 Amazon Machine Image (AMI) 或接受默认映像。目前使用默认映像;选择另一个 AMI 可以增加其他软件包,比如数据库。对于实例类型,选择 Small — 如果愿意,可以选择更大的实例(但是要记住,您必须付费)。
图 4. EC2 首选项
Amazon 已经表明它很重视安全性,下两个选项(也见图 4)与 Tomcat 集群的安全性相关。目前,只需在 Key Pair 区域中右键单击并选择 New Key Pair,创建默认的安全设置。必须定义一个名称并选择在注册 EC2 时已经安装的密钥对。
接下来,可以在 Security Group 框中创建组。(这里仅仅是创建组;在另一个视图中,可以实际使用它们)。右键单击并添加一个新的组,指定它的名称。默认设置允许所有人访问端口 8080,目前可以采用默认设置。
最后,可以配置 IP 地址。如果您最终决定长期使用 EC2,这会很方便,因为 Web 应用程序的默认 URI 相当长,很难记住。目前接受 EC2 提供的地址即可。但是,不必担心 — 随时可以把自己的域名映射到 Amazon 提供的 IP 地址。
单击 Next 按钮,把您的项目(和 Groovlet)与 EC2 服务器联系起来。现在可以部署了!
与前面一样,右键单击刚才定义的 Amazon EC2 服务器并启动它,见图 5:
图 5. 启动和停止服务器
这一次,启动可能会多花些时间,因为启动在远程执行。服务器运行起来之后,选择您的 Web 项目并选择 Run as > Run on Server 选项。接下来,选择已经启动的 Amazon Tomcat 集群并单击 Finish。这么做会在 Eclipse 中打开嵌入的浏览器,它在默认情况下访问您的上下文根 — 这里有 index.html 文件,文件包含 Groovlet 的链接。
注意浏览器位置窗口中的 URL。可以在图 6 中看到我的 URL。随时可以把 URL 映射到更符合逻辑的地址。单击 Groovlet 的链接,Groovy 程序会再次显示 — 这一次,程序是在您完全不知道的某个地方的服务器上运行的!
图 6. EC2 是 Groovy!
单击链接几次,您会体会到在 Amazon 的基础设施上运行程序与在自己的本地机器上运行一样容易。然后,一定要停止服务器 — 如果不这么做,您就要一直付费。停止服务器与启动一样。在 Servers 控制台中右键单击您的实例并选择 Stop。
EC2 是 Java 开发 2.0
Java 开发 2.0 主要受到两个因素的影响:
充分利用开放源码工具和框架构建整个应用程序
租借(或借用)管理软件生命周期的各个阶段(包括运行应用程序本身)所需的应用程序基础设施
正如在本文中看到的,通过使用 EC2 可以实现 Java 开发 2.0 的这两个方面。可以在借来的基础设施上充分利用您喜欢的任何软件(请记住,Amazon 的虚拟机器可以运行任何东西),而其花费远远少于自己购买硬件资源。不仅如此,可以非常高效地设置 EC2,扩展到非常大的规模,远远超过您自己以同样的成本能够达到的规模。