9月7日-8日,相约 2023 腾讯全球数字生态大会!聚焦产业未来发展新趋势! 了解详情
写点什么

在亚马逊 EC2 上托管 Web 站点

  • 2008-02-28
  • 本文字数:1250 字

    阅读完需:约 4 分钟

基于剑桥大学的 Xen 虚拟化技术,亚马逊的弹性计算云(Elastic Computer Cloud——EC2)是一个允许用户按需创建、启动、停止基于Linux 的服务器实例的计算服务。每个虚拟机实例是一个虚拟的私有服务器,它在启动时通过DHCP 获取一个IP 地址。虚拟机镜像——亚马逊称之为Amazon Machine Images(AMIs),可以像VMware 的虚拟设备那样被存档和传输,因此开发者可以安装一个所需软件的初始实例并快速将其部署到许多虚拟服务器上。

InfoQ 的上一篇文章着眼于该服务对于开发团队的吸引力,如 Oracle 的 Coherance 团队,他们在短期内需要大量计算能力。该服务的灵活性还使其对那些基于 Web 的创业企业具有很强的吸引力:因为不需要购买昂贵的硬件,你没有前期投入,运行成本相当的低,而且你可以在你的 Linux 实例上安装任何想装的软件。通过在需要的时候启动或停止额外的实例,使得该服务可以很方便地适应流量模式的变化。最后,该服务有知名的亚马逊做强力后盾,它有着交付高伸缩性、健壮性的 Web 基础架构的业绩。尽管这样,缺少 SLA(Service Level Agreement——服务水平协定)仍造成了采用 EC2 的巨大障碍,有一些企业不愿意将其数据或关键业务委托到 EC2 上。

还有实际的问题需要克服。比如虚拟服务器使用 DHCP 获取地址的本质意味着服务器每次启动 IP 地址都会改变。其结果是,在停机之后,Web 站点需要更新其 DNS 入口——这一过程可能需要花费高达 96 个小时才能完成。为解决这一问题,亚马逊推荐使用动态 DNS 解决方案,如 DynDNS,在最近一篇博客文章中,Codesta 的 Oliver Chan 提供了如何为 EC2 设置 DynDNS 的细节。

相同的博客还为那些考虑使用 EC2 服务的开发者提供了一些其他有用的线索:

  1. “在花费太多时间配置和定制 AMI 之前,一开始先找一个适合你需求的现成的 AMI,这样你就不必后面的旅途中重复同样的工作了。检查一下亚马逊资源中心上的公用 AMI 列表,可能会找到适合你需求的东西”
  2. “当使用‘ec2-bundle-vol’命令打包你自己的镜像时,使用‘-d’标志以确保你指定了一个干净的目录,否则将同一镜像打包两次会因为临时文件冲突而导致错误发生。”
  3. “当在你的镜像上工作时,注意主驱动器 / 分区(系统文件放在这儿)只有十分有限的容量(我们的情况是 10GB)。因此当要处理大的文件 / 目录时使用‘/mnt’,它有超过 100GB 的空间。”
  4. “如果机器停止了,除了那些最后一次你执行‘ec2-bundle-vol’备份了的数据,你所有的数据都将丢失。”

随着 EC2 持续增强,使开发者能更容易的使用该服务的开源工具和类库正不断涌现。其中一个这样的项目是,构建在 Chris Richardson 的 EC2Deploy 之上的 Cloud Tools ,它由以下几部分组成:

  • EC2Deploy 框架——一个基于 Groovy 的框架,用于把 Java EE 应用部署到 Amazon EC2。
  • 被配置运行 Tomcat 及与 EC2Deploy 一起工作的 AMI。
  • 一个 Maven 插件,使用 EC2Deploy 往 EC2 上部署 Web 应用。

Cloud Tools 仍然处于开发阶段,但是为开发者在几分钟之内上手并运行在 EC2 上提供了一种方法。

查看英文原文: Hosting a Web Site on Amazon’s EC2

