首页 > 电脑网络 > 站长之家 > 站长资源 > 网站知识

SAE新浪云服务器平台

累积有16234人浏览

分享者:brookwang

本类最新分享知识本类最新分享:A5站长网

注9困 囱 囲O 圑 园4 囡 团 団

注9困 囱 囲O 圑 园4 囡 团 団

SAE新浪云服务器平台

什么是Sina App Engine 

  Sina App Engine(以下简称SAE)是新浪研发中心于2009年8月开始内部开发,并在2009年11月3日正式推出第一个Alpha版本的国内首个公有云计算平台,SAE是新浪云计算战略的核心组成部分。  

  新浪Sae示例: http://1.baiwanzhan.sinaapp.com/ 

  SAE作为国内的公有云计算,从开发伊始借鉴吸纳Google、Amazon等国外公司的公有云计算的成功技术经验,并很快推出不同于他们的具有自身特色的云计算平台。SAE选择在国内流行最广的Web开发语言PHP作为首选的支持语言,Web开发者可以在Linux/Mac/Windows上通过SVN、SDK或者Web版在线代码编辑器进行开发、部署、调试,团队开发时还可以进行成员协作,不同的角色将对代码、项目拥有不同的权限;SAE提供了一系列分布式计算、存储服务供开发者使用,包括分布式文件存储、分布式数据库集群、分布式缓存、分布式定时服务等,这些服务将大大降低开发者的开发成本。同时又由于SAE整体架构的高可靠性和新浪的品牌保证,大大降低了开发者的运营风险。另外,作为典型的云计算,SAE采用“所付即所用,所付仅所用”的计费理念,通过日志和统计中心精确的计算每个应用的资源消耗(包括CPU、内存、磁盘等)。   

  总之,SAE就是简单高效的分布式Web服务开发、运行平台。

SAE的核心优势

  SAE的基本目标用户有两种,一种是Web开发者,另一种是普通互联网上网人群。

  对于Web开发者,SAE带来的好处有:

  · 硬件成本更低,无需预先购买设备,承担更大的投入风险

  · 开发成本更低,SAE提供许多服务供开发者使用,开发者无需重复开发,包括队列、数据库、缓存、定时、验证码、计数器,几乎覆盖了Web开发的所有领域。另外对于特定开放平台的开发者,比如新浪微博开发者,SAE已经集成了完整的OpenAPI的封装,将开发者的开发成本降到最低。值得一提的是,SAE的开发者目前已经形成了良好的交流氛围,在意见反馈中心、SAE官方群,SAE官方微群可以看到很多热情的开发者在一起共同提高

  · 运维成本更低,在SAE上的应用无需关心硬件维护、服务监控、数据容灾等操作,SAE会通过其高可靠的架构和方便的监控页面为用户将运维成本降到最低扩展性更强,在SAE上的服务无需关心服务压力猛增时带来的扩容等操作,SAE自动支持服务扩展

  · 更加安全可靠,SAE自动提供SQL语句性能分析、前端防攻击、代码检查等功能,在SAE上的所有应用均为多机房容灾部署,比传统的部署模式更加安全可靠,并且SAE提供服务的SLA来实现对用户服务质量的承诺

  对于普通上网人群,使用SAE可以:

  使用推荐应用一键安装Web应用,普通用户无需会编码,也可以在瞬间拥有自己的团购、博客、微博、Wiki等

SAE整体架构

  SAE从架构上采用分层设计,从上往下分别为反向代理层、路由逻辑层、Web计算服务池。而从Web计算服务层延伸出SAE附属的分布式计算型服务和分布式存储型服务,具体又分成同步计算型服务、异步计算型服务、持久化存储服务、非持久化存储服务。各种服务统一向日志和统计中心汇报,参考下图:

  7层反向代理层:HTTP反向代理,在最外层,负责响应用户的HTTP请求,分析请求,并转发到后端的Web服务池上,并提供负载均衡、健康检查等功能。

  服务路由层:逻辑层,负责根据请求的唯一标识,快速的映射(O(1)时间复杂度)到相应的Web服务池,并映射到相应的硬件路径。如果发现映射关系不存在或者错误,则给出相应的错误提示。该层对用户隐藏了很多具体地址信息,使开发者无需关心服务的内部实际分配情况。

  Web服务池:由一些不同特性的Web服务池组成。每个Web服务池实际是由一组Apache(PHP)组成的,这些池按照不同的SLA提供不同级别的服务。每个Web服务进程实际处理用户的HTTP请求,进程运行在HTTP服务沙盒内,同时还内嵌同样运行在SAE沙盒内的PHP解析引擎。用户的代码最终通过接口调用各种服务。

  日志和统计中心:负责对用户所使用的所有服务进行统计和资源计费,并设定的分钟配额,来判定是否有非正常的使用。分钟配额描述了资源消耗的速度,当资源消耗的速度到达一个预警阈值时,SAE通知系统会提前向用户发出一个警告,提醒用户应用在某个服务上的使用可能存在问题,需要介入关注或处理,配额系统是SAE用来保证整个平台稳定的措施之一;日志中心负责将用户所有服务的日志汇总并备份,并提供检索查询服务。

  各种分布式服务:SAE提供几乎可以覆盖Web应用开发所有方面的多种服务,用户可以通过StdLib(可以理解为SAE PHP版的STL)很方便的调用它们。

