酷家乐多云架构演进和落地
如果无法正常显示,请先停止浏览器的去广告插件。
1. 酷家乐多云架构演进和落地
王栋年
群核科技(酷家乐) 资深技术专家
2. 关于我
18年加入群核科技(酷家乐)
负责云原生中间件团队
先后任职于RingCentral、阿里巴巴
技术之外:足球爱好者
3. 酷家乐—全球领先的云设计软件平台
总注册用户 合作品牌企业 商品素材模型
3,500 万 32,000 家 1.7 亿个
覆盖近五年新房户型库数据 每天新增设计方案 累计渲染图总量
90% 40 万套 26 亿张
4. 多云架构产生的背景
大纲
02 多云建设的过程和方案
OUTLINE
03 多云落地的关键技术
04 未来展望
5. 云端设计SaaS软件架构
场景化应用
内装设计
(酷家乐)
别墅/外景设计
(模袋云)
公装设计
(酷空间) 2D设计
(美间) ...
CAM CAE 3D照片级渲染
照明仿真 互动全景图
热力仿真 AR/VR
CAD
领域能力
BIM领域模型(建筑结 自由造型
构、铺贴、MEP等) 参数化
人工智能设计
底层能力
基础设施
几何造型
真实感离线渲染
公有云
对接生产
装配
实时图纸
2D矢量设计
检测
算量测试
WebGL高性能实时渲染
轻量化
大场景
中间件、观测、计算引擎
wifi强度仿真
机器人仿真
仿真 人工智能
工业化脚本语言 图像处理
服务器、网络
6. 技术简史
生于云
2013酷家乐网站1.0正式上线
⻓于云
10年来,充分利用云的便利性不断实现
产品的拓展
产品100%基于云构建
目前已使用到超过10种云产品
7. 单云架构全景
kujiale.com
架构形态
负载均衡
API Gateway
15+中间件或基础组件
素材微服务 方案微服务
用户微服务 ......
消息队列
MySQL
HBase Redis
EMR MongoDB
微服务注册中心
配置中心
微服务
Elasticsearch
分库分表、数据分片等;PB级对象存储
观测平台
网关
云数据库,600+实例或集群,5种类型
数据量
modaiyun.com
SLB
500+微服务;100+ FaaS函数;500+topic
数据库
meijian.com
对象
存储
数据库和大数据计算
存储
A云
分布式定时任务
中间件
8. 单云架构之痛
无法满足数据
合规要求 云厂商不可避免
地发生故障 云资源成本较高
且增⻓迅猛
全球化战略下,业务出海 ToB客户为主,对产品 IT支出居高不下,谈判
势在必行 SLA和体验的要求较高 杠杆较弱
9. 01 多云架构产生的背景
大纲
OUTLINE
02 多云建设的过程和方案
03 多云落地的关键技术
04 未来展望
10. 多云建设的过程和方案
合规多云
容灾多云
业务多云
(分业务)
业务多云
(分类型)
11. 合规多云
全球化战略下
产品陆续出海
须优先解决数
据合规的问题
业务
需求
技术
策略
用户隐私数据
的本地化存取
增加就近访问
提升用户体验
12. 合规多云
kujiale.com
meijian.com
coohom.com
modaiyun.com
SLB SLB
负载均衡 负载均衡
API Gateway API Gateway
观测平台
网关
素材微服务 方案微服务
用户微服务 ......
微服务
Elasticsearch
Redis
EMR MongoDB
对象
存储
数据库和大数据计
算
观测平台
用户微服务
存储
A云
......
微服务
消息队列
MySQL
HBase
网关
微服务注册中心
配置中心
modelo.io
配置中心
消息队列
分布式定时任务 Redis MySQL 分布式定时任务
中间件 (用户Cache) (用户库) 中间件
数据库
C云
13. 容灾多云
业务增⻓ 技术⻛险
• 每天新生成超40万设计方案 • 核心业务陆续接入HBase
• 全球总注册用户数超过5千万 • HBase RTO较高(10min+)
• 用户SLA要求越来越高 • 厂商故障无法避免
14. 容灾多云
kujiale.com
SLB
容灾多云架构
A云已有的HBase作为主集群
B云新增HBase备集群(Standby)
负载均衡
观测平台 API Gateway
微服务注册中心 网关
方案微服务
配置中心
qh- hbase- client
消息队列
核心收益
极大的降低了RTO(1min内),较好的
failover
微服务
分布式定时任务
中间件
满足了用户SLA
A云
HBase(主) HBase(备)
数据库 数据库
B云
15. 业务多云(分业务)
meijian.com
modaiyun.com
kujiale.com
SLB
SLB
业务多云架构
核心收益
取得了较好的成本议价效果
微服务注册 API Gateway
网关 中心 网关
素材微服务 方案微服务 配置中心
用户微服务 ...... 消息队列
Elasticsearch
EMR
验证了业务多云的可行性
美间微服务
模袋微服务
微服务
微服务
HBase
负载均衡
API Gateway
分业务多云,即部分独立创新业务运
行在B云,其余仍保持运行在A云
观测平台
负载均衡
分布式定时
MySQL
对象
Redis
存储
MongoDB
数据库和大数据计算
存储
A云
任务 Elasticsearch MySQL
中间件 MongoDB Redis
数据库
B云
16. 业务多云(分类型)
kujiale.com
meijian.com
modaiyun.com
SLB
业务多云架构
API Gateway 微服务注册
网关 中心
分类型多云,即在线业务运行在
B云,离线业务仍保持运行在A云
素材微服务 方案微服务 配置中心
用户微服务 ...... 消息队列
微服务
核心收益
实现了年度云成本较大下降
观测平台
负载均衡
Elasticsearch
EMR
MySQL
Redis
HBase
MongoDB
沉淀了完备的多云运行能力
大数据计算
A云
分布式定时
数据库
对象
存储
存储
B云
任务
中间件
17. 多云架构全景
kujiale.com
meijian.com
modaiyun.com
SLB
观测平台
API Gateway 微服务注册
网关 中心
方案微服务
用户微服务
微服务
分布式定时
MySQL
Redis
HBase(主)
配置中心
消息队列
......
Elasticsearch
modelo.io
SLB
负载均衡
素材微服务
coohom.com
MongoDB
数据库
对象
存储
负载均衡
配置中心
API Gateway
网关
用户微服务
消息队列
......
分布式定时
微服务
Redis
(用户Cache)
任务
MySQL
(用户库)
中间件
数据库
C云
中间件
EMR
HBase(备)
存储
B云
任务
观测平台
数据库和大数据计算
A云
18. 多云方案设计原则
务实 扩展
从实际问题出发,以业务 可轻松拓展或转移到主流
需求为导向 的任意云厂商
19. 01 多云架构产生的背景
大纲
02 多云建设的过程和方案
OUTLINE
03 多云落地的关键技术
04 未来展望
20. 能否在多个云运行 ?
21. 多云网络
冗余
多云互通
可靠性
容量
自动
双供应商双线路组网
带宽灵活扩容
单线中断自动切换
22. 多云
能力弱
应用使用中间件方
式千奇百怪
云厂商存在特有或私
有的产品
23. 多云中间件
service pod
多云中间件SDK
构建多云中间件
multi cloud client(SDK)
缓存 SDK
RDS SDK
对象存储 SDK
1. 基于配置中心
2. 遵循开源、云原生标准
微服务 SDK
...... SDK
pullConfig
微服务
配置中心
Elasticsearch
MySQL
Redis
HBase
对象
存储
MongoDB
数据库
......
中间件
存储
24. 多云中间件
CDN
图片格式
构建多云中间件
http get
图片处理服务(serverless)
vendor neutral service
1. 增加万能的中间层
2. 替换为主流开源中间件
非图片格式
旋转
缩放
裁剪
......
get(key)
对象存储
中间层
服务
25. 如何从单云变为多云 ?
26. 迁移架构
微服务B
单云
多云
➡
数据库B
微服务B
微服务A
B云
Relocation模式
1. 双云单集群
2. 双云独立集群
数据库B
数据库A
A云
微服务A
数据库A
A云
27. 双云单集群迁移架构
优点
1. 成本几乎不增加
微服务A
微服务A
微服务A
A云
2. 可以分批次迁移
数据库A
缺点
1. 可测性比较差
2. 跨云访问多
数据库A
数据库A
A云
B云
B云
28. 双云独立集群迁移架构
微服务
中间件、
优点
1. 可以充分测试
2. 减少跨云
基础组件
微服务 数据库 微服务
中间件、 A云 中间件、
基础组件
基础组件
缺点
1. 成本几乎翻倍
2. 不容易分批次
数据库 微服务 数据库
A云 中间件、 B云
基础组件
数据库
B云
29. 测试
难度大
业务规模庞大,
技术实现复杂
常规测试手段
实施成本高
30. 流量镜像
SLB SLB
负载均衡 负载均衡
API Gateway
实现Traffic Mirror
网关流量镜像(Mirror)测试
API Gateway
Mirror
网关
素材微服务
网关
方案微服务
用户微服务
素材微服务
HBase
EMR
MongoDB
数据库和大数据计算
A云
...... API
Mock
微服务
Elasticsearch
MySQL
Redis
第三方
用户微服务
......
微服务
Elasticsearch
方案微服务
MySQL
对象
存储
存储
Redis
HBase
MongoDB
数据库
B云
对象
存储
存储
31. 数据同步
满足平滑切流
借力云DTS实现增量实时同步
云数据库 云数据库
MongoDB MongoDB
云数据库 云数据库
MySQL
1. sequence表
2. 数据校验
云数据库
Redis
A云
数据传输服
务DTS
MySQL
云数据库
Redis
B云
32. 数据同步
方案微服务
方案微服务
满足平滑切流
PUT
POST
DELETE
PUT
POST
DELETE
produce
consume
增量部分
Elasticsearch增量索引实时同步
1. 消息队列
2. 做全量
Elasticsearch
Elasticsearch
kafka
3. 补增量
全量部分
A云
logstash
B云
33. 数据同步
变更事件订阅
满足平滑切流
PUT事件
对象存储增量实时同步
produce
consume
put delete
DELETE事件
1. 事件通知
2. 回源get
增量同步服务
subscribe
事件通知
Object
storage
kafka
回源(get)
A云
B云
Object
storage
34. 关键技术小结
可以在
多个云运行
从单云
迁移为多云
多云网络 流量镜像
多云中间件 数据同步
35. 01 多云架构生产的背景
大纲
02 多云建设的过程和方案
OUTLINE
03 多云落地的关键技术
04 未来展望
36. 未来展望
增效 提质
多云基础设施云原生化,大幅 合规多云基础上进一步支持就
提高多云运维和治理效率 近访问,提升海外用户的体验
37. 微信联系方式
38. 微信联系方式