NBF:新零售服务开放的 Serverless架构与深度实践
如果无法正常显示,请先停止浏览器的去广告插件。
1. NBF:新零售服务开放的
Serverless架构与深度实践
冯微峰
阿里巴巴供应链中台基础技术团队负责人
2. 自我介绍
3. 自我介绍
2014 年加入阿里巴巴集团
2015 年作为技术初创员工加入盒马,负责订单履约等中台系统架构设计和研发,作为核心研
发人员深度参与了盒马中台体系从 0 到 1 的架构演进。
2016 年开始基于盒马的复杂业务场景架构设计新零售服务开放框架—NBF(New-Retail
Business Framework),从最开始的流程中心衍生到目前 NBF 的六大中心体系,形成了一整
套完整的服务开放能力。
2019 年带领NBF团队回归阿里巴巴供应链中台,向包括盒马在内的25个新零售BU及合作伙伴
统一输出NBF生态开放的能力。
4. 目录
1、NBF是什么?
2、NBF—云原生Serverless架构
3、NBF—Serverless核心能力
4、NBF—Serverless深度实践
5、NBF展望—上云出海
5. 为什么做NBF?
快速开店
门店
门店
门店
门店
门店
快速接入
6. 为什么做NBF?
协同
门店数量
门店数量
200
177
150
100
95
50
0
8 17
2016 2017
2018
2019.9
开放
7. 什么是NBF?
NBF(New-Retail Business Framework)——
新零售服务开放框架
NBF提供 标准化业务定义 、 快捷服务开发 和 生态开放 的能力,旨在
为生态伙伴提供一整套完整的新零售PaaS和SaaS的解决方案。
8. NBF的协同和开放
SPI:Service Provider Interface
Default Bundle
SPI
SPI
自闭环业务系统
SPI
SPI
Bundle:OSGI中Bundle概念
DaRunFa Bundle
CaiNiao
Bundle
以 jar 包形式存在的一个模块化物理单元
9. NBF的生态
库存分销商业能力
阿里健康接入商业解决方案
服务市场
中间件服务
Cache
tair
redis
ehcache
大润发CRM的SaaS产品
盒马数据PaaS平台
Business Work Flow
服务度量
NBF流程中心
服务计费
服务编排
服务链路SOP
业务链路SOP
NBF Inside
Serverless 多态路由 降级路由 Mock路由 服务动态路由
Applicationless 云原生容器 FaaS能力 动态部署加速 服务快速发布
面向接口编程 Idea插件 研发Pipeline 服务一站式研发
Codeless
中台团队
供应链平台
盒马中台
猫超中台
村淘中台
10. NBF的三化三世
服务化
• 服务发布 Application
• 服务路由 less
流程化
多态化
• 去应用化
• 管控服务
• 业务编排 Server
• 服务编排 less
• 无须关注资源
• 弹性调度
• 服务多态实现 Code • Idea代码托管
• 流程多态继承 less • 无须关注repo
11. NBF—Serverless
传统应用的困惑
服
务
资
源
不
隔
离
研发流程复杂
运维流程复杂
NBF—Serverless
机
器
资
源
严
重
浪
费
VS
服
Idea插件一站式研发
务
独
立
容
器
部
署
NoOps
机
器
资
源
弹
性
调
度
12. NBF—云原生Serverless架构
A +
B
A
,
+
+
h
A
S
s
S C
h
D
g
F I KN
8
A
EKml
A -,(
S
+
C- )
S
A -,(
B
bUd
A
k
A
ap
c
- B
+
-
ro
-
(
A
ni
D
D
A
k
- )
- )
A +
M
-,(
-
A
A
-,(
A
EKml e
-,(
-
(
F I KN
-,(
e
fP
- B
S K
-
( ) -
-
S
13. NBF—Serverless三大能力
极速
服务发布
Codeless一站式开发
FaaS服务发布
Server
less
多态路由 灵活 强大
降级路由 服务路由 服务运维
毫秒级弹性扩容
极速回滚
14. 极速的服务发布—Codeless一站式开发
SPI
SPI
自闭环业务系统
SPI
SPI
15. 极速的服务发布—FaaS能力(Applicationless)
Bundle Bundle Bundle
动态载入 动态载入 动态载入
NBF Serverless容器 传统应用:
常驻的NBF-Faas引擎 NBF:
服务发布时间=容器启动时间+镜像加载时间
服务发布时间=Bundle的加载时间
)+(
16. 灵活的服务路由—NBF Broker
Broker
Broker Agent
Broker SPI
Broker Bundle Loader
SPI Proxy
DynamicInject
Broker Bundle
Bundle Proxy
Broker
Bundle
SPI
Diamond
Tair
17. 灵活的服务路由—多态路由
业务系统
业务系统
业务系统
业务系统
NBF Broker SDK
Gateway
if
盒马采配服务
if
大润发采配服务
else
天猫超市采配服务
业务身份
盒马采配服务
动态路由
大润发采配服务
Id,Expression,Rule
天猫超市采配服务
18. 灵活的服务路由—多态路由
Id(业务身份),Expression(正则表达式),Rule(规则表达式)
19. 灵活的服务路由—降级路由
盒马履约
生成履约单
调用集单算法
生成履约批次
NBF Broker SDK
被动降级
各种开关
if…else
降级代码
业务代码
耦合
主动熔断
集单服务
集单降级服务
20. 降级路由的两种模式
Broker
• 服务找不到
• 服务异常
• 服务超时
• 超过基线指标
是
判断
BundleA
否
被动降级
主动熔断
降级BundleA’
21. 降级路由的两种模式
22. 强大的服务运维—毫秒级弹性扩容
-
H
-
Nk
i
a
Ae
a
H
S
H
C
S
d
S
S
H
H
C
g
-
--
-
-
- C
Ae
c
Eh
-
-
-
fF
S
H B
23. 强大的服务运维—极速回滚
传统应用回滚
NBF—Serverless回滚
构建
打包
容器启动
新镜像加载
Engine常驻
Bundle
Reload
Bundle 1.1
reload
Bundle 1.0
24. Serverless深度实践
4
0
1
QPS:4000 à 12W
机器:20MS
2 à 5 à 10 à 5 à 2
2
2
2
2
2
2
2
2
2
2
未来
解决长尾
支持缩容到0台
25. Serverless深度实践
女王节文描服务Serverless前后指标对比
S B
37 7 97 F
37 7 97
24U
10/
%
10/
结论:
)
% %
• 系统指标稳定
• 业务指标稳定
• 机器资源节省80%
QG
U
U
P
697
T
R
U
05C
MC
-.
( (%
T
8
目前NBF托管3600台机器
今年双十二将全面Serverless
化,预期节省机器70%
26. NBF运营数据
10个BU
1137个SPI
30天调用百亿次
1555个Bundle 5655个方法
3570台机器 12000核CPU
27. NBF展望—上云和出海
D
D
D
F
)(
D
B
-
(-
C
28.
29.