李国宝
个人信息
- 手 机:152****7471 邮 箱:codelover@qq.com
- 城 市:上海
工作经历
推文科技 高级开发工程师 2018.05 - 至今
- 作为后端研发 Owner 负责 BabelNovel.com 站点 REST API 服务日常开发和项目迭代,完整支撑 BabelNovel 产品从 0 到百万用户的演进
- 日常兼职运维、DBA 以及 CI/CD,管理公司北美、东南亚两地 k8s 集群
BabelNovel 书籍核心接口数据视图化
- 基于提升接口性能推进的项目,总体思路是尽可能数据直出,性能敏感的场景尽可能减少 数据库 IO
- 使用 Alibaba Canal 中间件监听 MySQL 数据库变更投递到 Kafka,使用消费者服务构建视图数据,实现无入侵业务代码方便快捷构建视图数据
- 模型数据视图直接存储到 MongoDB,大部分情况下接口数据都可以做到 MongoDB 一次查询数据直出,避免 MySQL 数据库多表多次查询
BabelNovel 金币充值消费系统
- 为用户提供充值金币服务,同时改造原有金币系统区分免费、付费来源方便结算
- 对接推文支付网关搭建会员积分充值消费系统,基于“双委托记账”实现每一份积分可回溯
- 基于数据库 MQ 消息构建用户消费记录 Mongodb 视图,使用“一致性哈希算法”分表存储,为用户提供历史金币充值消费记录
基于用户行为日志计算阅读时长
- 搭建 Web API 接收 App 端压缩上传的文本日志,日志解压统一格式后投递到 Kafka,实现了多地集群部署
- 使用 Java Flink 框架实现有状态流式计算,基于用户书籍阅读事件、屏幕点击事件、翻页事件等等计算阅读时长,计算结果通过异步 HTTP 回传到 Babelnovel 主站
推文 OAuth2.0 用户统一账号体系
- 基于 Hydra OAuth Server 实现用户账号体系,提供标准 OAuth 2.0 授权登录给其他系统
- 同时接入 Google、Facebook 等支持用户使用第三方授权登录
其他项目
- 书评站爬虫:使用 Python Scrapy 搭建爬虫系统,基于 jdax 反编译 + 类 Xposed 框架实现 安卓端 APP 内部数据抓取,实现了十几家网站、App 数据抓取
- 评论系统改造:魔改 remark42 golang 开源平台系统承载 BabelNovel 站点评论数据
ruff.io 南潮科技 Java 工程师 2017.06 - 2018.05
参与南潮物联网 SaaS 平台日常研发和维护,负责部分 SaaS k8s 集群运维工作
PI-DataProvider 项目:直接对接原始物联网设备时序数据,作为数据计算源源的抽象服务,实现多平台 TSDB 数据统一接入;为上层调用者提供多指标动态组合的聚合计算,满足计算设备停机率、产线生产速度等等业务需求
- ELK 错误日志报警系统:自建 ElasticSearch 集群,使用 Logstash 采集集群节点日志数据,编写日志格式化规则结构化数据输出到 ES 中,最终使用 kibana-alerting 实现邮件报警
携程旅行网 软件工程师 2016.06 - 2017.07
- 邮轮邮件推送项目重构:使用携程 SOA 框架重构订单邮件服务,基于定时任务平台完成订单邮件自动推送,不同需求邮件使用工厂模式实现。
- 邮轮用户自动分团模型改造:基于订单旅客人数实现特定数量自动分团,支持订单关联依赖后分团亲和性
- 订单旅客材料分类:提供 Web API 接受客户端上传资料,在网页端为操作者提供拖拽分类功能,分类材料通过异步同步到签证平台
携程旅行网 研发实习生 2015.05 - 2016.06
- 邮轮订单系统日常维护开发
个人项目
地图搜租房 - 网页+小程序+爬虫+后端 API - 独立开发 - 2017- 至今
- 使用爬虫采集多平台租房数据,统一在网页端实现地图价格标记,提供上班路线规划等
- 相关技术:dotnet Core、MySQL、Mongodb、Python flask、rabbitMQ、alibaba Canal
- 平稳运行超过 4 年,至今采集了上千万的房源数据,日访问量最高到 5K
- 在线地址:https://house-map.cn 源码地址:https://github.com/liguobao/58HouseSearch
教育经历
- 四川师范大学 2012.9~2016.07 计算机科学与技术-本科
自我评价
- 全干工程师,既是“要什么自行车”践行者又不间断“代码强迫症”发作
- 日常 C#、Java、Python、Node.js 都在写,PHP、Golang、Ruby 以前写过,习惯于快速切换到不同语言框架上搬砖
- 前端框架 Vue.js 和 React 没有不敢抄的代码,CSS 臣妾真不会
- Mysql/Mongodb/Redis/LevelDB/TiDB/PG 从安装到“跑路”都搞过
- 容器技术追随者,半个 RESTful 的践行者,半个 GraphQL 观望者