活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2008-02-28 02:174068
用户头像

发布了 150 篇内容, 共 41.7 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

javaweb

喜羊羊

javaWeb 9月月更

如何在 Jenkins CI/CD 流水线中保护密钥?

SEAL安全

DevOps jenkins CI/CD 密钥管理 CI/CD管道

【中秋福利】大数据告诉你:今年中秋礼品这样选

前嗅大数据

大数据 数据分析 数据采集 中秋 互联网+

大众CEO迪斯提前卸任,成败皆因软件

雨果

软件定义汽车

Python 教程之数据分析(5)—— 使用 Python 进行数据分析和可视化 | 第 2 套

海拥(haiyong.site)

Python 9月月更

设计模式的艺术 第六章抽象工厂设计模式练习(开发一款新的手机游戏软件,该软件能够支持IOS和Android等多个智能手机操作系统平台。针对不同手机操作系统,该游戏软件提供了不同的游戏操作控制类和游戏界面控制类,并提供相应的工厂类来封装这些类的初始化过程)

代廉洁

设计模式的艺术

iOS端如何实现微信分享链接与登陆

MobTech袤博科技

微信 iOS SDK

NFT艺术品交易平台:有哪些功能?

开源直播系统源码

NFT 数字藏品 数字藏品软件

华为云WeLink助力平房区打造智慧政务办公

科技怪咖

leetcode 101. Symmetric Tree 对称二叉树(简单)

okokabcd

LeetCode 算法与数据结构

“数智化”时代 ,房企转型路径与挑战的一种技术思路

Speedoooo

小程序 前端开发 数字化转型 移动开发 小程序容器

Mybatis

喜羊羊

mybaits 9月月更

Dubbo Mesh - 从服务框架到统一服务控制平台

阿里巴巴云原生

阿里云 开源 微服务 云原生 dubbo

广东省湛江市等保测评机构有几家?怎么做?

行云管家

等保 等级保护 等保测评 湛江

源码 | SpringBoot启动流程大揭秘

六月的雨在InfoQ

源码 springboot SpringBoot实战 9月月更 SpringBoot启动流程

直播预告 | PolarDB-X 动手实践系列——PolarDB-X 数据导入导出功能

阿里云数据库开源

MySQL 数据库 阿里云 云原生 PolarDB-X

高并发下的网络 IO 模型设计

C++后台开发

后台开发 reactor 高并发 epoll 网络io模型

实战Elasticsearch6的join类型

程序员欣宸

elasticsearch 9月月更

2022年全年Java岗面试题总结+一线互联网大厂Java岗面经/面试题总结!

程序员小毕

Java 程序员 面试 程序人生 后端

借助 TCP 负载均衡和 Galera 集群扩展 MySQL

NGINX开源社区

MySQL nginx 负载均衡 TCP/IP

干货!天翼云DPU技术解码

天翼云开发者社区

中国IPv6“高速公路”,全面建成 IANA被管理权限移交 ,IP地址管理何去何从

郑州埃文科技

ipv6 ipv4 IANA

什么是数据湖?全面解读数据湖与数据仓库的区别

雨果

数据中台 数据仓库 数据湖 DaaS数据即服务

测试平台解决了什么问题?

老张

测试平台

博弈论(depu)与孙子兵法-02(46/100)

hackstoic

博弈论

手把手教你君正X2000开发板的OpenHarmony环境搭建

华为云开发者联盟

鸿蒙 后端 IoT 企业号九月金秋榜

字节前端必会面试题

helloworld1024fd

JavaScript

校招前端面试题

夏天的味道123

JavaScript 前端

LED显示屏是否可以实现智能化控制

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

博云 Kubernetes 开源榜单贡献度进入全球前十

BoCloud博云

云计算 开源 云原生

一加现在属于OPPO吗 资深“加油”来解答

Geek_8a195c

  • 扫码添加小助手
    领取最新资料包
在亚马逊EC2上托管Web站点_Java_Charles Humble_InfoQ精选文章