asyn异步消息
2018-03-22 11:29:46 0 举报
异步消息类图(消息分类处理,分布式锁保证不重复)
作者其他创作
大纲/内容
线程处理,保证每一类消息都是单独的线程处理,不同类型的任务互不干扰,相同类型的的任务串行执行
CfMqMsgBusinessHandler
+dealWorkflow(CfMQMsg msg) //处理流程+isCurrentNode(CfMQMsg cfMQMsg)// 判断是否是当前节点+saveBusinessInfo(CfMQMsg cfMQMsg)//报错业务逻辑信息
因为项目都是集群部署的,保证任务不被重复执行就必须借助于分布式锁。为每个任务分配一个锁,处理逻辑如下:1.获取锁2.处理该类型的所有任务3.释放锁
mq消息处理逻辑
CfOsbBsbshvUploadMsgHandler
-CfBsbshvContractDomain contractDomain //包商二手车处理类
AbstractRiskMsgHandler
包商二手车risk处理类
CfOsbMsgHandlerStrategy
+isValid(CfMQMsg cfMQMsg) //校核合法性+process(CfMQMsg cfMQMsg) //查询征信报告业务处理
查询征信报告的实例处理
osb处理逻辑
CfJobStrategyService
-lockKeyPrefix //锁的前缀-lockActiveTime //持有锁的最大时间-msgType //消息类型-redisClientUtil //redis客户端操作句柄
CfAsynMsgTJHTReportStrategyImpl
+process(CfAsynMsgHandler cfAsynMsgHandler) //查询征信报告业务处理
包商二手车osb逻辑处理-上传处理
工行risk处理类
CfAsynMsgBsbFirstVerfyStrategyImpl
CfRiskBsbshvMsgHandler
-ReconsiderDomain reconsiderDomain
CfRiskMsgHandlerStrategy
-CfRiskBoshMsgHandler cfRiskBoshMsgHandler //上海银行处理策略-CfRiskBsbshvMsgHandler cfRiskBsbshvMsgHandler //包商二手车处理策略-CfRiskICBCMsgHandler cfRiskICBCMsgHandler//工行银行处理策略
时间验证处理
CfRiskBoshMsgHandler
CfAsynMsgHandlerStrategy
-LOCK_KEY_PREFIX=\"creditfront.asyn.msg.lock.\" //锁前缀-MAX_NUM_PER=1000 //批量处理一次处理的最大量
CfAsynMsgTaskRuntimeCheckStrategyImpl
+validate(CfAsynMsgHandler cfAsynMsgHandler)//校验时间的合法性+process(CfAsynMsgHandler cfAsynMsgHandler)//业务处理-空实现
包商二手车osb逻辑处理-下载处理
CfRiskICBCMsgHandler
Runnable
+run()
risk消息处理
处理表cf_asyn_msg_handler中的消息,根据msgType获取表中未处理成功的消息,串行执行每一个消息1.校验该消息的合法性validate2.处理该消息的业务处理process3.处理该消息的流程dealWorkflow
包商初审处理
处理表cf_mq_msg中的消息,根据msgType获取表中未处理成功的消息,串行执行每一个消息1.校验该消息的合法性validate2.处理该消息的业务处理process3.处理该消息的流程dealWorkflow
上银risk处理类
CfMqMsgHandlerStrategy
-LOCK_KEY_PREFIX=\"creditfront.mq.msg.lock.\" //锁前缀-MAX_NUM_PER=1000 //批量处理一次处理的最大量
CfOsbBsbshvDownMsgHandler
-CfBsbshvContractDomain contractDomain //包商二手车处理类-CfBsbshvPbruleDomain bsbshvPbruleDomain//征信报告处理类
其他类.....
0 条评论
下一页