AWS云服务产品线简介

上次了解完阿里云产品线之后,还准备认识下云服务界的翘楚:Amazon Web Service(AWS)。亚马逊云服务无论是在Amazon内部,还是在国外Web环境下,都是属于最重要、最成熟的云服务供应商。本篇主要简单列举AWS的产品与对应功能。

计算与网络(Computing and Networking)

AWS专用连接 – Direct Connecting

类似于VPN,用于建立本地网络与AWS服务网络的特殊连接。

云主机 – EC2

Visual Servers in the Cloud ,云服务器服务,有几个特别方向优化的版本:

  • M3 – 通用型 – 内存、CPU、硬盘为固定比例匹配 – 适合普通后端服务等
  • C3 – 计算优化型 – CPU、硬盘性能相对较强 – 高性能前端、广告服务、MMO 游戏、分布式分析等
  • R3 – 内存优化型 – 内存容量、CPU性能相对较强 – 分布式缓存、内存分析等
  • G2 – GPU优化型 – 高性能GPU – 游戏流式传输、视频编码等
  • I2 – 存储优化型 – 高容量、高性能存储 – 横向扩展的数据库、数据仓库等
  • HS1 – 读写优化型 – 高容量存储、高性能读写 – 数据仓库、Hadoop/MapReduce
  • T1&m1.small – 微型 – 较低配置类型 – 个人博客、网站等
  • EBS 优化实例 – 高带宽与性能网络优化

DNS – Route53

Scalable Domain Name System,可扩展域名系统(DNS)

私有网络 – VPC

Isolated Cloud Resources,将云服务从AWS云中网络隔离开,公有云私有化的方向之一,网络私有化。

存储与内容分发(Storage and Content Delivery)

CDN – Cloud Front

Global Content Delivery Network,全球CDN服务,用于加入静态资源分发。

归档存储 – Glacier

Archive Storage in the Cloud,文件归档服务,用于大量冷资源的归档。例如历史日志存档等。

云存储 – Amazon S3

Scaleable Storage in the Cloud,云存储服务。

云存储网络接入 – Storage Gateway

Integrates On-Premises IT Environments with Cloud Storage,Gateway服务将本地软件设备与云存储连接起来。

数据库(Datebase)

高性能NoSQL数据库 – DynamoDB

Predictable and Scalable NoSQL Data Store,高速可扩展NoSQL数据库。

内存缓存 – ElasticCache

In-Memory Cache,基于内存的缓存服务。目前支持Redis与Memcached

关系型数据库 – RDS

Managed Relational Database Service,关系型数据库。目前支持MySQL、Oracle、SQL Server或PostgreSQL数据库引擎。

数据仓库 – Redshift

Managed Petabyte-Scale Data Warehouse Service,数据仓库服务。专为优化了PB级数据的存储与查询使用。

分析(Analytics)

数据同步服务 – Data Pipiline

Orchestration for Data-Driven Workflows数据驱动工作流,规划与管理不同介质、设备之前的数据迁移、转化与数据处理服务。

Hadoop计算框架  – Elastic MapReduce

Managed Hadoop Framework。Amazon EMR,MapReduce集群服务,可以快速部署并且使用的集群服务。

流式计算 – Kinesis

Real-time Processing of Streaming Big Data,实时数据流处理服务。

部署与管理(Deployment & Management)

云服务模板 – CloudFomation

Templated AWS Resource Creation,云模板服务,可以给AWS的服务配置上一套模板,让部署的时候能够批量复制,简化部署过程。

云服务操作日志 – CloudTrail

User Activity and Change Tracking,跟踪用户操作与活动的日志,包括API的使用。

云服务监控 – CloudWatch

Resource and Application Monitoring,轻松实现对云服务器、云数据库等的监控,并生成日常报表。类似于阿里云的云监控。

云服务容器 – Elastic Beantalk

AWS Application Container。CloudFomation是一个配置存储,那么Elastic Beantalk就是自动化容器。利用AWS应用容器,可以自动处理从容量预配置、负载均衡、自动扩展到应用程序运行状况监控的部署。

云服务权限 – IAM

Secure AWS Access Control,可配置的AWS访问控制,可以通过API的形式实现AWS功能接入,自动化接入。

自动化部署 – OpsWork

DevOps Application Management Service,自动化部署的开发工具。

专家服务 – Trusted Advisor

AWS Cloud Optimization Expert,专家咨询与建议服务。

移动服务(Mobile Services)

跨屏ID认证与同步 – Cognito

User Identity and App Data Synchronization,用户身份与数据同步服务。帮助开发者在不同的系统、应用之间同步用户数据。

移动分析 – Mobile Analytics

Understand App Usage Data at Scale,移动应用分析工具。

跨屏消息推送 – SNS

Push Notification Service,跨平台消息推送服务。

应用程序服务(App Services)

流传输 – App Steam

Low Latency Application Streaming,流传输服务。

托管搜索服务 – CloudSearch

Managed Search Service,托管的搜索服务。

云端转码服务 – Elastic Transcoder

Easy-to-use Scalable Media Transcoding,云端转码服务。在线视频、音频转码服务等。

邮件发送服务 – SES

Email Sending Service,邮件发送服务。

消息队列服务 – SQS

Message Queue Service,消息队列服务。

IF-Then服务 – SWF

Workflow Service for Coordinating Application Components,简单工作流服务。换句话说,就是基于AWS的if-then-else服务。

下一篇,我们将了解AWS的价格与付费模式。当我真正看到其价格模式的时候,真正被折服到了,这TM才是云服务,这TM才是商业,真是智慧!

参考资料:

  • http://aws.amazon.com/cn/

阿里云产品线简介

