当前位置: 首页 > >

亚马逊AWS在线系列讲座——如何在AWS云*台上构建千万级用户应用

发布时间:

亚马逊 AWS 在线系列讲座——如何在 AWS 云*台上构建千万 级用户应用
用户选择云计算*台来构建应用的一个重要原因是云*台的高弹性和高扩展性。 面向互联网 的应用往往需要支撑大量用户的使用, 但是构建一个高扩展性的、 高可用的应用具有一一定 的挑战,不过基于 AWS 云*台来构建应用可以相对简化这个事情。这个在线讲座将讨论如 何如何充分利用云*台的特性和 AWS 的相关服务来构建一个可以支撑千万级用户的应用。 通过讨论不同用户数量级别的应用需求和架构特点, 然后结合不同的 AWS 的服务来满足用 户访问, 并最终逐渐把架构优化成为可以支持千万级用户的设计。 这个演讲的目的是帮助对 AWS 服务有一定基础的用户进一步理解服务之间的差异以及基于 AWS 云*台构建高扩展 性应用的关键服务及其使用注意事项。 关于 AWS 在国内的服务 问:国内建 Region 大概需要多长时间才能建好? 方国伟:亚马逊去年发布会的时候讲了一个概念叫做“前店后厂”,引起了很 多人误解,以为我们在北京没有 region,宁夏有 region。事实是,我们在北 京有个 region,现在已经建完了。目前处在有限预览阶段,正在协助邀请的 部分客户上线。我们会逐步根据需要邀请更多的客户使用 AWS 的服务。宁 夏的 region 今年*肽甑旎耍苹院笞魑泄牡诙 region。 问:北京的 region 有几个 AZ(可用区)? 方国伟:我们原则这样,如果一个 region 对外正式商用,会有两个或两个 以上的 AZ。商用的 region 一般都有两个或两个以上的 AZ,这里一般指的 是 EC2 的 AZ,S3 的数据一般会存多份,S3 也有 AZ 的问题,但 S3 我们 很少这么讲。 问:在美国 AWS 上的账户能直接转过来吗? 方国伟:不可以,国内外是完全独立的账户。AWS 国内的业务,跟海外的 业务的帐号是分开的,这是两套完全独立的系统,这个不是技术问题。 问:告诉我一个理由,在众多的云*台中为什么选择 AWS。 方国伟:那大家知道亚马逊的一个基本原则是我们不会去评论竞争对手,这 是公司的要求。用户在选择云服务商的时候的风险与买产品是不太一样的, 应该要低一些,为什么呢?因为买产品,基本上是一锤子买卖,三年之内软 硬件不太会换的。但是云服务却不一样,你任何时间都可以换。这个服务到 底好不好, 最好亲身去体验一下。 亚马逊 AWS 会提供一个 Free Usage Tier 免费套餐服务,大家可以试一下。如果要做横向比较的话,你可以从几个方 面来看: 第一,云服务商的运营经验和品牌。

第二,技术。技术包括两个维度,一是技术的广度,你要的技术他有没有, 二是技术的深度,某一个技术做得怎么样,这是需要去评估的,而不仅仅去 看产品名字、服务名字有可以了。比如同样叫 RDS,但 RDS 与 RDS 之间 的差别蛮大的。同样的虚拟主机,差别也是蛮大的。 第三,服务,云计算是作为一个服务而不是产品提供了,因此服务商的服务 能力和品质直接影响到用户的体验。 第四,价格。各服务商的价格有高有低,还是需要你自己去比较。 问:RDS 的可靠性能达到“5 个 9”吗? 方国伟:RDS 的官方 SLA 是 99.95%,这是写到 SLA 里去的。具体实际的 服务水*也许会比这个 SLA 高一点。 问:北京的 region 采用多线接入? 方国伟:理论上主要的运营商,我们都会接进来,因为要满足国内的网络的 实际的情况。 问:S3 的性能怎么样? 方国伟:一般情况下,S3 的性能不是问题,你只要往里边放数据就可以了。 而且 S3 还可以集成 CloudFront CDN 服务,那性能更加不是问题了。但是 某些个别情况下,你可能会觉得 S3 的性能需要提升,那这里有一个技巧或 最佳实践,你在放 S3 的 object,不要把 object key 的名字取的类似。因为 系统会根据 object key 做哈希,如果名字取的相似,系统可能会将这些文件 放到同一台物理服务器上去,这样会影响你的访问性能,你的 object key 越 乱越好。有的时候,你自己写一个 random 生成器,让 object key 开始那几 个字节完全不一样最好。 问:CloudFront 在国内可以直接使用吗? 方国伟:CloudFront 是一个 CDN 服务,在 AWS 全球有 51 个点。国内目 前不会推出 CloudFront 服务。 在国内我们 CDN 的合作伙伴是网宿。当然 从技术上讲,你用任何一家的 CDN 都可以。如果你的目标客户在海外,那 你当然可以用我们海外的 CloudFront 服务,你国内的用户也可以使用我们 海外 CloudFront 服务。 问:介绍下亚马逊的 Message 通知服务。 方国伟:亚马逊有个服务叫 SNS,发送方式有很多种,有通过邮件的,短 信的,http 访问等都可以。我们去年推出了新的 SNS 服务,叫做移动推送, 英文为 Mobile Push。现在大家知道移动应用开发很时尚,非常流行,然后 你可能需要给用户的移动设备发一个 Message,那 Mobile Push 专门是 Push 给安卓手机和 iOS 设备的。上个礼拜,我们把 Mobile Push 服务升级 了,为什么?通过 GCM 向国内的安卓设备发不太方便,所以我们在国内与