SAE的功能

  开发:

  ·  代码检查,帮助检查不良函数并帮助移植

  ·  代码部署

  ·  分布式数据库

  ·  分布式文件存储

  ·  分布式缓存

  ·  各种附属分布式服务,包括图像、定时、任务队列、邮件、计数器等

  ·  对接多个开放平台,如新浪微博开发平台

  ·  代码调优,通过XHProf提供

  ·  数据库优化,通过RDC提供

  ·  团队协作,可以邀请好友以不同的权限加入项目

  ·  代码版本管理(计划支持)

  运营:

  ·  应用打包,通过我们的应用向导进行推广

  ·  日志,包括访问日志、错误日志等

  ·  资源报表,消耗SAE各项资源的统计

  ·  服务监控,监控各项服务状态

  ·  数据迁移,包括数据库导入、数据库导出等

SAE提供的服务及两大特性 

 SAE提供的服务

  SAE目前已经提供了十多种服务,整体上分为计算型和存储型,计算型又包括同步计算和异步计算,而存储型则分为持久化存储和非持久化存储。具体列表如下:

服务名称 类型 说明
 
HTTP+PHP
 同步计算
 带SAE沙盒的Apache和Zend为用户提供Web计算服务
 
Storage
 持久化存储
 提供分布式文件存储
 
Memcache
 非持久化存储
 提供分布式缓存服务
 
RDC
 持久化存储
 分布式数据库集群,提供MySQL服务
 
TaskQueue
 异步计算
 异步离线轻量级任务队列,HTTP方式调用
 
DeferredJob
 异步计算
 异步离线重量级任务队列,系统方式调用
 
Counter
 持久化存储
 计数器服务
 
RankDB
 持久化存储 分布式排行榜服务 
KVDB
 持久化存储 分布式key/value存储服务 
Cron
 异步计算
 分布式定时服务
 
FetchURL
 同步计算
 分布式抓取服务
 
TmpFS
 非持久化存储
 提供临时文件存储,文件生命周期在一个会话内,Http请求结束文件自动消失
 
AppConfig
 
 提供应用配置功能,取代Apache htaccess
 
Mail
 异步计算
 邮件发送服务
 
Image
 同步计算
 图像处理服务
 
XHProf
 同步计算
 Facebook提供的强大的PHP调优工具
 
SVN
 持久存储
 用户代码部署的入口点:https://svn.sianapp.com/yourapp
 
Online CodeEditor
 持久存储
 在线代码编辑器,编辑的代码保存后入自动入SVN并部署到Web服务器
 

 两大特性:扩展性与可靠性

  ·  扩展性

  SAE在服务的可扩展性上基本是动态可扩展性的思路,即资源和ID没有强对应关系,用户以服务使用者的身份使用SAE服务。

  ·  可靠性

  在计算可靠性方面,SAE主要是依靠多点部署来完成可靠性,多节点的计算一致性上,SAE有分布式锁服务提供比Paxos更好的容错逻辑。

  在数据可靠性方面,SAE的所有数据都通过冗余存储来达到SLA。SAE通过主动复制和被动复制来实现多点数据冗余。

SAE和虚拟主机的区别

  ·  传统服务托管面向的是硬件软件设备,使用者得到的也是设备的使用权;而SAE面向的服务,使用者得到的是服务的使用权。 

  ·  传统服务托管不面向开发者,开发者无法在其上享受到开发的乐趣;而SAE的一个重要用户就是web developer,开发者可以在其上通过在线调试、日志分析、协作共享等功能进行web开发。 

  ·  传统服务托管不提供分布式系统解决方案;而SAE提供的完整的分布式web服务的解决方案,其中不仅仅包括分布式数据库、分布式文件系统,更包括分布式定时器系统、网页抓取服务、图像处理服务等。 
 

  ·  传统服务托管不解决域名问题,用户往往烦恼于域名申请;而SAE的用户将自动得到在sinaapp下的二级域名,同时SAE还支持域名cname。 
 

  ·  传统服务托管无法保证SLA(Service Level Agreement),硬件故障的成本基本由使用者承担;而SAE保证用户的SLA,用户的web服务自动享有高冗余的前端服务器、享有自动负载均衡系统、服务自动扩展、服务自动收缩等功能。 
 

  ·  传统的服务托管采用预付费的方式,费用固定且和实际使用情况无直接关系;而SAE采用预充值方式,“所付即所用,所付仅所用”,web服务的一切损耗均提供报表查询和账单汇总,让用户一目了然。 
 
  SAE公有云计算和传统的虚拟主机的区别如下表。 

类项 SAE VPS
 
核心用户 Web开发者 无核心用户
 
使用方式 服务使用 设备租用
 
目标 力争覆盖Web服务所有需求,提供多种服务给开发者使用 仅基本需求
 
SLA(服务承诺)高可靠性及严格的服务承诺 依服务商变化,无严格协议
 
