《AWS云端企业实战圣经——亚马逊如何构造云端计算》精彩集锦part1(1-4章)

         AWS云端企业实战圣经——亚马逊如何构造云端计算》是由中国台湾资深AWS操作专家林允(豆瓣)写的一本书,知名度较高。上研以来,因为导师的关系接触了比较多的云计算概念比较多,对云计算行业巨擘GoogleAmazonVMware等公司听得比较多,但对他们的云计算产品/解决方案的认识却仅停留在粗浅的了解层次上。近期在图书馆偶遇这本书,故想认真一览,希望能窥得AWS的一些更本源的东西。(目前云计算知识还不成体系,时间匆促,故仅记录本书中令我眼光一亮的内容,想了解更多请翻阅此书

第一章:谁应该使用云计算

        这是打开当今对云计算各种偏颇认识的钥匙,云计算不是万能的,但没有云计算确实万万不能的。正如作者所言云端是一种工具,它适合在特定环境解决特定问题

1. 首先得意识到如今网络已经平民化、普及化,其次要认识到云计算诞生的需求来自多方面(web产生数据量、用户访问量、pay for the peak...;

2. 几个负面的云计算定义例子(当然不止这些):云计算=使用VM”云计算=分布式计算使用云计算=应用程序有高可扩展性所有系统都适合云计算

3. 云计算的定义非常多,这一方面是由于定义者出发的角度(用户、服务器提供者、设备商)以及企业的利益诉求不一,另一方面则是因为学术界因研究需求造出的定义。本书给出的定义依用户所需,以因特网为基础,来提供大量的运算能力,分享资源和服务,这跟作者的身份相符,从使用者/管理者的角度来定义,比较公允。

4. 云计算三个层次:(比较清晰)

    IaaSAmazonRackspace):"通过因特网,以服务的形式提供运算能力、存储设备、网络及其他基础设施。" 核心技术虚拟化,对用户”pay as you go”,单位image/VM

    PaaSGoogleMSSalesforce.com):概念基本同IaaS,但需要特定的执行环境。单位为应用程序,一般提供SDKIDE及基础管理操作;

    SaaSGoogle):完成的应用程序,通过因特网以服务的形式提供给用户,用户只需要Browser,无需安装软件。

5. 注意云计算与传统计算架构如虚拟主机、专属服务器和主机托管的区别(这些传统架构现在摇身一变,贴上了云计算的标签)。关键词:可伸缩性(Elasticity

6. 云计算的优势(成本、可用性、持久性)和风险参半;

7. 适合云计算的场景(精彩),可从优点出发找各种应用场景的契合点。如Startup companies(成本、快速迭代...)、高可扩展性网络应用、大量运算需求、备份和容灾、开发与测试(环境快速搭建)。

 

第二章:云计算领导者AWS

作者认为Amazon web serviceAWS)是目前最好的云计算服务,这并非盲目推崇,AWS是学习云计算精髓的标本。

1.     AWS的组合式服务概念:类似堆积木,提供多种服务满足特定需求且各种服务可组合使用。涉及运算、存储、数据库、网络、消息、监控、付款等;

2.     AWS服务提供WS接口,包括SOAPRESTQuery API(类REST)。支持多种开发语言,SDKIDE

3.     AWS的两个重要概念:Region(地理上分离的大区域,同地区的AWS服务中EC2与这些服务通信不受网络传输费)和Availability Zone(地区里面数据中心的代号),一个Region含多个Availability zone

4.     发现AWS使用了各种凭证和识别码,看不懂,不关心,直接跳过。

第三章:AWS上手必备工具

AWS的服务都提供了SOAPREST两种接口,几乎所有程序语言都可与其沟通。官方加第三方工具很多很多。

1.     各种服务的区别

[1].    S3 vs EBSS3是完全独立的“对象存储服务”,通过WS访问,具有高持久性的永久存储。EBS完全依赖于EC2的存储服务,是SAN的概念,可对EBS Volume简历快照;

[2].    EBS vs Instance storage:持久存储 vs 本机EC2暂时存储;

[3].    S3 vs CloudFrontS3是持久性的长期存储,后者是暂时性缓存(类似CDN概念,数据主要来自S3);