百度的云推送合作来支持国内的安卓设备。还有一个更新针对 Windows 设 备,SNS 的移动推送服务现在已经支持 Windows 设备。 对于没有用过 Mobile Push 同学,我用一句话解释一下,如果向不同的移动 设备发 Message,一般需要跟不同*台的消息服务*台去连接。如果通过 SNS,那么通过与 SNS 的一个 API 接口连就可以了,然后亚马逊后台会去 跟不同的*台上的 Message Push Service 去连,简化了你的编程和管理。 问:EMR 是跑在 EC2 上吗? 方国伟:这是肯定的,基本上 AWS 需要使用计算资源的服务都是跑在 E2C 上面的。如果你去用 EMR 就会发现在创建 EMR 的时候,他让你选 EC2 实 例的大小,所以 EMR 那肯定是跑在 EC2 上面的。对那些没有用过 EMR 的 用户来, 我稍微解释一下, EMR 相当于 AWS 上的 Hadoop 服务, 创建 EMR 很简单,通过命令行或点击几次鼠标就可以实现。这样,你的重点就放在如 何写 Map/Reduce 算法,Hadoop 集群的构建和运维完全交给 AWS。 问:RDS 底层是用什么技术隔离? 方国伟:RDS 实际上跑在 EC2 上面,这是通过虚拟化技术最基本的隔离, 当然还有其他如网络层的隔离等。 问:AWS 在国内的收费方式有哪些? 方国伟:AWS 国内最终的支付方式还没有确定。国外主要是采用信用卡方 式,国内有国内具体的情况,所以说我们会考虑到不同的支付方式,最终会 在我们服务中正式对外发布。 关于 AWS 的认证与考试 问:请问 AWS 有哪些培训和认证服务啊? 方国伟:关于认证考试培训的问题,这个很有意思的问题,为什么呢?因为 大家知道如果一个*台的使用量越来越多,*台认证的价格会越来越高,我 们现在看到 AWS 的使用量增长非常快,而且在市场上应用也非常广,所以 这个认证是会挺有市场。AWS 认证目前按照三个不同的角色来划分,比如 说你是开发者,我们是有开发人员认证。如果你是一个架构师,那我们架构 师认证。如果你是一个做运维的,我们有运维的认证。 同时在级别主要分为三个,入门级就是初级(Associate),中级叫专家级 (Professional),高级叫大师级(Master),详见这里。 如果你想更系统的了解 AWS 的服务,你可以参加一些 AWS 的培训,目前 国内没有正式推出,但是应该快会推出。国内培训团队推出了一个免费的培 训课程 AWSome Day,建议大家有机会就去参加。(InfoQ 注:6 月 25 日 AWSome Day 将在成都举行,欢迎报名。)

关于认证考试,这个认证考试是机考的,要到专门的考点去考。北京的考点 是在魏公村附*,这个具体的地点在注册考试时能看到。 其他问题整理 问:S3 为了做图片外链,怎么绑定自己的域名? 答:一般是通过 CName 设置来实现。 问:非洲有没有 region? 答:现在还没有,不过你们如果有需求可以联系 AWS,我们会根据需求决 定下一个 Region 在哪里建。 问:EC2 可不可以支持一些 Windows 早期版本,如 Windows XP? 答:客户端版本的 Windows 支持不仅仅是技术问题,还有其他商务问题在 里面。AWS 的 Workspaces 服务现在支持 Windows7 界面的云桌面服务。 问:AWS 国内有备案要求吗?国内的何时能使用? 答:会有备案要求,因为这是在国内开展业务的要求。 问:*时使用出现问题要咨询 AWS 时有哪些方式能联系到 aws 服务器人员以便及时解决 问题呢? 答: 联系到 AWS 多长时间能反馈取决于你有没有购买 AWS 的支持服务, 一共有四个级别:basic,developer,business 和 Enterprise,不同级别的 响应时间是不一样的。 问:怎么跨 region 建立一个可靠的 private network? 答:这个暂时只能靠用户自己构建。另外,目前在美国的几个 Region 可以 用 DX 连接起来。 问:AWS 在电商系统上的应用如何?有成功案例么? 答:AWS 非常适合电商应用,最大的案例肯定是 amazon.com 啦。当然除 了 amazon.com 之外,也有许多其他,国内的有兰亭集势,Tiens 等。 问:AWS 有没客户群? 答:我们有 Technical Support Forum,会在国内推出中文版的技术支持论 坛。 问:怎么 preserve 我的内容在 CloudFront 上?不会因为内存不足或者什么原因被去掉? 答:设置 TTL,并定期访问,跟内存无关。 问:S3 和 ElastiCache 哪个响应会快?ElastiCache 最大能存放多大的数据?

答:Elasticache 的速度比 S3 快多了,一个放在磁盘,一个放在内存。 Elasticache 是分布式内存缓存服务,一般不会把所有数据都放在内存中。 问:ELB 怎么做 URL dispatch?如果 ELB 做不了,我自己架服务做 URL dispatch 的话, 建议把自己的服务架在 ELB 前面还是后面? 答:看具体情况吧,如果用不到 ELB 的功能,你甚至可以不用 ELB。 问:AWS 对服务器的硬件有什么要求吗? 答:一般用户不用考虑这个问题,总的来讲底层是 Commodity hardware, 但是不同的计算实例和服务对硬件有一些差异。 问:DynamoDB 有没有官方的,适用于本地开发的模拟环境? 答:有。 问:SES 发邮件 quota 不够用怎么办? 答:如果遇到的是 soft limit,那么联系我们销售申请增加上限的就行。 问:APNS 怎么实现的?需要在客户端自己装个插件实现长连接么? 答:用我们 SNS 的 Mobile Push 就可以了。




友情链接: