1.熟练掌握JavaSE基础知识,熟悉多线程与并发编程,拥有丰富的系统设计分析能力及面向对象分析和设计能力,熟悉常用的设计模式(代理、单例、工厂、建造者、观察者、策略等)及反射、自定义注解、泛型等。
2.熟练掌握Eclipse/IDER、Svn、Git、Maven、Docker等开发及版本控制工具,熟练掌握Java基础技术Jsp、Servlet、Jdbc,熟练掌握Web应用系统开发,具备的独立开发能力;
3.熟悉网络通讯技术Socket、Netty、Mina、NIO 、WebSocket、Http
4.熟悉JVM参数调优、性能检测工具、生产环境服务器jvm调优配置、压力测试工具JMeter、阿里代码扫描工具
5.熟练使用Tomcat/Jetty服务器,发布部署web项目,熟练使用Nginx+Keepalived实现服务高可用
6.熟练使用Oracle、MySQL、SQLServer等关系型数据库,熟练使用Redis、MongoDb等非关系型数据库及搜索服务框架Elasticsearch和Lucene
7.熟练运用Spring、Mybatis、SpringBoot2.0等开源框架,熟悉Spring的IOC、DI、AOP设计思想;
8.熟悉SOA、分布式、微服务、大型网站架构,熟悉RPC远程调用、Dubbo、Dubbox、SpringCloud等微服务框架;
9.熟悉SpringCloud常用组件、注册中心Eureka、Consul ,负载均衡器Ribbon、客户端调用工具Rest和Feign,分布式配置中心Config和携程阿波罗 ,服务保护Hystrix,网关Zuul Gateway ,Api管理 Swagger ,服务链路Zipkin,消息总线Bus等。
10.熟练使用网络通讯协议,熟练使用json、xml通讯格式,熟悉常见消息中间ActiveMQ、RocketMQ、Kafka 使用;
11.熟悉Restfull API开发规范,熟悉三方授权OAuth协议、JWT协议、对接第三方支付接口(银联、支付宝、微信支付)及微信公众号开发;
12.熟悉分布式协调工具Zookeeper、集群、高可用、高并发解决方案 服务降级、限流、熔断、隔离等,熟悉分布式和微服务常见解决方案(如:分布式任务调度平台、分布式服务追踪与调用链、分布式Session一致性问
项目名称:微服务电商平台-聚合支付平台
开发时间/开发周期:2013.06-至今
使用技术:SpringBoot2.0+SpringCloud2.0+jenkins+docker+k8s+ApiSwagger+Maven
项目描述:构建微服务聚合支付平台,整合第三方支付接口(支付宝、银联支付、微信支付等),封装成接口提供给服务接口使用。
责任描述:
与第三方支付接口平台技术人员对接
聚合支付平台数据库表结构设计
基于设计模式构建聚合支付平台
基于MQ实现分布式事务解决方案
使用xxl-job实现聚合支付对账
常用遇到支付难题问题解决
技术描述:
与第三方支付接口平台技术人员对接
负责支付宝、微信支付、银联支付等支付接口技术人员沟通对接
聚合支付平台数据库表结构设计
负责聚合支付平台数据库表结构设计,payment_channel渠道表、payment_transaction流水表、payment_transaction_log日志表等实现完全可视化界面支付开关控制支付渠道。
基于设计模式构建聚合支付平台
使用策略+工厂设计模式实现支付接口提交html表单元素重构、使用模版方法+工厂设计模式实现共同异步回调代码重构,采用多线程+MQ实现支付回调日志收集
使用xxl-job实现聚合支付对账
使用分布式任务调度平台XXL-JOB实现支付接口产生延迟导致订单状态不同步实现自动化补偿,每天晚上两点钟时间定时触发任务,商户端主动使用支付id调用第三方支付渠道接口查询支付状态是否已经支付过,如果第三方支付渠道接口已经支付过,同步商户端订单状态。
基于MQ实现分布式事务解决方案
在微服务系统中,支付服务调用积分服务接口增加对应积分,该场景存在分布式事务问题,我们采用rabbitMQ实现+补单形式保证最终一致性实现双方数据同步