快手直播观后感
《前端高可用性保障实践》
可用性方案设计
一、页面功能可用性保障
- 技术选型
- 动态配置能力
- 请求压力
- 降级限流
- 埋点监控
二、基础服务保障
1.Nodejs服务可用性
- 压力评估 GPS 8020、业务模型、春晚模型
- 服务优化 缓存优化、连接优化、接口代理优化、日志优化
- 健康检查 node服务可用性检查、API可性检查、硬件配置检查、报警检查
- 容灾互备 多机器、异地多机房
2.Nginx
负载能力:https握手优化 ssl_session_ticket
分级限流
缓存代理 proxy_cache
预压缩 gzip实时压缩、brotli实时压缩、gzip预压缩、brotli预压缩、
容灾互备 多机器、异地多机房
3.CDN
压力评估
边缘节点预更新
多cdn调度
错误重试
三、完整链路可用性
内部服务依赖:风险控制、数据统计、内容审核、帐号、支付提现
外部服务依赖:分享、短信验证、CDN、三方登录
可用性验证
压力测试
- 单功能点压测
- 全链路压测
- 功能修改后重新压测
故障演练
- 模拟真实会发生的故障
- 检查相关降级 熔断流程是否触发正常
- 是否有相关报警
线上预演
- 整体流程演练
- 容量推算
如何保障前端可用性?
一、规范的开发流程
技术选项、代码准入规范、安全检查、测试上线流程、降级流程
二、完善基础服务的支持
- 端能力:预加载、通信通道、性能优化
- 中台能力:分享、支付 、提现、埋点
- 工程架构:可扩展性 可伸缩性
三、高效的监控排障能力
可用性指标体系、业务指标监控、性能指标监控、分级监控规范
四、定期总结演练
提升重视程度、团队练兵、故障操作手册、总结反思提高
《点到面 如何系统化的解决工程问题》
一、开发流程的提效web-ops
泛域名打通nginx+端口自动分配
环境隔离
- 进行BASE IMAGE的进一步隔离
- 类n8n式的ci组合
- 权限管理
构建完成通知
二、monorepo的落地实践
思考:单业务逻辑内的复用、多业务逻辑内的复用、单工程、多工程、开源
三、Open Tracing的Web化场景落地
