实现业务高可用一些关键点

简介: 参与《美团点评技术沙龙》 活动,和美团点评的技术大牛深度交流,根据他们的经验结合自己的实践,自己做了一些简单的整理。

layout: post
title: 美团点评技术沙龙
tags: 开源 高可用 分享 中间件


一、高可用主题

  • CASE STUDY

二、美团云

高可用基础设施

数据中心

网络

稳定,冗余,自愈,效率

  • ecmp
  • 裸光纤+OTN

基础服务

  • MGW
  • NAT

基础设施

  • 资源之间的关系

    • CMDB
  • 监控

    • 内网延时监控
    • 机房环境
  • 可视化交付

    • 网络大盘
    • (机柜与服务器)
  • 数据化运营

三、中间件

稳定 性能 扩展性 效率 成本

微服务

一个service对应一个DB、CACHE

  • 组织结构
  • 架构真经
  • 微服务?RPC?

    • 接入层: 反向代理
    • SERVICE: 之间通过RPC,MQ通讯
    • 负载均衡 慢启动
    • zebra ? DBproxy??

四、德比数据

SLA

提高MTBF,降低MTTR

  • 序列化 PB
  • Java --》GO
  • 单元测试

    • 我拿了工资是要去写运行良好的程序,而不是为了测试。所以我的观点是,在可信任的范围内,测试得越少越好 -- KENT BECK
  • 发布回滚 ?? 灰度发布、多版本共存。
  • 业务层面监控报警 (大数据历史对比)

五、流量复制与故障演练

线上

在影子集群做压测

  • TCPCOPY ?
  • dubbo-copy
  • thriftcopy

    • 包装TB协议
    • 染色 coPY CLIENT -->COPY SERVER
  • 故障演练平台

    • 探针 流量copy
    • 可视化管理平台
  • 链路+日志

    • mtrace ? skywalking
    • slf4j 异步appender

六、CAT

监控分层

  • 端到端响应 与 成功率

实时系统

  • 客户端不落地
  • 服务端实时处理

APM

  • 线上问题,5分钟内解决 !!!!
  • 性能排查
  • problem 报表
  • business 报表

cat设计

  • 客户端

    • 自定义二进制协议
    • httpthread --> ThreadContext
    • 队列 异步
  • 重点

    • 内存
    • CPU
    • 不做压缩
    • netty传输

建模

  • 报表建模

    • 通常,InfluxDB
    • 优化 CPU

存储

  • 批量压缩
  • 顺序写,随机读
  • 索引与数据分开

MVP版本

单机开发环境

  • jetty
  • HDFS
  • MYSQL

开放生态

  • 关注客户,快速响应
  • 先做小而精,在做大全

七、系统稳定性建设

Availability = MTTF/(MTTF+MTTR)

高可用方案

  • 设计
  • 巡检
  • 监控
  • 处理

隔离、限流、熔断、降级

  • 雪崩
  • 如何避免

    • 隔离

      系统隔离 负载均衡
      线程隔离 
      
    • 限流

    • 熔断

      过载保护
    • 降级

      写降级比较难
    • hystrix

全链路压测

流量标识&数据隔离

  • 压测流量特殊标识

    • 全链路透传
  • 影子表
  • 参数偏移
目录
相关文章
|
SQL 消息中间件 存储
PostgreSQL CDC的最佳实践
PostgreSQL CDC的最佳实践
PostgreSQL CDC的最佳实践
|
7月前
|
自然语言处理 搜索推荐 关系型数据库
MySQL实现文档全文搜索,分词匹配多段落重排展示,知识库搜索原理分享
本文介绍了在文档管理系统中实现高效全文搜索的方案。为解决原有ES搜索引擎私有化部署复杂、运维成本高的问题,我们转而使用MySQL实现搜索功能。通过对用户输入预处理、数据库模糊匹配、结果分段与关键字标红等步骤,实现了精准且高效的搜索效果。目前方案适用于中小企业,未来将根据需求优化并可能重新引入专业搜索引擎以提升性能。
302 5
|
11月前
|
存储 缓存 调度
性能提升利器|PolarDB- X 超详细列存查询技术解读
本文将深入探讨 PolarDB-X 列存查询引擎的分层缓存解决方案,以及其在优化 ORC 列存查询性能中的关键作用。
1100 69
|
9月前
|
NoSQL 前端开发 Redis
单点登录云平台子系统集成方式
单点登录云平台子系统集成方式
315 0
|
资源调度 关系型数据库 测试技术
Flink CDC产品常见问题之没有报错但是一直监听不到数据如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
SQL 存储 大数据
更改 HIVE 表字段数据类型有哪些注意事项?
更改 HIVE 表字段数据类型有哪些注意事项?
|
关系型数据库 Serverless 分布式数据库
评测|PolarDB MySQL 版 Serverless
评测|PolarDB MySQL 版 Serverless PolarDB Serverless构建了一个全新的数据库形态,这种情况下,CPU和内存资源因其池化其使用率将会大幅度提升,云原生数据的成本将会远低于自建和RDS等一体化数据库,云原生技术的价值将会得到充分的体现。Serverless数据库能够使得数据库集群资源随客户业务负载动态弹性扩缩,将客户从复杂的业务资源评估和运维工作中解放出来。下面我尝试从几个维度对PolarDB的Serverless能力进行产品测评。
1096 0
评测|PolarDB MySQL 版 Serverless
|
域名解析 Cloud Native 应用服务中间件
重磅官宣:Nacos2.0发布,性能提升10倍
​Nacos2.0 作为一个跨代版本,彻底解决了 Nacos1.X 的性能问题,将性能提升了 10 倍。
12060 106

热门文章

最新文章