1、java基础扎实
2、熟悉多线程开发
3、熟悉JVM内存结构及内存模型、熟悉jvm参数调优(包括GC调优)
4、对常用的技术框架有较深入的了解及应用(spring、springboot、dubbo、druid、hibernate、mybatis、Apollo、redis、MQ、sentinel),能熟练的根据业务场景,合理使用不同的技术框架组合搭建项目架构(限流、异步解耦、缓存、配置集中化)
5、熟悉Oracle、mysql数据库,熟悉SQL调优、索引调优
6、熟悉Linux常用基本命令,熟悉使用arthas工具来排查问题。
项目名称:扫码支付系统
项目背景:第三方支付(正反扫),日均400万笔订单交易
技术架构:整体采用分布式及微服务架构,按照功能分为应用网关子系统、应用前置子系统、应用路由子系统、交易查询子系统、扫码交易子系统、外部渠道子系统、回调服务处理子系统。。。,内部系统采用rpc调用进行交互(依赖dubbo框架),使用redis来实现热点数据缓存及分布式锁,使用MQ对消息通知进行异步解耦,使用sentinel对应用做限流熔断保护,集成cat及skywalking来进行应用的运行状态监控,使用elk来统一管理业务日志
工作描述:对系统进行性能调优,调研各个框架的版本使用合理性,jvm参数配置优化、代码性能优化、生产故障的问题排查
工作成绩:通过合理调整jvm参数配置,大幅降低GC的频次及耗时,通过对支付主流程进行异步并行改造,大幅降低单笔支付交易耗时,通过对热点数据进行缓存改造,降低了对数据库的访问压力,也适当的降低了交易耗时,对生产出现的OOM故障、数据库交互故障、dubbo访问限制故障的问题分析,找出了代码中的风险点,并通过优化数据库连接池的配置,优化dubbo的配置,减少应用出现问题的风险
项目背景:包含正反扫交易,日均400万笔订单支付交易 项目架构:整体采用分布式及微服务架构,应用网关、分为应用前置子系统、应用路由子系统、交易查询子系统、扫码支付子系统、回调处理子系统、渠道子系统。 工作角色:系统性能优化、框架技术预研、生产故障问题排查
本项目包含商户信息签约、费率维护、结算账号维护的单笔及批量功能,对应的功能操作时权限控制、审核处理。