英雄不问出处,富贵当思原由

1 基本信息

2 工作经历

(1)360(2021.07.01-2023.07.11)

岗位:服务端开发工程师

部门:花椒直播技术部

工作内容:

1、负责花椒直播家族业务的服务端需求的研发与迭代,通过运行日志和系统监控等分析系统存 在的问题并提出解决方案,通过优化数据库和代码使得系统中的慢日志响应时长缩短至300ms 左右,提升90%

2、支援公司内部创新项目(龙猫星球、UMI星球等)的服务端研发与迭代工作

3、期间完成的个播等级项目,提高了主播的上麦率和上麦时长,从而带动了语音直播的流水上涨

4、期间完成的才艺点单项目,相较旧项目而言,流水提高了100%左右

5、2023年,公司目标整体业务上云,参与公司用户系统的上云工作,在不停服的情况下,将 接口流量切换至云上

3 专业技能

  • 编程语言:go技术栈、php、java、python
  • 计算机基础:数据结构与算法、计算机网络、操作系统原理等
  • 数据库:mysql优化、redis等
  • 其他技术:Linux、vue、docker、k8s、kafka、Elasticsearch(es)等

4 教育经历

(1)研究生阶段

  • 时间:2018.09-2021.07
  • 学校:华北科技学院
  • 专业:计算机专业(研究方向是:数据挖掘与预测)
  • 荣誉奖项
    • 多次获得一等奖学金
    • 研究生期间,当过大四本科生的辅导员
    • 研一暑假获得《第三届研究生网络与信息安全技术大赛暨京津冀高校研究生网络与信息安全技术大赛》三等奖
  • 小论文
  • 毕业论文:《基于物联网安全监测数据的预测研究》
  • 软著
    • 《时间序列数据预测系统V1.0》,简称:《TSD prediction system》,流水号:2021R11L1661029
    • 《三江源监测数据有效性分析系统V1.0》,流水号:2018R11L1385518
    • 《用户行为检测、评估与示范平台V1.0》,流水号:2018R11L1391731
    • 《安全事故信息系统V1.0》,简称:《SAIS》,流水号:2018R11L1385517

(2)本科阶段

  • 时间:2014.09-2018.07
  • 学校:华北科技学院
  • 专业:网络工程
  • 主修课程:网络工程、计算机网络、操作系统、java程序设计、C语言程序设计、数据库设计等
  • 通过了英语四级 (437分)
  • 大一、大二期间参加了爱心社、体育部等社团
  • 参与过:
    • 参加过华为、思科网路大赛,都进了地区赛
    • 参加过学校组织的培训(网络方向、Java编程语言)

3 项目经验

(1)花椒直播、yohoo、小兔爱聊 | 360

时间:2022.10~2023.07

角色:服务端开发工程师

技术栈:golang(php/java)、redis、mysql、docker、k8s、pepperbus、peppercron

项目职责:
1、负责用户系统和用户系统的开发与维护,深入了解业务需求,针对现有问题进行优化和封装,提高代码质量和系统稳定性
2、负责项目才艺点单项目的方案设计和开发,并对接口进行压测,提供系统的高并发能力。协调开发团队各端开发人员的时间及进度,保证需求能够保质保量按时上线
3、负责个播等级、VIP社群管理、yohoo等级优化等需求的方案设计与开发,保证新功能上线的同时,确保原有功能无影响
4、参与花椒直播用户、消息系统的上云相关工作,确保上云接口在不停服的情况下,接口流量能够平滑切换到华为云上

项目介绍:
花椒直播是一款秀场和语音直播应用。小兔暖聊、Yohoo、龙猫交友等应用作为花椒的马甲包应用,在更垂直的领域独立承担业务流量。截至 2022 年统计数据,花椒累计注册用户量3亿。花椒直播为用户提供多种玩法和体验,例如: 秀场、语音、游戏、VR 数字人、动态空间、PK 玩法、互动 H5。用户可以实时展示才艺、生活,并与观众进行互动。通过弹幕、礼物赠送、点赞等形式与用户建立联系。

(2)花椒直播家族信息管理系统 | 360

时间:2022.01~2022.10

角色:服务端开发工程师

技术栈:php、java、springboot、mysql、redis、k8s、pepperbus、peppercron、docker

