..
个人简历
教育经历
中南大学 计算机科学与技术 本科 2014年09月 - 2018年06月
工作经历
-
美团
2020年07月 - 至今
- 主导部分美团配置中心系统架构演进,保障系统稳定性 & 可用性
- 美团 API Gateway 功能开发
-
字节跳动
2019年08月 - 2020年07月
- 参与 IM 系统功能研发,进行技术调研,如大群优化等
- 对接非智能机设备接入字节跳动内部系统,包括搭建自研长连接系统
-
科大讯飞
2018年07月 - 2019年07月
- 讯飞听见网站功能研发
项目经历
美团配置中心
该项目为美团内部配置管理平台,是一个面向分布式系统的配置中心,采用中心化数据管理,通过客户端/服务器架构实现配置的统一管理和实时推送。
系统架构为异地多活;核心模块包括:配置推送模块,数据一致性保障模块,元数据管理模块。业务配置存储在 DB,Redis,ZK(后续不再使用)等不同介质中;不同数据中心 & 不同存储介质通过一致性保障模块实现数据同步。客户端通过长轮询与服务端交互,实现最新变更及时推送。
个人主要工作有:
- 主导配置推送模块架构演进:该模块作为系统核心模块,存在水平扩展不足,业务流量隔离性差,可维护性不足等痛点。个人主导设计开发该模块多集群能力,通过对数据分片,客户端流量动态路由,集群负载均衡等功能实现,大大提高了稳定性与可用性
- 主导一致性保障模块功能演进:该模块前期不支持水平扩展,并且数据同步能力较弱,同步延迟不稳定。通过优化同步数据分区策略,提高线性扩展能力;优化数据同步模型,提高不同存储介质 & 不同数据中心间的数据同步能力(单机吞吐量 20 倍提升,同步延迟 TP999 < 500ms)
- 搭建服务注册发现体系:由于配置中心在所有 PaaS 组件中处于比较低的层次,不能强依赖美团内部注册中心。通过自研健康检测 + 弱依赖美团注册中心的方式,实现系统内部服务注册发现体系
海外版 IM 社交软件
该项目是一款面向海外市场的 IM 社交软件,主要提供即时通讯功能;面向的终端设备包括智能机与非智能机。
项目的核心功能为消息分发:在保证消息及时性的前提下还需要保证顺序性,可靠性;同时,需要对于消息扩散比较严重的场景(如超大群,活跃群)进行性能优化,确保消息不会堆积。客户端与服务端通过长连接通信,其中智能机设备基于 Websocket 实现,非智能机设备使用基于 TCP 的自研组件。消息分发通过 Kafka 流转,消息持久化在分布式 KV 组件中,用户间关系存储在图数据库。
个人在该项目中的主要工作有:
- 参与超大群/活跃群性能优化调研,设计符合业务需求的技术方案
- 开发用户账号体系,参考 OAuth2.0 开发用户鉴权系统
- 设计/开发非智能机设备基于 TCP 长连接的消息推送服务:维护非智能机设备在线状态及消息及时推送
- 开发单聊/群聊中消息发送与推送功能;设计 IM 系统消息推送及拉取策略
- 开发 I18n(国际化)功能
该项目的部分相关功能介绍:IM 系统设计与实现
技能及其他
技能
- 熟悉分布式系统设计理念,了解部分经典分布式系统论文:GFS, Dynamo, Haystack, Raft, MapReduce, Dapper 等,部分学习总结参见:System Design
- 掌握基本的数据结构与算法,熟悉 Java 编程,了解 Golang
- 熟悉一些常用组件:Kafka, Redis
语言
英语:CET-6
联系方式
- 邮箱:kkzhang1029@gmail.com