Upload
asasia
View
88
Download
3
Embed Size (px)
DESCRIPTION
Sina App Engine. - deep inside cloud service. SAE Team. http://t.sina.com.cn/saet. 前言. 什么是 Sina App Engine Sina App Engine的发展现状 SAE和微博是啥关系 关于SAE的外部好消息 关于SAE的内部好消息. 提纲. Cloud Service. RDC. MemcacheX. TaskQueue. Cloud Service. Php. XHProf. Stor. Image. MemcacheX. . 覆盖整个Web服务 - PowerPoint PPT Presentation
Citation preview
Sina App EngineSina App Engine- deep inside cloud service- deep inside cloud service
http://t.sina.com.cn/saet
SAE Team
前言
什么是 Sina App Engine
Sina App Engine 的发展现状
SAE 和微博是啥关系
关于 SAE 的外部好消息
关于 SAE 的内部好消息
提纲
Cloud ServiceRDCMemcacheX
TaskQueue
Cloud Service
Image
DB
TaskQueue
Cron
RDC
Stor
DeferredJobs
Appconfig
Fetchurl
MemcacheX
SMail
XHProf
. 覆盖整个 Web 服务 . 精英团队作战
Php
Tmpfs
Cloud Service
Cloud Service
App Sandbox:
RDC
什么是 RDC: Relational Database Cluster
RDC 的目标:
1 ,监控百万数量级的 DB ,包括心跳检查、主从同步检查、节点负载 2 ,管理百万数量级的 DB ,包括启动、停止、迁移、重启、切换
3 ,被动复制模式的 HA
4 ,支持 MySQL5 通讯协议,代理层完全透明,代理损耗低
5 ,无状态依赖,自身支持水平扩展
6 ,提供用户的 DB 的隔离性,保证整体集群的安全性
RDC
RDC 与 MySQL 在实现上的一些不同
1 ,多进程 vs 多线程
2 , SQL 解析,词法分析 vs 语法分析
3 , Query Cache
特别说明:
1 , RDC 不负责用户数据库的水平扩展,所以水平扩展需要用户自己做分表
2 , RDC 自身提供一主多从的 DB 结构,上层支持读写分离
3 ,为了整个数据库平台的安全和可靠, RDC 会根据自身的预判算法预先屏蔽某些SQL 语句
4 , RDC 强烈建议用户使用正确的 MySQL 调用习惯,对每个 MySQL 函数判断返回值
RDC
RDC
如何使用 RDC
主库 = 》 w.rdc.sae.sina.com.cn:3307
从库 = 》 r.rdc.sae.sina.com.cn:3307
RDC
RDC 的预判机制:
1 ,语句selectupdateinsertdeletereplacecreate tablealter tablecreate index
2 ,三道封锁线
3 , SQL 并发执行时间和
RDC
Benchmark :
硬件环境:4Core 3GHz , 4G
软件环境:CentOS 5.1C++ boost 1.36MySQL Server version: 5.0.87-log Source distribution
标准压测脚本, /usr/local/mysql5/sql-bench/run-all-tests
RDC vs 标准 MySQL
with QueryCache -5%without QueryCache -10%
增强功能:
1 ,水平扩展2 ,监控与系统结合
MemcacheX
什么是 MemcacheX
MemcacheX 的目的
1 , low overhead
2 , HA
3 , Statics
4 , Connection Protector
5, Data dump
MemcacheX
MemcacheX
MemcacheX
Connection 保护
1 , Connection LRU
2 , Conection Timeout
find-key => O(logN)insert-key => O(logN)delete-key => O(logN)get min-value => O(1)
TaskQueue
1 ,什么是 TaskQueue
2 ,和 DeferredJobs 的区别
3 ,如何使用 TaskQueue
TaskQueue
TaskQueue
1 ,硬哈希
2 ,多进程
3 ,非阻塞 timeout
4 , master-slave 被动复制
5 , worker 延迟等待时间
6 , worker 死亡唤醒检查
What we will do
• 新的代码部署文件系统
• 无缝迁移
• Key-Value 数据库
SAE is still coding
关于 丛磊:码控, http://t.sina.com.cn/kobe
[email protected]个人技术博客: http://saecloud.sinaapp.com