项目职责:
1、在花椒直播家族管理系统的基础上,开发马甲包yohoo的家族管理系统,与花椒进行代码和数据隔离,实现yohoo主播的成员管理、主播邀请等特色功能的开发
2、由于数据库上云,系统中的问题得以暴露,其中引发一次P0事故
2.1、引发原因:
(1)某个大家族(成员过千)的经纪人在mysql负载高峰时期导出家族流水数据(导出功能是同步的接口调用,也没有做限流)时接口请求超时(数据量太大),用户失去耐心后疯狂点击导出
(2)由于每次导出请求都会触发几百次sql查询,在那一分钟,导致了MySQL有几万的查询量,最终数据库CPU被打挂了
(3)家族业务是花椒的核心业务,以致其他业务也受牵连,最终导致花椒直播出现了半小时左右的异常
2.2、解决问题的过程:
(1)对外暂时停用导出接口
(2)对云上数据库进行扩容,扩容之后,数据库的CPU开始下降,各系统慢慢恢复正常,但是由于华为云数据库扩容用了将近半小时才成功,所以该P0事故持续了半小时左右
(3)事故发生之后,首先将导出接口改成了异步队列下载,防止因导出功能而引起的mysql负载过大
(4)由于表中数据量较大(大于两千万),慢查询引发蝴蝶效应,对数据库的大表进行了优化,将单次查询时间从3s降到了300ms左右,查询时间降低了90%
2.3、事故复盘与反思:
(1)经与华为云运维人员沟通,得知是因为华为云的mysql主从代理使用的是弱解析,花椒直播有些sql是进行字符串拼接的,有些代码为了语法安全在sql语句的最外层包了一个括号,所以这部分查询被打到主库了,导致主库负载激增,最终挂了
(2)检查并规范化项目代码中的数据库查询代码,防止出现类似的问题
3、将php项目迁移到Java项目
3.1、迁移原因:
(1)服务器同等配置下,php的并发能力比Java差
(2)原php所使用框架(yaf)比较老,Java生态大而全
(3)老项目是采用模板渲染前端页面,一是不好看,二是后端写前端代码效率低
3.2、迁移过程:
(1)先把影响较小的功能迁移到新项目,然后再迁移影响面较大的功能
(2)将相关数据查询功能迁移到java项目,为了保护mysql,每个接口都进行了限流
3.3、迁移结果:
(1)家族人员反映新版家族后台要比旧版更加人性化、响应速度也更快

项目介绍:
家族是花椒直播推出的一项特色功能,一个家族类似一家MCN经纪管理公司。家族长(老板)创建家族后,可以邀请主播成为家族成员。家族主播可以比非家族主播获取更多的曝光机会、更高的收益分成以及更多的奖励政策扶持等。

(3)基于Spring Boot+Mysql+Bootstrap的微服务系统(公司实习项目)

设计与java开发, 2019年06月 - 2019年09月, 北京

  • 根据公司的业务需求,经过需求分析->详细设计->软件开发->测试与调试四个阶段,开发出整套微服务系统
  • 使用Mybatis框架简化程序与数据库的操作,提升了开发效率
  • 本项目的难点之一在于如何将MaxCompute的计算结果当做参数传递给Java中的方法,我的解决方案是用Mysql数 据库作为中间缓存,让Java程序直接读取Mysql数据库中的内容便间接实现了参数传递

(4)基于公有云平台的数据分析以及可视化研究(横向项目)

研究与开发,2019年04月 - 2019年06月,北京

  • 根据公司业务和需求画出算法模型,并通过阿里云的MaxCompute实现对应算法功能并通过DataV进行数据可视化
  • 相对于服务集群而言,该方法效率更高、价格更便宜

(5)三江源监测数据有效性分析系统(课题组项目)

参与开发,2018年11月 - 2019年02月,北京

  • 该系统能将获取的数据进行及时在线甄别和审核,实现在线预警,并保存每次审核记录,能够进行追溯和定位
  • 能够对数据的趋势进行分析、各个站点出现异常数据的几率进行分析
  • 该系统申请了一个软件著作权,本人排名第三

(6)安全事故信息系统(课题组项目)| 软著

这是研究生课题组的一个项目,我对该系统中的部分模块进行了开发,参与了系统的前期设计

  • 利用Bootstrap和Jquery开发前台界面,并将数据存到SQL server中
  • 利用Echart组件将数据通过图表的形式显示到界面
  • java框架用的是Struts,用于编写数据计算的算法和逻辑

5 荣誉奖项

  • 大一、大二获得学校一等奖学金,2015-2016年
  • 大三获得励志奖学金,2017年
  • 硕士期间多次获得一等和二等奖学金,2018-2020年
  • 研一暑假参加《第三届研究生网络与信息安全技术大赛暨京津冀高校研究生网络与信息安全技术大赛》并获得三等奖,2019年
  • 英语四级

6 个人爱好

  • 游泳健身
  • 喜欢的音乐: 李志、许巍、李建、Pink Floyd
  • 看书| 看书主页
  • 看电影(喜欢看各种豆瓣高分电影)| 电影主页
  • 写博客(将一些自己在编程或学习中遇到的错误以及解决错误的方法和方法写成博客,与大家分享)| CSDN | 简书 | 知乎 | DIY BLOG | 豆瓣主页

7 自我评价

  • 学习能力强、抗压能力强、动手能力强;

  • 年轻有活力,积极向上。

8 微信公众号

微信公众号