IDC大会:新浪SAE架构与设计

Post on 13-Sep-2014

1.808 views 0 download

Tags:

description

 

Transcript of IDC大会:新浪SAE架构与设计

@ 程辉 新浪 SAE 技术经理

2012-01-11

新浪 SAE架构与设计

SAE背景介绍 - SAE试用 - SAE是什么 - SAE 成绩单

SAE架构分析 - 整体架构 - 重点服务设计 - 安全性

SAE企业服务 - 业务介绍 - 合作案例 - 客户评价

内容概要

SAE试用 - 首页

( 首页 -> 登陆后应用首页 ->)

SAE试用 - 我的首页

( 首页 -> 登陆后应用首页 ->)

SAE 试用 - 创建应用

( 首页 -> 登陆后应用首页 ->)

SAE试用 - 应用首页

( 首页 -> 登陆后应用首页 ->)

SAE试用 - 代码管理

( 首页 -> 登陆后应用首页 ->)

svn 仓库地址

在线编辑器

SAE试用 - 在线编辑器

( 首页 -> 登陆后应用首页 ->)

SAE试用 - MySQL 服务管理

( 首页 -> 登陆后应用首页 ->)

SAE试用 - Memcache 管理

( 首页 -> 登陆后应用首页 ->)

SAE试用 - 资源报表

( 首页 -> 登陆后应用首页 ->)

SAE 是什么?

Sina App Engine

SAE 是什么?

Sina App Engine

平台级应用——微游戏 game.weibo.com

SAE 是什么?

Sina App Engine

工具类应用——微盘

SAE 是什么?

Sina App Engine

游戏类应用——微三国

SAE 是什么?

Sina App Engine

门户类应用——北外主站

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

“简单高效的应用开发和托管平台”

所有操作尽量做到“一键化”

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

“简单高效的应用开发和托管平台”

SAE 是什么?

LAMP in Cloud

单机开发

云端部署

SAE 是什么?

PaaS 平台

Compute | Network | Storage

Infrastructure as a Service

Compute | Network | Storage

Infrastructure as a Service

Runtime | Services

Platform as a Service

Applications | UI

Software as a Service

Applications | UI

Software as a Service

SAE 成绩单

5 亿 PV/ 日

172215 应用数 ( 截止 1 月 10 号凌晨 )

14 万 注册用户

70% 微博应用托管在 SAE

100% 微博合作伙伴正在使用 SAE

SAE背景介绍 - SAE试用 - SAE是什么 - SAE 成绩单

SAE架构分析 - 整体架构 - 重点服务设计 - 安全性

SAE企业服务 - 业务介绍 - 合作案例 - 客户评价

SAE 架构 - Big Picture

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron ServiceGateServiceGate

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

SAE 架构 - Dynamic DNS

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 - Dynamic DNS

Dynamic DNSDynamic DNS

特点•多线路支持•智能解析•IDC 容灾

SAE 架构 – App Router

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 – App Router

App RouterApp Router

特点•基于 nginx•共享内存实现高速存取, 吞吐量可达 10W/s•高可用 (HA) ,见右图。

功能•反向代理•应用功能和权限配置•域名服务

SAE 架构 - Runtime

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron ServiceGateServiceGate

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

SAE 架构 - Runtime

沙箱( sandbox)• 代码隔离• AppLimit(并发连接数及内存 )

• ExecLimit(最大请求时间 )• 分钟配额

应用配置( appconfig)• 替代 htaccess• 高效、简单• 安全

本地 IO• TmpFs• Storage Wrapper• MC wrapper

Runtime核心模块• MySQL(mysqli/mysql)• Session• Memcache• GD/cURL/XhProf

SAE 架构 – Code Deployer

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 – SVN 代码管理

SAE 架构 – MySQL 服务

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 - MySQL 服务

RDC Proxy•MySQL 透明代理•SQL 预判,过滤不合理 SQL•健康检查•故障切换 (slave->slave,slave->master)

