平台服务
#
aPaaS
#
# platform as a service,介于IaaS和SaaS中间
将软件研发的平台做为服务,以SaaS的模式交付
组件化支撑和驱动
# 组件的发展决定paas广度,组件的聚合决定paas深度
# 对内固守组件边界,对外暴露标准接口
分层
平台组件
基础业务 # 不可见,影响全局,通用业务逻辑,对性能很敏感
业务
组件
设计
# 自描述的,这样就在设计和开发上解耦
确定边界
定义标准接口
确定核心功能
规范异常处理
开发
# 像开发dsl一样,来评判核心逻辑和接口,抽象度高
技术评审
定义接口
# 面向接口开发,也称为BDD
dubbo、grpc等
restful
接口设计
标准化
说明
服务路由
版本管理
授权管理
核心理念
# 体现在 服务、工具、模型、规范
开放 而非 封闭
合作 而非 限制
共享 而非 替代
重点关注
基础业务
组织架构和用户组
审批流
权限
通用模型
透明分布式缓存模型
分布式存储模型
分布式事务模型
效率工具
数据迁移工具
缓存配置工具
SaaS
#
aws线上云
微服务 + gRPC + k8s + Istio
Golang + TypeScript + Python
TiDB
行为分析
#
埋点
#
架构
数据采集
客户端采集
服务器采集
业务系统
第三方渠道
数据治理
ETL
实时ID mapping
元数据管理
数据质量管理: 数据校验, 实时导入监控,异常报警,debug数据查询,用户关联校验,数据质量看板
数据仓库
数据模型:Event, User, Item内容
实时导入系统
存储引擎、查询引擎
数据智能
特征工程
特征选择
模型训练: 深度学习, 自然语言处理,时序预测,GBDT/LR, AutoML
模型可视化
在线服务
工具
采集: SDK(JS, Android, iOS, 小程序,服务端,全埋点), ID Mapping, 归因链路
实施工具: 事件管理,变量管理,命名工具,埋点SLA配置, 预警配置,session管理,生命周期管理,tag管理,测试工具,ABTest工具
分析工具: 事件分析,漏斗分析,分布分析,留存分析,数据看板,热图分析,归因分析,自定义SQL查询, API管理,广告和活动效果监测
实现方式
代码埋点
全埋点、可视化全埋点(圈选)
规范
结构与命名清晰
方便历史版本对比
每个埋点数据质量负责到人(开发、测试、数据负责人)
数据统一管理
尽量用工具自动化
企业中台
#
数据
租户
用户
micro service
每个service监控
每个service不单点
单功能拆分,边界明确
service间只依赖sdk(好莱坞法则),通过服务总线发现
servcie无状态接入
分类
内部服务 internal
# 内外服务用互相转化
文件上传
图像处理
数据挖掘
报表
外部服务 external
# 流控、质量监控、多链路备用、降级方案
邮件
短信
推送
cti
企业信息校验
业务服务 transaction
审批流
工作流
登录
海
核心服务 core
租户id服务
检索服务
报表服务
监控服务
k8s
服务总线
支持服务 supportive
文档
测试环境
沙盒同步
插件服务 plugin
集成服务 integration
事务服务
finance
CPQ
ERP
saas基础
计费
用户管理
联动
导入企业数据
调用aws或aliyun,提供webhook
服务的sdk
多语言sdk
降级
ha
apm
服务监控
# 用于发现问题、追查事故、评估缩容或扩容、评估降级
日志
接口
# 调用服务提供的监控接口
系统
# 容器提供
apm
# 客户端采样
可达性
# 由通用监控完成
工程
打包docker镜像
服务升级
灰度发布与AB test
提供api版本接口供客户端查询
服务总线
管理服务状态、位置
本地生活
#
服务与功能