About Me
Experience
Java Engineer
京东 - - Now
职位: Java Engineer | 时间段: 2022.12-至今 | 工作内容: 营销活动提报系统开发:提报系统主要是给采销、商家、供应商来报名参加京东营销活动,以及管理活动全周期 sku 报名数据等。项目特色:分布式 高并发 微服务。使用Spring Boot 容器,ES,JMQ 消息中间件,Redis,Hive 离线表,mysql 分库分表。业绩:1、根据招商规则完成选品后,通过 jmq 同步 sku到 es ,防止流量过大 es 扛不住,通过 jmq 动态配置限流控制写入 sku 速度。2、活动报名刚开始的时候,防止瞬时并发大规模的流量打到 DB 当中去,查询商品和活动信息设计了多级缓存对大规模并发流量进行处理,包括本地 JVM 缓存,分布式 redis 缓存。3、es 索引设计支持动态创建,索引按活动纬度创建已提升查询写入性能。4、已报名 sku 数据设计按报名人纬度分库分表存储,单个大促活动报名数据接近上亿级别。
Java Engineer
京东 - - Now
职位: Java Engineer | 时间段: 2022.12-至今 | 工作内容: 营销中心价格检验worker系统开发:营销价格校验 worker 系统通过大数据 spark 任务读取 hive 离线表数据,发送到 jmq ,各业务通过消费 jmq 实现业务逻辑。项目特色:大数据量单大促活动数据接近上亿 高并发 sku 消费性能需要满足1小时处理5千万数据。业绩:1、sku 报名数据接近上亿,需要在1-2小时内全量跑一遍数据实现对 sku 的一些业务校验,所以通过 spark 任务快速离线表发送到 jmq。2、sku 报名数据前置在报名报名环节构建到 redis ,过期时间设置到活动结束时间+随机几小时,防止数据在同一个时刻失效。3、需要执行 worker 的活动数据,通过懒加载的形式在应用启动的时候加载数据到缓存。4、通过分析调用链各节点耗时,通过缓存数据、线程池并行读取数据等提升消费性能。5、mq 机器消费不均衡,通过信号量控制单机消费速度实现 mq 消费均衡。