计费方式 所付即所用,所付仅所用 预付费,无精确计费

为什么我们要做SAE

   Sina App Engine项目始于2009年8月,目标为云计算时代的分布式web服务提供一整套解决方案。我们开发SAE主要是出于对内、对外两方面考虑:

  对内,新浪很早以前就开始了关于私有云的开发和实践,所以为了进一步提高公司资源的利用率,更加提高web开发的效率,降低web运营的成本,决定了我们要开发SAE。

  对外,亚马逊、Google都是国外的成功的提供公有云计算服务的公司,SAE也想借助云计算这样一个趋势,为国内广大用户提供云计算的分布式web服务的开发、运行平台。

SAE的目标和发展 

  云计算虽然是个新名词,但实际在国外已经有4、5年的历史。2006年,亚马逊就推出了以EC2为代表的公有云计算,并且已经实现了大规模盈利;2008年,Google则推出了以Google App Engine为代表的公有云计算。国内的云计算却一直是炒的很厉害,各大互联网公司都在宣传,但真正有技术实力做出来而又对外公开使用的少之又少。

  实际从2004年开始,新浪就开始了私有云方向的研究和实践,以此为基础的动态应用平台目前已经支撑新浪内部的绝大部分业务。从2008年起,新浪又启动了“浪云”的公有云计算计划,相继开发了分布式队列服务、P2P文件系统、分布式计算框架等一系列基础服务。实际SAE就是“浪云”战略的产物。

  SAE从架构设计和代码编写开始,就明确了自身的两个目标:

  · 做公有云计算平台。公有云不同于私有云,更强调安全性和可靠性,这也对整体的架构设计和技术实现提出了更苛刻的要求

  · 为分布式Web服务提供一整套的解决方案。SAE争取提供开发者开发Web应用过程中所用到的所有服务。

  经过技术团队一年的开发,SAE目前已经提供了十多种服务,整体上分为计算型和存储型,计算型又包括同步计算和异步计算,而存储型则分为持久化存储和非持久化存储。具体列表如下: 

  SAE在2009年11月3日发布了alpha1版本,2010年2月1日发布了alpha2版本,2010年9月1日发布了beta版本,2011年5月17日正式开放注册。

SVN代码部署

  SAE自2011-7-10日起,将全面支持SVN代码部署,用户不仅可以通过任何SVN客户端部署代码,而且SAE现有的代码部署方式也已经对接应用的SVN仓库,即使不使用SVN客户端部署代码,也保证了代码版本。

  如:通过桌面SDK或在线SDK代码编辑器(http://sdk.tools.sinaapp.com)等方式对代码的修改、部署等操作也会像svn commit一样,产生一个新版本。通过SVN客户端svn update可以获取最近的更新,也可以通过svn客户端回滚代码。

与标准SVN的区别

  为了保持与SAE兼容,使用svn方式部署代码到SAE有如下限制:

  1. 文件名或目录名不允许含有以下字符:",*,?,<,>,|,另外文件或文件名的开始与结束也不允许有空格。

  2. 上传单个文件大小不超过4M

  3. 单个目录下的文 件个数不能超过2000个

  4. 每个应用代码总大小不超过100M

  5. 单个版本代码总大小不超过50M

  6. appname目录下只允许存在10个以内的版本,并且版本号必须为正整数。(也就是说appname下面只允许出现10个以内的正整数目录名,不允许有非目录的存在)

加入SAE

  SAE重视每一名Web开发者和普通用户,SAE坚信:

  “SAE的未来取决于能否帮助Web开发者实现其价值体现,取决于是否能和Web开发者实现双赢的良性循环,并最终为互联网所有用户提供高质量的有价值的应用和服务。”

  所以SAE欢迎更多的Web开发者参与,并且欢迎一切喜欢热爱SAE的有志之士能够亲身的参与到SAE整体架构和技术研发中来(简历投递请关注我们的官方微博http://t.sina.com.cn/saet和博客http://blog.sae.sina.com.cn),让我们一起搭建SAE的未来!


bai w an zhan网站网
网站申明:本资料由百万站会员提供,敬请您使用时自辨真伪,后果自负;如需转载请注明出处,来源:http://wap.baiwanzhan.com/site/t123674/.
百万站 全体网站编辑员 感谢您的支持! 祝您快乐幸福每一天!
网站网址:http://sae.sina.com.cn
主页标签:SAE新浪 
进入电脑版本(SAE新浪云服务器平台)
百万站网友们正在评论本文...

上一站下一站

分享到: 分享到百度贴吧 转播到新浪微博 转播到腾讯微博 分享到QQ空间
猜您感兴趣的网站知识
1、站长评测网 2、seo红人汇 3、网页特效代码 4、A5任务:最大的网站技.. 5、中国站长站站长:姚剑军 6、上海美橙互联官网 7、Whois Domain Check 8、Compete网站流量查询

首页 > 电脑网络 > 站长之家 > 站长资源 > 网站知识


百万站-今日最新网站
电脑版 手机版 会员中心 >
© 版权所有 wap.baiwanzhan.com