个人介绍
1.JAVA基础扎实,理解IO、多线程、集合等基础,熟悉常用的数据结构和算法。
2、熟练掌握Mysql底层原理,如事务隔离级别,InnoDB存储引擎,覆盖索引等,对于SQL优化有一定的理解。
3、熟悉并发编程底层原理以及阅读过JUC下常用工具类源码,理解线程池原理。
4、了解JVM底层原理以及垃圾回收机制。
5、熟练掌握Redis的核心数据结构的使用场景,理解各种缓存高并发的使用场景,比如缓存雪崩,缓存穿透等。
6、熟练使用Spring、Spring MVC、MyBatis、Spring Boot。
7、熟悉Spring Cloud微服务框架的设计原理,比如服务注册与发现,服务限流、降级、熔断等。
8、熟悉分布式系统的设计和应用,熟悉分布式、缓存、消息等机制,并有相应的开发经验。
9、熟练使用Git、Maven等版本控制工具,了解Linux常用的命令。
工作经历
2022-05-06 -至今智水安澜java开发
1、负责项目开发 ,解决项目遇到的并发问题; 2、利用 reentrantlock+自旋锁机制解决 refreshtoken 重复刷新问题; 3、使用 Redis 的 Hash 结构存储系统参数 ,水费订单充值需要拉取支付凭证 (存在过期) ,使用 List 结构存储 支付; 凭证 ,使用左近左出的策略防止拉去的支付凭证都是过期凭证 ,使用 Set 结构来防止缓存中存放重复订单; 4、为了提高项目的并发量 ,将项目中主干业务(渠道推单、商户回调)和核心业务(记账和失败重试)拆分成异步, 主干业务中只处理三方请求和核心业务需要的消费型数据入库或缓存 ,将核心业务拆分成异步批量处理; 5、解决项目中遇到的锁表死锁等问题 ,解决因为网络抖动造成的线程池任务堆积连锁反应产生的 OOM;由于 每月都会有数百万的数据 ,导致数据库性能极具下降 ,每个月都会进行数据归档操作。
教育经历
2020-06-09 - 西南科技大学计算机科学与技术本科
技能
项目描述:该系统是一个综合性的B2C 平台,包括前台商城系统以及后台管理系统,其中包括前台商城系统以 及后台管理系统,基于 SpringBoot+ SpringCloudAlibaba + MyBatis-Plus 实现,采用 Docker 容器化部 署。后台管理系统包括:系统管理、商品系统、优惠营销、库存系统、订单系统、用户系统、内容管理等七大 模块。前台商城系统包括:用户登录、注册、商品详情、购物车、订单流程等模块。 涉及技术:Java、SpringBoot、MyBatisPlus、Redis、MySQL、SpringCloud、RabbitMQ 等。 1、注册登录模块:使用阿里云短信服务+redis 解决验证码接口防刷,使用springseesion 解决 session 跨域共享问题; 2、购物车模块:设计购物车数据模型,将购物车数据存在redis 中,对临时用户与登录用户 购物商品项进行保存; 3、采用 RabbitMq 实现下订单异步锁库存,并且使用延迟队列实现“本地消息表”的分布式事务; 4、采用 SpringCloud-Alibaba 提供的 Sentinel 进行服务的限流和熔断; 5、采用 SpringCloud 的 Nacos 进行服务注册发现以及配置文件信息统一管理
项目描述:该系统是一个综合性的B2C 平台,包括前台商城系统以及后台管理系统,其中包括前台商城系统以 及后台管理系统,基于 SpringBoot+ SpringCloudAlibaba + MyBatis-Plus 实现,采用 Docker 容器化部 署。后台管理系统包括:系统管理、商品系统、优惠营销、库存系统、订单系统、用户系统、内容管理等七大 模块。前台商城系统包括:用户登录、注册、商品详情、购物车、订单流程等模块。 涉及技术:Java、SpringBoot、MyBatisPlus、Redis、MySQL、SpringCloud、RabbitMQ 等。 1、注册登录模块:使用阿里云短信服务+redis 解决验证码接口防刷,使用springseesion 解决 session 跨域共享问题; 2、购物车模块:设计购物车数据模型,将购物车数据存在redis 中,对临时用户与登录用户 购物商品项进行保存; 3、采用 RabbitMq 实现下订单异步锁库存,并且使用延迟队列实现“本地消息表”的分布式事务; 4、采用 SpringCloud-Alibaba 提供的 Sentinel 进行服务的限流和熔断; 5、采用 SpringCloud 的 Nacos 进行服务注册发现以及配置文件信息统一管理
项目描述:由于公司业务扩展 ,需要对接水费充值运营商 ,于是开发一套水费充值系统来扩展公司业务。该系 统由推单系统和配单系统两个项目组和使用 , 同时给三方渠道商提供对接接口。 由于充话费业务的特殊性 , 月初月末都会 有较大单量 ,最高 Tps500 ,峰值 Qps1000 ,其中推单项目用来对接水费渠道商 ,配单项目对 接运营商。 涉及技术: SpringBoot + MyBatis-Plus + Redis + Nginx + RocketMq + OkHttp + MySql 责任描述: 1、负责项目开发 ,解决项目遇到的并发问题; 2、利用 reentrantlock+自旋锁机制解决 refreshtoken 重复刷新问题; 3、使用 Redis 的 Hash 结构存储系统参数 ,水费订单充值需要拉取支付凭证 (存在过期) ,使用 List 结构存储 支付; 凭证 ,使用左近左出的策略防止拉去的支付凭证都是过期凭证 ,使用 Set 结构来防止缓存中存放重复订单; 4、为了提高项目的并发量 ,将项目中主干业务(渠道推单、商户回调)和核心业务(记账和失败重试)拆分成异步, 主干业务中只处理三方请求和核心业务需要的消费型数据入库或缓存 ,将核心业务拆分成异步批量处理; 5、解决项目中遇到的锁表死锁等问题 ,解决因为网络抖动造成的线程池任务堆积连锁反应产生的 OOM;由于 每月都会有数百万的数据 ,导致数据库性能极具下降 ,每个月都会进行数据归档操作。