引言
本文代码已提交至Github(版本号:
4112b12fb3305d3a4b51bc040223b521590986ae
),有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop
阅读本文前,有兴趣的同学可以参考我之前写的聚合支付的文章:
- 《淘东电商项目(52) -聚合支付开篇》
- 《淘东电商项目(53) -银联支付案例源码分析》
- 《淘东电商项目(54) -银联支付案例(同步与异步)》
- 《淘东电商项目(55) -支付系统核心表设计》
- 《淘东电商项目(56) -支付系统分布式事务的解决方案》
- 《淘东电商项目(57) -聚合支付(支付令牌接口)》
- 《淘东电商项目(58) -聚合支付(基于设计模式自动跳转支付接口)》
- 《淘东电商项目(59) -聚合支付(集成银联支付)》
- 《淘东电商项目(60) -聚合支付(集成支付宝)》
- 《淘东电商项目(61) -聚合支付(基于模板方法设计模式管理支付回调)》
- 《淘东电商项目(62) -聚合支付(基于模板方法设计模式管理支付回调-支付宝)》
- 《淘东电商项目(63) -聚合支付(多线程日志收集)》
目前「淘东电商项目」的聚合支付模块,已经完成了银联支付以及支付宝的集成,以及基本流程都走通了。接下来要讲的是对账功能,需要使用到xxl-job任务调度平台,本文讲解xxl-job的集成。
本文目录结构:
l____引言
l____ 1. xxl-job管理平台集成到项目
l____ 2. 客户端测试
l____ 3. 测试
1. xxl-job管理平台集成到项目
之前也写过xxl-job的的博客,童鞋们可以参阅:《分布式系列教程(17) - 分布式任务调度平台XXL-JOB》,集成的详细步骤不再详述,大家可以从github clone下来看https://github.com/ylw-github/taodong-shop(版本号:4112b12fb3305d3a4b51bc040223b521590986ae
),集成后的在如下模块:
2. 客户端测试
①新建taodong-pay-job模块:
②配置applicaton.yml:
server:
port: 8081
###服务注册到eureka地址
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:8100/eureka
logging:
config: classpath:logback.xml
xxl:
job:
executor:
logpath: ./jobhandler
appname: taodong-shop-pay-job
port: 9999
logretentiondays: -1
ip:
admin:
addresses: http://127.0.0.1:9998
accessToken:
spring:
application:
name: taodong-shop-pay-job
③定义jobhandler:
/**
* description: 使用任务调度实现自动化补偿
* create by: YangLinWei
* create time: 2020/5/18 4:38 下午
*/
@JobHandler(value = "payJobHandler")
@Component
@Slf4j
public class PayJobHandler extends IJobHandler {
@Override
public ReturnT<String> execute(String param) throws Exception {
log.info(">>>使用任务调度实现自动化对账");
return SUCCESS;
}
}
3. 测试
启动Eureka、xxljob管理平台、taodong-shop-pay-job服务。
首先登录xxljob管理平台,添加执行器:
然后添加任务(配置每秒执行):
启动任务:
可以看到控制台有打印日志:
本文完!