MySQL Pool•单实例,多用户 (DB)•一主两从一备•DB 动态分配

特点•安全: 14 天内任意时间点数据恢复•可靠: 99.99% 可用•高性能:单实例几千 db

SAE 架构 - Memcache

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 - Memcache

特点•单实例 ( 进程 ) 多用户•命名空间:应用MC 资源隔离, 同一命名空间内实现 LRU

•统计及计费

•支持在线扩容•连接数 LRU

SAE 架构 - ServiceGate

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 - 其它服务

MySQLMySQL

App RouterApp Router

RuntimeRuntimeKVDBKVDB

MemCacheMemCache

FetchURLFetchURL CronCron

Etc…Etc…

Dynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

PHPPythonJava

ServiceGateServiceGate

SAE 架构 - 其它服务

Etc…Etc…

Mail异步邮件服务

Mail异步邮件服务

Security安全扫描服务Security安全扫描服务

Counter计数器服务

Counter计数器服务

Images图像处理服务Images图像处理服务

LBS Service地理位置服务

LBS Service地理位置服务

Text Search全文检索

Text Search全文检索

CDN Service内容分发服务

CDN Service内容分发服务

SMS短信服务SMS

短信服务App Firewall

应用防火墙App Firewall

应用防火墙

SAE 安全

ServicesServices

App RouterApp Router

RuntimeSandBoxRuntimeSandBox

ssDynamic DNSDynamic DNS

SVNSVN

Code Deployer

Code Deployer

Users

Developer

Internal Network

PublicNetworkFetchURL(Proxy)FetchURL(Proxy)

SAE背景介绍 - SAE试用 - SAE是什么 - SAE 成绩单

SAE架构分析 - 整体架构 - 重点服务设计 - 安全性

SAE企业服务 - 业务介绍 - 合作案例 - 客户评价

SAE 企业服务 - 业务介绍

SAE 企业服务Sina App Engine

SAE 企业服务Sina App Engine

第三方服务接入Service Gate

第三方服务接入Service Gate

SAE 应用商店App Store

SAE 应用商店App Store

在 SAE 公有云基础上为企业提供个性化解决方案和咨询服务

欢迎第三方稳定的服务对接 SAE

为开发者提供 web 应用售卖渠道

SAE 企业服务 - 业务介绍

SAE 企业服务Sina App Engine

SAE 企业服务Sina App Engine

配额保障按需提升分钟配额,更高的存储及并发上限等,禁用保护等

高级服务域名绑定, DBA 服务, CDN 服务,敏感内容主动监测等

技术支持电话技术支持,应用迁移指导,应用架构指导,企业培训等

SAE 企业服务 - 业务介绍

第三方服务接入Service Gate

第三方服务接入Service Gate

ServiceGateServiceGateSAESAE 第三方服务第三方服务

BillingBilling

QuotaQuotaStaticsStaticsMobileMobile

PCPC

SAE 企业服务 - 业务介绍

SAE 应用商店App Store

SAE 应用商店App Store

SAE 企业服务 - 客户评价

   "SAE 云计算平台可靠性和安全性非常高 , 性能不断优化 , 后台不断提供各种监控分析图表 , 方便微游戏全方位掌控和优化应用 , 免去了我们在运维上的后顾之忧 "

——五分钟 CTO 张伟志

   "SAE 的服务非常好,反馈的问题能及时迅速的解决,我们提到的一些新需求也能尽量满足并达到预期效果。 "

——自游网 CEO 吴军

   "SAE 平台解决了我们中小型开发团队使用专业分布式平台的梦想。稳定、低成本、 0维护,让我们能更安心的专注产品的开发工作,一个字,赞。 "

—— 微三国游戏负责人 赵立元

SAE 企业服务 - 联系人

SAE 商务经理 冯泽磊 13426310128

也可以跟我联系 @程辉邮箱: chenghui@staff.sina.com.cn

Thanks!

Q & A