[4].    SimpleDB vs RDS:前者为Document store数据库,后者是关系型数据库(MySql

[5].    EC2 vs GAE:前者是低级的IaaS,后者是高级的PaaS

2.     AWS传输收费节约:尽量把EC2VM放在同一Availability zone,并避免不同AZRegionEC2 vm之间过多数据传输,尽量使用内部IP地址;

3.     AWS计算signature时加入timestamp,须调整好AWS联机时间,建议使用NTPNetwork Time protocol)自动校正;

4.     分级收费(很多服务都采用这种收费规则,类似Google gmail);

5.     访问控制工具:IAMIdentify and Access Management)和APLAccess Policy Language),正在完善,这部分工作比较难;

6.     AWS主要的图形接口工具:AWS Management Consoleweb app形式,支持服务受限)、AWS Toolkit for EclipseJava开发,资源多,需要访问密钥)等;

7.     AWS AP/CLIEC2 API Tools(通过访问EC2SOAP interface操作EC2的所有功能)、EC2 AMI Tools(包装AMI);

8.     AWS SDK(作者推荐开发使用):Java/.Net/PHP/Android/iOS AWS Developer Cente

9.     其它资源主要是AWS网站的TutorialArticle&Blog

 

第四章:AWS基础:S3与云端存储服务

多数人对云计算的理解为“把数据放在网络上”,存储功能是云计算的基础服务。

1.     AWS存储功能主要包括S3SimpleDBRDS

2.     S3存储文件,解决动态数据存储问题(可扩展),满足系统存储无限量文件需求。常规解决数据快速动态增长的方法:数据库表(简单but大量IO)、数据以文件存储到大容量存储设备(SAN)并将metaData写入DB(文件可直接读取,但开发复杂、数据一致性难以保持、ACL弱)、使用独立存储服务(如S3,简单但架构复杂,依赖S3的可用性);

3.     增加CloudFrontCDN服务,可部分解决S3失效造成的数据无法读写问题;

4.     S3simplicity源自REST接口/SOAP接口提供,注重HA

5.     收费指标:存储容量、操作次数、网络传输量;

6.     S3的两个组成层次:Bucket(名字唯一,一般一个应用/服务开一个容器就够了,作为提供服务的端点)、Object(存储在bucket中真正的文件,包含其metadata,可通过对象命名实现层次化);

7.     S3是全AWS有效而非Region-specific(理解其名字的唯一性)。EC2则不是这样。

8.     S3对象存储级别分标准(durability119)和低备份(RRS49);

9.     S3的容器可设置为记录对象版本(更新、删除都会保留原始版本,除非指定版本号);

10.   S3无查询功能,可通过key listingpeek object来实现,或将索引存到MySQL/SimpleDB,查到再读S3

11.   多部分上传(分成小文件,multipart upload),类似TCP中的MTU

12.   NoSql潮流兴起原因:RDBMS可扩展性问题特别难解决(一般通过把数据分割存储多台数据库,让多台数据库同时查写,而在应用程序中处理分割的数据,这样数据库变成了单纯的数据写入/读取)。非关系型数据库产品兴起(HbaseMongoDB…,它们具有的共性:

1>    Free schema(对应关系数据库的固定)

2>    Denormalization(这个概念一直不太理解):NoSQL不提供join功能,建议把相关的属性存储在一起,否则要经过多次查询并在应用层进行join

3>    数据水平分割(利于高可用,高可扩展);

4>    Eventually consistent:关系型数据库强调ACID,非关系型数据库强调BASE

13.   CAP理论:ConsistencyAvailablityPartition Tolerance在分布式系统中二选一;

14.   SimpleDBNoSQL数据库服务,使用简单、有弹性、高可扩展和高可用性。缺点是存储容量受限、无数据类型(均以String存储,这样增加了应用层的数据处理工作);

15.   SimpleDB收费指标:机器利用率、存储空间使用量、网络传输量;

16.   SimpleDB名词:Domains=Tables)、Items=Rows)、Attributes=Columns)、Values=values)、Item name=primary key);

17.   SimpleDB提供最终一致性读取和一致性读取(牺牲延迟和性能)

18.   MySQL针对数据量和读写频率的增加,一般采用MySQL replicationMySQL NDB cluster来应对(维护难度大),AWS推出的Oracle Database 11gRDS服务helpful

19.   NoSQL目前存在的挑战(相对于传统关系数据库):关系数据库产品选择多(NoSQL产品不够成熟)、大量数据需求较少(大型网络程序才需要)、无查询语言标准(移植性不足)等;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值