本人在软件行业工作18+年,主要是基于B/S架构的Java web系统、微服务架构和开发以及各种疑难杂症的解决。熟悉K8S容器部詈及各种问题排查与解决。
本人Java功底扎实,精通JVM及GC性能调优,多线程编程;精通各种Web框架如Spring,SpringCloud,Ibatis/Mybatis,特别是精通Spring源码、SpringCloud源码和熟悉其它开源框架;熟悉各种中间件,如
Redis&caffine,MQ(Rocket,Rabbit).熟悉nacos,apollo,sentinel.熟悉Liunx操作,熟悉各种设计模式、OOP、AOP、DDD,常常灵活应用于实际工作。熟练从无到有搭建微服务架构,实现高可用、高并发、消息、缓存、限流、熔断降级等通用功能。善于从复杂繁锁中找到捷径,从而简化整体项目。善于灵巧的项目总体架构设计,开发出的产品稳定、清晰、简洁、灵活、易扩展。有代码洁癖习惯 。
有良好的学习能力,优秀的分析问题和解决问题能力;较强的表达和沟通能力;具备良好的识别和设计通用框架及模块的能力。
有一种能影响人积极向上的正能量。同时乐于分享,对于工作中需要用到的技术,喜欢归纳总结成文
档,供其他同事学习和提升,并经常Review团队代码,对一些问题及时提供更好的解决方案,简洁项目代码。
数据迁移组件的开发,由于电子交易系统数据量累积,导致SQL失效,查询效率极低,2018年6.18大促数据库宕机。针对这个问题我们设计了数据迁移组件,每晚可迁移3亿条数据,同时订单退换产品时,与订单相关的业务数据可以完整回迁供业务使用。因为主库数据量的减少,索引生效,整体性能大为提升,轻松扛过双十一大促。此组件设计为通用,华为其它部门也直接使用。 独特的分布式任务调度开发,物流开发中与库存协同发货时,库存模块打印面单发货后,由我们物流系统将面单信息推送给相应的快递商,这一步要定期批量处理。以前的做法是采用华为的调度平台进行定期调用接口,但这有个问题,数据量较多时,如果前一个调度的数据还没有处理完成,后一个调度又过来了,容易产生数据库冲突;如果把调度间隔设置太长,效率会太低。根据这种情况我设计了独特的分布式任务调度,并无须引入额外组件或者资源。具体做法是将所有机器编号,任务调度随机器启动,将数据的最后更新时间按机器数取模,集群的每台机器只执行自己的数据,不会再有数据冲突,同时不间断地执行。大大提高了发货单数据的处理和稳定性。 采用的java技术栈:spring,springcloud,redis,rocket mq,mysql,eureka,git,华为的his部署平台。
数据迁移组件的开发,由于电子交易系统数据量累积,导致SQL失效,查询效率极低,2018年6.18大促数据库宕机。针对这个问题我们设计了数据迁移组件,每晚可迁移3亿条数据,同时订单退换产品时,与订单相关的业务数据可以完整回迁供业务使用。因为主库数据量的减少,索引生效,整体性能大为提
数据迁移组件的开发,由于电子交易系统数据量累积,导致SQL失效,查询效率极低,2018年6.18大促数据库宕机。针对这个问题我们设计了数据迁移组件,每晚可迁移3亿条数据,同时订单退换产品时,与订单相关的业务数据可以完整回迁供业务使用。因为主库数据量的减少,索引生效,整体性能大为提