项目一:骑行订单中心项目重构
项目描述:该项目是用户骑行订单处理核心业务,使用java重构该项目。用户扫码后调用创单接口,在接口中判断用户是否有未完成订单和相关骑行权限,调用车辆服务获取车辆状态信息,调用订单中心服务创建一次骑行订单并标记用户状态,通知车辆服务开锁并发送mq给第三方服务完成用户骑行数据更新操作。
个人职责:
1)完成项目架构设计和开发环境搭建,接入logback日志架构和请求链路,实现异步线程中打印主线程链路id;
2)提供mock服务,使用切面方式拦截openFeign请求并根据配置获取mock数据,方便开发调试;
3)完成创单接口功能开发,使用openFeign调用第三方服务接口,并抽取为公共组件打包到私服,提高复用性;
4)使用Redis实现配置数据的缓存,通过rocketMq发送通知第三方服务完成异步动作,保障项目稳定和高可用;
5)开发创单补偿功能,记录核心服务异常场景请求,使用xxlJob定时补偿异常记录,完善核心链路请求。
业绩:
1. 完善项目搭建和日志监控,接入mock服务,保障项目按时完成开发和请求链路的排查,提高开发效率;
2. 将第三方接口调用包装成openFeign请求组件,打包maven私服,提高相同接口调用的复用性,完善开发架构;
3. 保障创单接口核心链路请求逻辑,使用Redis缓存和异步通知等,降低接口请求耗时,提升了用户使用体验;
4. 核心接口请求提供降级措施和失败补偿机制, 避免核心链路请求异常中断,提高服务整体高可用性。
项目二:车辆骑行报价中心平台
项目描述:该项目是为骑行订单服务提供不同场景下骑行的计价模板。对接骑行订单服务,获取不同城市的用户骑行后计费规则;使用Redis缓存计费配置表中数据,保证整体接口的高并发;使用工厂设计模式,针对不同城市、车型的场景实现不同的计费规则;使用arthas定位超时接口和高占用线程;使用Promethus+Grafana监控项目运行,提高项目稳定性。
个人职责:
1)开发web端接口,使用Redis实现配置数据缓存,指定缓存失效策略;
2)对接订单中心服务,提供计费详情查询接口,通过工厂模式实现不同场景的逻辑实现;
3)使用arthas分析项目耗时较长接口,定位耗时原因;
4)接入Promethus,监控项目运行指标,提高项目稳定性;
5)编写接口文档,方便其他服务的接入。
项目业绩:
1. 完成项目整理开发,推动web端联调和项目的压测;
2. 推动订单中心接入报价中心项目,实现订单中心与报价中心功能解耦;
3. 接入Promethus项目监控,替换原有项目监控方式,保证项目的稳定性;
4. 使用Redis实现配置缓存,优化Tomcat配置,项目整体接口QPS达到2000+。