最近某个产品开始上阿里云,也是公司第一次真正尝试使用云服务。虽然业界各类人士对阿里云的评价参差不齐,但是我觉得阿里云还是有许多值得使用的方面:

  1. 依靠阿里巴巴,技术、产品和服务都发展“势头”迅猛(CTO口气大啊);
  2. 产品线完整,除了基本产品以外,还有诸如ODPS之类产品;
  3. 价格相对合理,CDN价格反正是比之前谈的某家供应商要便宜;

当然,也有一些觉得不是特别好的:

  1. 没有数据仓库产品(数据库),RDS作数据仓库太贵了;
  2. ECS(云服务器)磁盘性能低下(虚拟化的磁盘性能都不怎样);
  3. 内存数据库方面目前还没有Redis这样的替代品;

下面简单的归纳一下云产品吧:

弹性计算

  • ECS(云服务器):虚拟服务器,CPU、内存、磁盘、带宽等都可以弹性升级,不过也有瓶颈,上限也是属于PC Server级别。
  • SLB(负载均衡):基于4级协议与7级协议的负载均衡,HTTP协议的貌似就是Nginx,目前监听规则只能基于端口,比较好的优势就是可以用SLB的流量计费节省外网带宽,对于流量波动应用比较划得来。

数据存储

  • 关系型数据库(RDS):有点类似于AWS的RDS,目前支持MySQL与MS SQL,看服务挺到位的,但是如开篇所说,将RDS作为数据仓库不是一个性价比高的选择(我们也没测试过具体作为数据仓库的性能)。
  • 开放结构化数据服务(OTS):看描述有点像Redis,但是好像更接近MongoDB,反正案例应用是这么说的:用OTS替代了MongoDB…
  • 开放缓存服务(OCS):类似于Memcache的替代产品,某些场景性能稍好。

存储与CDN

  • 开放存储服务(OSS):不多说,就是完全存储大量静态资源的。
  • 内容分发网络(CDN):物美价廉的CDN,挺好的。
  • 开放归档服务(OAS):冷资源备份用的,可以用来存储历史日志什么的。

大规模计算

  • 开放数据处理服务(ODPS):底层Hadoop,离线分析的,使用起来大概像Hive吧。
  • 彩云间(DPC):基于ODPS的一个可视化提数产品吧,可以拼报表的。

安全与管理

  • 云盾:有点像机房级别的防护系统,防DDOS之类的。
  • 云监控:监控ECS硬件级别、应用级别、业务级别的监控工具,挺好用的,省了运维不少事。

应用服务

  • 云引擎(ACE):程序托管环境,支持PHP,Java等。
  • 简单日志服务(SLS):用于抽取日志的服务,看起来挺好用的,但是由于还处于公测,所以尚未使用。
  • 消息队列服务(MQS):分布式消息队列服务。
  • 开放搜素服务(OS):托管类型的搜索服务。

目前我们上线的新产品使用到了ECS,SLB,RDS,CDN。其他的尚未使用,将来类似的产品如果上阿里云可能会考虑使用ODPS,OTS,SLS等。很多应用服务都是不错的,但是考虑到业务的需求,ECS目前配置是受限的,而且磁盘等也是一个尚未解决的问题(期待推出单独的SSD磁盘服务之类),即使是互联网企业,核心业务也是需要斟酌架构与场景之后,才考虑是否上阿里云的。

关于阿里云的运维级别,个人感觉是比绝大多速互联网公司自己做运维靠谱,但是如果用作金融服务,系统核心服务,那可能目前的公有云还是存在许多风险与不足。期待阿里云越做越好,同时也期待AWS也早日在国内正式商用!

 

移动 App 主流开发模式

在移动 App 开发领域,存在着三种主流的开发模式。他们被称之为 Web App 、Native App 和 Hybird App 。三种不同类型的 App 代表着不同的技术组合与开发模式,用户体验上也有一些差异。

Web App

Web无需安装,对设备碎片化的适应能力优于App,它只需要通过XHTML、CSS和JavaScript就可以在任意移动浏览器中执行,通过浏览器来调用Device API(取决于HTML5的支持能力)。随着iPhone带来的WebKit浏览体验升级,使得专为iPhone等有WebKit浏览内核的移动设备开发的Web应用,也有了如App一般流畅的用户体验。换句话说,Web App即可以认为是PC上看到的普通网页。

Web App的优势

  1. 开发成本低
  2. 适配多种移动设备成本低
  3. 跨平台和终端
  4. 迭代更新容易
  5. 无需安装成本

Web App的劣势

  1. 浏览的体验短期内还无法超越原生应用
  2. 不支持离线模式(html5已经解决这个问题)
  3. 消息推送不够及时
  4. 调用本地文件系统的能力弱

Native App

而App因为位于平台层上方,向下访问和兼容的能力会比较好一些,可以支持在线或离线,消息推送或本地资源访问,摄像拨号功能的调取。但是由于设备碎片化,App的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。

Native App的优势

  1. 提供最佳的用户体验,最优质的用户界面,最华丽的交互
  2. 针对不同平台提供不同体验
  3. 可节省带宽成本
  4. 可访问本地资源
  5. 盈利模式明朗(利用平台售卖App)

Native App的劣势

  1. 移植到不同平台上比较麻烦
  2. 维持多个版本的成本比较高
  3. 需要通过store或market的确认
  4. 盈利需要与第三方分成

Hybird App

Hybrid App是 Native App 和Web App(Mobile Web)二者混合开发的产物,HTML5 的页面被嵌入到 Natvie App 的 WebView (浏览器模块)中。因此它综合了Native App与Web App两者的有限,具备更新速度快,交互体验好,跨平台等优点。

最佳应用

目前主流的App基本上都使用了Hybird模式,在基础功能中,使用Native模式开发,扩展应用中,使用WebView加载更多的功能与应用。

参考资料: