惠民支付是一个相似于收钱吧、窝窝收款的第四方聚合支付平台;提供线上、线下两种渠道的支付方式;主要做用是将“碎片化”的支付渠道聚合起来,方便使用;主要的客户群体是中小微商户。前端
项目的功能模块主要包括:官网&开放平台、商户平台、运营平台。redis
我主要负责的内容属于商户平台模块,主要是商户平台首页部分的商户注册、登陆、基本信息查看功能;帐户管理部分的商户资质认证、信息查看功能;支付管理部分的应用建立、渠道参数配置、交易总览和生成二维码功能。spring
微服务技术栈:全部微服务基于Spring Boot、Spring Cloud Alibaba构建;服务端基于Spring Boot构建,采用Spring Cloud Alibaba微服务架构。数据库
控制层:Spring MVC、Swagger后端
业务层:事务控制-Spring、数据缓存-Spring Data Redis缓存
持久层:MySql数据库、MyBatis-Plus持久层框架、数据库链接池com.alibaba.druid(采用druid-spring-boot-starter)架构
了解过一些ShardingJDBC分库分表技术框架
使用ZXing一个开源项目完成二维码的生成,ZXing是用Java编写的多格式的1D / 2D条码图像处理库,使用ZXing能够生成、识别QR Code(二维码)。前后端分离
渠道参数查询频繁,每一次支付都会查询渠道参数,为提供查询性能,将渠道参数缓存到redis中:ide
一、保存渠道参数添加缓存
保存渠道参数成功,同时将渠道参数保存在Redis中。
二、查询渠道参数缓存
查询渠道参数,先从Redis查询,若是Redis存在则返回渠道参数,不然从数据库查询同时将查询到的渠道参数存储 在Redis中。
项目记录日志采用log4j2。
log4j2是log4j 1.x 的升级版,经过与logback对比分析,log4j2的性能更好,项目组采用log4j2。