一种联机交易处理平台及其交易处理方法

文档序号:6397810阅读:1445来源:国知局
专利名称:一种联机交易处理平台及其交易处理方法
技术领域
本发明涉及电子商务技术领域,尤其涉及一种联机交易处理平台及其交易处理方法。
背景技术
随着第三方支付行业的飞速发展,越来越多的终端用户感受到了便捷支付给人们带来的变化。随之产生的联机交易处理平台帮助第三方支付行业实现快捷、安全的支付,满足了第三方支付行业发展的需求。传统的联机交易处理平台在业务处理时,接收前端设备(即交易发起方)发来的交易请求,并进行业务逻辑处理,然后按照约定的方式,将处理结果应答给前端设备。在传统的系统架构下,联机交易处理平台需要写大量的代码来满足功能需求,前端设备(即交易发起方)发来的交易请求进入到联机交易处理平台后,联机交易处理平台的一个进程/多个进程就为该交易服务或者等待为该交易服务,而不能中断,直到交易处理完毕后返回。联机交易处理平台在处理该交易的过程中,不接收其他交易请求。在实现本发明的过程中,发明人发现现有技术至少存在以下问题:随着第三方支付的交易量越来越多,联机交易处理平台的交易压力骤然加大,而传统的联机交易处理平台一段时间仅能处理一个交易,导致传统的联机交易处理平台资源浪费严重,交易的处理效率较低。

发明内容
本发明实施例提供一种联机交易处理平台及其交易处理方法,用于实现减少联机交易平台的资源的浪费,提高交易的处理效率。第一方面,本发明实施例提供一种联机交易处理平台,所述联机交易处理平台包括:至少一个通讯节点、路由选择与交易流程模块和数据库;所述通讯节点中包括通讯模块和报文转换模块;所述通讯模块和所述报文转换模块、以及所述报文转换模块和所述路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯;所述通讯模块,用于接收客户端发送的交易请求报文;并向所述报文转换模块转发所述交易请求报文;所述报文转换模块,用于将所述通讯模块转发的所述交易请求报文转换为内部统一的报文格式;并向所述路由选择与交易流程模块发送转换格式后的所述交易请求报文;所述路由选择与交易流程模块,用于根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理。可选地,在上述第一方面的第一种实现方式中,所述路由选择与交易流程模块,还用于根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的所述报文转换模块发送所述响应报文;同时还用于在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息;
所述报文转换模块,还用于将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文;所述通讯模块,还用于向所述客户端返回转换格式后的所述响应报文。可选地,在上述第一方面的第二种实现方式中,所述报文转换模块,具体用于调用对应的报文解析插件函数,将所述交易请求报文转换为内部统一的报文格式;并向所述路由选择与交易流程模块发送转换格式后的所述交易请求报文;所述报文转换模块,还具体用于调用对应的报文组报插件函数,将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文。可选地,在上述第一方面的第三种实现方式中,所述路由选择与交易流程模块在数据库中记录交易处理过程中的状态信息中包括交易的处理结果,且所述路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作。可选地,在上述第一方面的第四种实现方式中,所述路由选择与交易流程模块,还用于在根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统之前,确定所述交易请求报文中的银行卡的交易未达到交易阈值。可选地,在上述第一方面的第五种实现方式中,所述联机交易处理平台还包括超时处理模块;所述路由选择与交易流程模块,还用于在所述数据库中建立交易记录表,所述交易记录表中记录所有未完成交易;所述超时处理模块,用于定时扫描所述交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向所述路由选择与交易流程模块发送所述超时响应报文,以供所述路由选择与交易流程模块通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回所述超时响应报文。可选地,在上述第一方面的第六种实现方式中,所述联机交易处理平台还包括冲正模块;所述冲正模块,用于根据所述数据库中需求冲正的总交易的数量,动态地发起冲正交易。可选地,在上述第一方面的第七种实现方式中,所述联机交易处理平台还包括事件处理模块;所述路由选择与交易流程模块,还用于在接收的消息队列中的报文数量超出数量阈值时,向所述事件处理模块发送所述消息队列中超出所述数量阈值之后的交易请求报文;所述事件处理模块,用于接收所述路由选择与交易流程模块发送的、所述消息队列中超出所述数量阈值之后的所述交易请求报文;通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回携带“系统忙“的响应报文。可选地,在上述第一方面的第八种实现方式中,所述报文转换模块,还用于在转换报文过程中发生错误时,向所述事件处理模块发送转换错误的报文的客户端的参数消息;所述事件处理模块,还用于接收所述报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的所述报文转换模块和通讯模块,向对应的所述客户端返回携带“交易异常“的响应报文。可选地,在上述第一方面的第九种实现方式中,所述通讯模块,还用于在与所述外联系统通讯链路发生变化时,向所述事件处理模块发送通讯链路变化的事件消息;所述事件处理模块,还用于向实时监控处理设备转发所述通讯链路变化的事件消息,以供所述实时监控处理设备展示接收的所述通讯链路变化的事件消息。可选地,在上述第一方面的第十种实现方式中,所述报文转换模块,还用于在对报文转换之后,复制所述格式转换后的报文,并向所述实时监控处理设备发送复制的所述格式转换后的报文,以供所述实时监控处理设备展示接收的所述格式转换后的报文。第二方面,本发明实施例还提供一种基于联机交易处理平台的交易处理方法,所述联机交易处理平台如上任一所述的联机交易处理平台;所述方法包括:通讯模块接收客户端发送的交易请求报文;并向报文转换模块转发所述交易请求报文;所述报文转换模块将所述交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块发送转换格式后的所述交易请求报文;所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理其中所述通讯模块和所述报文转换模块、以及所述报文转换模块和所述路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯。可选地,在上述第二方面的第一种实现方式中,所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理之后,所述方法还包括:所述路由选择与交易流程模块根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的所述报文转换模块发送所述响应报文;同时还在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息;所述报文转换模块将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文。可选地,在上述第二方面的第二种实现方式中,所述报文转换模块将所述交易请求报文转换为内部统一的报文格式,包括:所述报文转换模块调用对应的报文解析插件函数,将所述交易请求报文转换为内部统一的报文格式;所述报文转换模块将所述响应报文转换为对应的所述客户端要求的报文格式,包括:所述报文转换模块调用对应的报文组报插件函数,将所述响应报文转换为对应的所述客户端要求的报文格式。可选地,在上述第二方面的第三种实现方式中,所述路由选择与交易流程模块在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息中包括交易的处理结果,且所述路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作。可选地,在上述第二方面的第四种实现方式中,所述路由选择与交易流程模块在接收到所述报文转换模块发送的转换格式后的所述交易请求报文之后,所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统之前,还包括:
所述路由选择与交易流程模块确定所述交易请求报文中的银行卡的交易未达到交易阈值。可选地,在上述第二方面的第五种实现方式中,所述方法还包括:所述路由选择与交易流程模块在所述数据库中建立交易记录表,所述交易记录表中记录所有未完成交易;所述超时处理模块定时扫描所述交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向所述路由选择与交易流程模块发送所述超时响应报文;所述路由选择与交易流程模块通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回所述超时响应报文。可选地,在上述第二方面的第六种实现方式中,所述方法还包括:所述冲正模块根据所述数据库中需求冲正的总交易的数量,动态地发起冲正交易。可选地,在上述第二方面的第七种实现方式中,所述方法还包括:所述路由选择与交易流程模块在接收的消息队列中的报文数量超出数量阈值时,向所述事件处理模块发送所述消息队列中超出所述数量阈值之后的交易请求报文;所述事件处理模块接收所述路由选择与交易流程模块发送的、所述消息队列中超出所述数量阈值之后的所述交易请求报文;并通过对应的所述报文转换模块和所述通讯模块,向发起所述交易请求报文的所述客户端返回携带“系统忙“的响应报文。可选地,在上述第二方面的第八种实现方式中,所述方法还包括:所述报文转换模块在转换报文过程中发生错误时,向所述事件处理模块发送转换错误的报文的客户端的参数消息;所述事件处理模块接收所述报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的所述报文转换模块和通讯模块,向对应的所述客户端返回携带“交易异常“的响应报文。可选地,在上述第二方面的第九种实现方式中,所述方法还包括:所述通讯模块在与所述外联系统通讯链路发生变化时,向所述事件处理模块发送通讯链路变化的事件消息;所述事件处理模块向实时监控处理设备转发所述通讯链路变化的事件消息,以供所述实时监控处理设备展示接收的所述通讯链路变化的事件消息。可选地,在上述第二方面的第十种实现方式中,所述方法还包括:所述报文转换模块在对报文转换之后,复制所述格式转换后的报文,并向所述实时监控处理设备发送复制的所述格式转换后的报文,以供所述实时监控处理设备展示接收的所述格式转换后的报文。本发明实施例的联机交易处理平台及其交易处理方法,通过设置至少一个通讯节点,各通讯节点可以与外联系统或者客户端进行通信连接,能够有效地增强了联机交易处理平台的扩展性,降低了联机交易处理平台与其他外联系统的耦合复杂度,为联机交易处理平台的灵活扩展提供了很好的基础。且本发明实施例中的技术方案中,通讯节点中的通讯模块、报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯,这样,在交易处理过程中,每个模块处理完一个交易,即可开始处理第二个交易,而不用整个联机交易处理平台都在处理或者等待处理透明同一个交易,从而能够有效地增强联机交易平台的资源利用率,且提高交易的处理效率,满足高并发量的交易的需求。进一步可选地,本发明实施例中,报文转换模块,具体用于调用对应的报文解析插件函数,对交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块发送转换格式后的交易请求报文;报文转换模块,还具体用于调用对应的报文组报插件函数,将响应报文转换为对应的客户端要求的报文格式;并向讯模块发送转换格式后的响应报文。本发明实施例中,在通讯节点中的报文转换模块中,可以采用插件函数来实现其功能,而不像现有技术中,联机交易处理平台需要写大量的代码来满足功能需求,因此与现有技术相t匕,本发明实施例中的该技术方案,能够有效地节省人力成本,且通过插件函数实现其功能,还能有效地提闻交易的处理效率。进一步可选地,本发明实施例中的路由选择与交易流程模块在数据库中记录交易处理过程中的状态信息中包括交易的处理结果,从而有效地保证了交易的完整性,且路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作,从而能够有效地保证了交易的一致性。进一步可选地,本发明实施例中的路由选择与交易流程模块,还用于在根据转换格式后交易请求报文中的参数信息路由选择外联系统之前,确定交易请求报文中的银行卡的交易未达到交易阈值,能够有效地对交易的风险进行控制,提高交易处理的安全性。进一步可选地,本发明实施例中的路由选择与交易流程模块,还用于在数据库中建立交易记录表,交易记录表中记录所有未完成交易;超时处理模块,用于定时扫描交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向路由选择与交易流程模块发送所述超时响应报文,以供路由选择与交易流程模块通过对应的报文转换模块和通讯模块,向发起交易请求报文的客户端返回超时响应报文。采用上述技术方案,能够有效地对联机交易处理平台中的未完成交易进行有效地超时控制和后续处理,避免了联机交易处理平台中长期存在未完成交易的缺陷,能够有效保证交易处理的效率。进一步可选地,本发明实施例中的联机交易处理平台中的冲正模块用于根据需求冲正的总交易的数量,动态地发起冲正交易,能够有效地保证联机交易系统的稳定运行,避免大规模的冲正浪涌。减少系统压力。进一步可选地,本发明实施例中的联机交易处理平台中报文转换模块,还用于在转换报文过程中发生错误时,向事件处理模块发送转换错误的报文的客户端的参数消息;事件处理模块,还用于接收报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的报文转换模块和通讯模块,向对应的客户端返回携带“交易异常“的响应报文,能够有效地提高联机交易处理平台的容错功能。进一步可选地,本发明实施例中的联机交易处理平台中,通讯模块还用于在与外联系统通讯链路发生变化时,向事件处理模块发送通讯链路变化的事件消息;事件处理模块,还用于向实时监控处理模块转发通讯链路变化的事件消息;实时监控处理模块,用于展示接收的通讯链路变化的事件消息。采用上述技术方案,不仅能够有效地提高联机交易处理平台的容错功能。而且还能通过实时监控处理模块展示事件信息,便于对联机交易处理平台进行实时监控,更加一步地提高了系统的容错功能。进一步可选地,本发明实施例中的联机交易处理平台中,报文转换模块,还用于在对报文转换之后,复制格式转换后的报文,并向实时监控处理模块发送复制的格式转换后的报文;实时监控处理模块,用于展示接收的格式转换后的报文。采用上述技术方案,将交易报文采用“复制分发”的方式转发给实时监控处理模块,不会影响到联机交易的正常处理。且将转换后的内部报文通过实时监控处理模块进行展示,保证了数据报文统一,且也便于实时监控报文。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。


附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1为本发明实施例一提供的联机交易处理平台的结构图。图2为本发明实施例二提供的联机交易处理平台的结构图。图3为本发明实施例三提供的联机交易处理平台的硬件结构图。图4为本发明实施例提供的联机交易处理平台的交易处理示意图。图5为本发明实施例四提供的基于联机交易处理平台的交易处理方法的流程图;图6为本发明实施例五提供的基于联机交易处理平台的交易处理方法的流程图。
具体实施例方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。实施例一图1为本发明实施例一提供的联机交易处理平台的结构图。如图1所示,本实施例的联机交易处理平台具体包括:至少一个通讯节点、路由选择与交易流程模块10 ;每个通讯节点中包括通讯模块12和报文转换模块13 ;通讯模块12和报文转换模块13、报文转换模块13和路由选择与交易流程模块10相互之间采用操作系统消息队列(OperationSystem Message Queue ;0S MQ)的方式进行异步通讯;0SMQ的异步通讯方式中,各个模块在处理完前一个交易的时候,即可可以开始对后一个交易的处理,不用等待联机交易平台中的所有模块对前一个交易处理完毕。其中通讯模块12用于接收客户端发送的交易请求报文;并向报文转换模块转发交易请求报文。需要说明的是,本实施例中的交易请求报文可以为请求缴纳水费、电费、有线电视费、手机费等公共事业费的请求报文,还可以为其他通过购物网站购物的请求报文。例如该请求报文中可以包括付款的银行卡的信息(如账户、密码等等)、用户的姓名或者还包括用户的住址、请求报文缴费的类别(如水费、电费、手机费等等)。
报文转换模块13用于对通讯模块12转发的交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块10发送转换格式后的交易请求报文;路由选择与交易流程模块10用于接收报文转换模块13发送的转换格式后的交易请求报文,并根据转换格式后的交易请求报文中的参数信息路由选择外联系统,并与外联系统之间进行业务逻辑的交易处理。需要说明的是,本实施例的外联系统可以为各个银行预先为联机交易处理平台配置相对接的银行网点,各个运营商的营帐系统、各个运营商的互动式语音应答(Interactive Voice Response ;IVR)系统,以及各个公共事业公司的对应的收费系统及营帐系统等等。路由选择与交易流程模块10可以预先知道各个外联系统,当路由选择与交易流程模块10确定交易请求报文对应的交易类别时,如缴纳电费,可以自动路由到对应的外联系统为电业公司预先设置的收费系统。同理,当路由选择与交易流程模块10确定交易请求报文对应的交易类别为缴纳手机费时,路由选择与交易流程模块10可以自动路由到该手机账户对应的运营商的扣费系统,以及该运营商的营帐系统,并可以确定什么时候与扣费系统交互实现扣款,什么时候与营帐系统交互,实现为用户充值,详细可以参考相关现有技术,在此不再赘述。本实施例的联机交易处理平台,通过设置至少一个通讯节点,各通讯节点可以与外联系统或者客户端进行通信连接,能够有效地增强了联机交易处理平台的扩展性,降低了联机交易处理平台与其他外联系统的耦合复杂度,为联机交易处理平台的灵活扩展提供了很好的基础。且本实施例中的技术方案中,通讯节点中的通讯模块、报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯,这样,在交易处理过程中,每个模块处理完一个交易,即可开始处理第二个交易,而不用整个联机交易处理平台都在处理或者等待处理透明同一个交易,从而能够有效地增强联机交易平台的资源利用率,且提高交易的处理效率,满足高并发量的交易的需求。实施例二图2为本发明实施例二提供的联机交易处理平台的结构图。本实施例的连接交易处理平台在上述图1所示实施例的基础上,进一步更加详细地本发明实施例的技术方案。如图2所示,本实施例的联机交易处理平台中,还包括有数据库11。该数据库11供路由选择与交易流程模块10在交易处理的过程中,在数据库11中记录交易处理过程中的状态信息。路由选择与交易流程模块10还用于根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的报文转换模块13发送响应报文。报文转换模块13还用于接收路由选择与交易流程模块10发送的响应报文。将响应报文转换为对应的客户端要求的报文格式;并向通讯模块12发送转换格式后的响应报文;通讯模块12还用于接收报文转换模块13发送的转换格式后的响应报文,并向客户端返回转换格式后的响应报文。通过采用上述方案,联机交易处理平台还能够在完成交易处理之后,向客户端返回响应报文,供客户端的用户获知交易处理的结果。另外路由选择与交易流程模块10通过在交易处理的过程中,在数据库11中记录交易处理过程中的状态信息,当在交易出现问题的时候,根据数据库11中记录的交易的状态信息,及时查找问题所在。可选地,本实施例的联机交易处理平台中的报文转换模块13具体用于调用对应的报文解析插件函数,对交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块10发送转换格式后的交易请求报文。报文转换模块13还具体用于调用对应的报文组报插件函数,将响应报文转换为对应的客户端要求的报文格式;并向通讯模块12发送转换格式后的响应报文。该技术方案中,报文转换模块13可以分为具体的基础模块和插件化函数两部分,其中插件化函数包括报文解析插件函数和报文组报插件函数。由于提供了插件化函数,可以避免现有技术中,增加新功能时,需要开发人员编出更多的代码,仅在使用时调用插件函数即可。其中的基础模块具体可以为包括邮箱服务子模块、客户应用(Application ;API)调用子模块、数据转发子模块。邮箱服务子模块主要为交易报文提供了一种接收机制,快速判断要从哪里接收消息,并且也知道消息的大小和标识;客户API调用模块就是根据预先配置选择合适的插件进行执行,具体地,在报文转换模块13中记录有每一个可连接的外联系统要求的报文的格式;例如当确定某交易报文为要发向A银行,以请求扣款时,此时需要调用预先配置的将联机交易处理平台中的统一格式的报文转换为该A银行要求的格式的对应插件函数;数据转发子模块将转化处理后的交易报文转发到其他模块如通讯模块12或者路由选择与交易流程模块10。在该技术方案中,在通讯节点中的报文转换模块中,可以采用插件函数来实现其功能,而不像现有技术中,联机交易处理平台需要写大量的代码来满足功能需求,因此与现有技术相比,本实施例中采用该技术方案,能够有效地节省人力成本,且通过插件函数实现其功能,还能有效地提闻交易的处理效率。其中通讯模块12和报文转换模块13构成的通讯节点是外联系统与联机交易处理平台中的路由选择与交易流程模块连接的桥梁。每一个外联系统可以通过一个或者多个通讯节点与联机交易处理平台进行交互,若需要多个通讯节点与一个外联系统进行交互,那么与一个外联系统进行交互的多个通讯节点称为一个通讯节点组。其中一个通讯节点组下的交易具有相同的通讯方式、相同的报文协议、相同的安全机制。可选地,本实施例的联机交易处理平台中的路由选择与交易流程模块10在数据库11中记录交易处理过程中的状态信息中包括交易的处理结果,且路由选择与交易流程模块10在交易处理的过程中考虑交易的原子性操作。交易的原子性操作具体指的是,当该交易中包括多个操作时,只要有一个操作失败,该交易即失败;能够有效地保证了交易的一致性。且为保持交易的完整性,路由选择与交易流程模块10记录了交易在处理过程成中的状态信息。交易状态信息不仅记录了交易状态,而且记录了交易处理结果(如在操作交易流水表记录了交易处理结果)。在操作交易流水表中记录的最终状态是联机交易处理平台自动处理的结果。一笔交易在平台自动处理结束后,有时会需要线下人工处理。如:营帐系统充值失败的交易、营帐系统多次充值仍未得到成功应答的交易。这一部分的交易会进入到系统交易异常表中,由客服进行线下处理,处理状态会更新到系统交易异常表中,不再更新系统交易流水表。交易流水表按交易接入节点分别进行记录,对于电信来说,就是每个省分别登记交易流水表。路由选择与交易流程模块10接收报文转换模块13的发送的所有交易报文之后,都会将所有交易报文存储在数据库中。对于需要查询该交易的处理,路由选择与交易流程模块10自动匹配该交易,保持交易的一致性。可选地,本实施例的联机交易处理平台中的路由选择与交易流程模块10,还用于在根据转换格式后的交易请求报文中的参数信息路由选择外联系统之前,确定交易请求报文中的银行卡的交易未达到交易阈值。该技术方案实现对交易的风险控制,具体在接收到交易请求以后,进行交易单笔/日/月的交易控制,一旦超过了设定的风险阀值,会对当笔交易进行拒绝。例如按笔进行控制:一个用户(如一张银行卡)每天/月不能超过限定笔数。按交易金额进行控制:一个用户(如一张银行卡)每笔/天/月的交易总金额不能超过限定金额。采用该技术方案,能够有效地对交易的风险进行控制,提高交易处理的安全性。可选地,本实施例的联机交易处理平台中还包括超时处理模块14。其中路由选择与交易流程模块10还用于在数据库11中建立交易记录表,该交易记录表中记录所有未完成交易,以对未完成的交易进行监控;当某条交易完成时,从该交易记录表中删除。超时处理模块14用于定时扫描数据库11中的交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向路由选择与交易流程模块10发送超时响应报文,以供路由选择与交易流程模块10通过对应的报文转换模块13和通讯模块12,向发起交易请求报文的客户端返回超时响应报文。其中未完成交易的交易时间为当前时刻减去该交易的开始时刻,设定的时间阈值为预先设定的一条交易最长交易的时间。采用上述技术方案,能够有效地对联机交易处理平台中的未完成交易进行有效地超时控制和后续处理,避免了联机交易处理平台中长期存在未完成交易的缺陷,能够有效保证交易处理的效率。可选地,本实施例的联机交易处理平台中还包括冲正模块15,该冲正模块15用于根据数据库11中需求冲正的总交易的数量,动态地发起冲正交易,能够有效地保证联机交易系统的稳定运行,避免大规模的冲正浪涌。减少系统压力。其中冲正模块15也与超时处理模块14连接,当超时处理模块14确定交易超时时,在需要进行超时冲正时,触发冲正模块15进行冲正,同时超时处理模块14生成超时响应报文;不需要冲正的交易,超时处理模块14直接超时响应报文;同时,将已完成交易直接从交易记录表中清除。下面介绍几种各交易场景下的冲正处理:1、银行卡扣款失败交易将扣款结果应答给发起方,交易结束,冲正模块15不做任何处理。2、银行卡扣款状态未知(银行扣款超时)返回给交易发起方“交易超时”,冲正模块15对银行端发起扣款冲正。3、银行卡扣款成功,营帐系统充值失败返回给交易发起方“系统处理中”,交易记录转入“异常交易记录表”,交易状态为“银行卡扣款成功,营帐系统充值失败”。后续转为客服线下处理。冲正模块不进行处理。4、银行卡扣款成功,营帐系统充值状态未知(营帐系统充值超时)返回给交易发起方“系统处理中”,根据各省营帐系统进行参数设置,一种情况是:对于支持重复充值的营帐系统,冲正模块15会多次分时(参数控制)发起充值交易;第二种情况是:对于不支持重复充值的营帐系统,将此交易记录转入“异常交易记录表“,交易状态为“银行卡扣款成功,营帐系统充值状态未知”。可选地,本实施例的联机交易处理平台中还包括事件处理模块16。路由选择与交易流程模块10与事件处理模块16连接,路由选择与交易流程模块10还用于在接收的对应的消息队列中的报文数量超出数量阈值时,向事件处理模块16发送消息队列中超出数量阈值之后的交易请求报文;事件处理模块16用于接收路由选择与交易流程模块10发送的、消息队列中超出数量阈值之后的交易请求报文;通过对应的报文转换模块13和通讯模块12,向发起交易请求报文的客户端返回携带“系统忙“的响应报文。采用上述技术方案,不仅能够有效地提高联机交易处理平台的容错功能。而且还能通过实时监控处理模块展示事件信息,便于对联机交易处理平台进行实时监控,更加一步地提闻了系统的容错功能。进一步可选地,本实施例的联机交易处理平台中的报文转换模块13也可以与事件处理模块16连接,报文转换模块13还用于在转换报文过程中发生错误时,向事件处理模块16发送转换错误的报文的客户端的参数消息;如客户端的地址信息。事件处理模块16还用于接收报文转换模块13发送的转换错误的报文的客户端的参数消息,并通过对应的报文转换模块13和通讯模块12,向对应的客户端返回携带“交易异常“的响应报文。可选地,本实施例的联机交易处理平台中,通讯模块12也可以与事件处理模块16连接,通讯模块12还用于在与外联系统通讯链路发生变化时,向事件处理模块16发送通讯链路变化的事件消息;如联机交易处理平台与各省营帐系统、银行网关、各省IVR的通讯链路状态发生变化时,即通讯模块12无法与与各省营帐系统、银行网关、各省IVR通讯,通讯模块12即可确定网络链路故障,此时通讯模块12会向事件处理模块16发送事件消息。事件处理器将这些消息转发给监控进行显示。事件处理模块16还用于向实时监控处理设备转发通讯链路变化的事件消息;以供实时监控处理设备展示接收的通讯链路变化的事件消息。可选地,本实施例的联机交易处理平台中报文转换模块13,还用于在对报文转换之后,复制格式转换后的报文,并向实时监控处理设备发送复制的格式转换后的报文,以供实时监控处理设备展示接收的格式转换后的报文。采用上述技术方案,将交易报文采用“复制分发”的方式转发给实时监控处理模块,不会影响到联机交易的正常处理。且将转换后的内部报文通过实时监控处理模块进行展示,保证了数据报文统一,且也便于实时监控报文。综上所述,本实施例的联机交易处理平台中的路由与流程处理模块10是联机交易处理平台的业务逻辑处理核心,主要包括智能交易路由、交易一致性处理、交易完整性处理、交易记录、交易风控的功能。本实施例的联机交易处理平台也可以称之为电子支付平台。本实施例的联机交易处理平台中的通讯模块需要进行参数化配置,联机交易处理平台中各模块的系统/应用参数用可扩展标记语言(Extensible MarkupLanguage,XML)格式进行文件存储,系统初始化的时候读XML文件进行参数加载。一些商户/银行等相关信息放到数据库11中便于管理平台进行日常的维护。
联机交易处理平台与各外联系统的交易交互需要通过通讯层接入,通讯层涉及到的参数主要有以下这些:本地、远程主机IP ;本地、远程主机端口 ;通讯方式(同、异步,长、短连接,单、双工);通讯模式(客户端C、服务端S);通讯报文头长度、报文头/报文体码制(ASCII码,二进制码等);Socket通讯超时时间、Socket连接等待时间、各节点通讯模块运行进程个数等等。上述所有可选技术方案,可以采用可以结合的方式任意组合,形成本发明的可选实施例,在此不再一一赘述。实施例三图3为本发明实施例三提供的联机交易处理平台的硬件结构图。本实施例在上述实施例的技术方案的基础上,提供一种联机交易处理平台的硬件结构图。如图3所示,其中采用Com表示通讯模块;Msg表示报文转换模块;Switch表示路由选择与交易流程模块;TimeOut表不超时处理模块;AutoRvs表不冲正模块;EventProcesser表不事件处理模块;InboundQ表示进入的消息队列;EventMsgQ表示EventProcesser进行事件处理的事件消息队列;0utboundQ表示输出的消息队列;DB表示数据库(Database)。为便于描述,本实施例仅示出一个通讯节点(即一组Com和Msg模块)来描述本发明的技术方案,实际应用中,联机交易处理平台可以包括多个通讯节点。从图3可以看出,交易报文由Com接收,送到InboundQ中,同时向信使队列PostQ发送一条信使消息,告诉Msg,有一条交易报文送到了 InboundQ中,需要Msg去收取报文,并进行报文格式的转换(由外联系统的报文格式转成支付平台统一的内部报文格式),转换完成后,送到Switch模块的InboundQ队列中,Switch对交易进行业务逻辑进行处理后,选择正确的交易路由,送到对应的Msg中进行报文格式(由联机交易处理平台内部报文格式转换成外联系统的报文格式)的转换,最后送给Com,由Com送给对应的外联系统。本实施例中各处理模块间采用OS mq进行异步通讯。这种异步处理模式有如下优点1.各模块在应用逻辑上相对独立,方便各模块分别进行进程管理和控制。2.各模块之间不会存在资源等待问题,能提高平台并发处理能力。3.联机交易处理平台可以方便的根据业务处理需要进行各模块进程资源的合理调配。图3所示的Msg模块的功能与实现如下:报文转换从全局看可以分为基础模块和插件化函数库两大部分组成。基础模块为报文转换提供了基本的架构,保证交易信息准确、安全地从Switch模块转发到Com或者Com向Switch转发,开发者不用关心其具体的工作内容,基本模块约定了插件的开发模式,要求开发者提供约定参数的插件函数。本实施例的联机交易处理平台中的Msg模块的功能与实现:报文转换从全局看可以分为基础模块和插件化函数库两大部分组成。基础模块为报文转换提供了基本的架构,保证交易信息准确、安全地从Switch模块转发到Com模块或者Com模块向Switch转发,开发者不用关心其具体的工作内容,基本模块约定了插件的开发模式,要求开发者提供约定参数的插件函数。基础框架包括几个功能子模块:邮箱服务子模块、客户API调用子模块、数据转发子模块。邮箱服务子模块主要为交易报文提供了一种接收机制,快速判断要从哪里接收消息,并且也知道消息的大小和标识;客户API调用子模块就是根据配置参数选择合适的插件函数进行报文格式的转换;数据转发子模块将处理后的交易报文转发到其他模块。Msg模块要求开发用户提供两类插件函数,一是报文解析插件函数,二是报文组报插件函数。报文解析插件函数指外部报文格式向内部报文格式转换的过程,报文组报插件函数指内部报文格式向外部报文格式转换的过程。插件化函数库主要完成了数据获取,报文转换的功能。Switch模块是联机交易处理平台的业务逻辑处理核心,主要包括智能交易路由、交易一致性处理、交易完整性处理、交易记录、交易风控的实现。(I)智能交易路由联机交易处理平台交易路由功能是由Switch模块来实现的,Switch会根据交易的属性如参数信息查找路由将相应交易发送到外联系统。如缴纳电费,对应将交易路由到电业系统对应的扣费系统和营帐系统。(2)交易一致性Switch接收Msg模块的交易数据,将数据落地即存储在数据库DB中,对于需要查询该交易的处理,Siwtch自动匹配该交易,保持交易的一致性。在switch模块进行流程处理中,业务逻辑的处理要考虑到交易原子性操作,在处理中出现异常时,必须使原子操作内的数据恢复。在系统进行的银行方冲正结束后,要更新原交易流水状态。在系统进行的营帐系统的分时段多次充值时,也要更新原交易流水状态。采用上述方案,均可以保证交易的一致性。(3)交易完整性为保持交易的完整性,Switch记录了交易在处理过程成中的状态信息。交易状态信息不仅记录了交易状态,而且记录了处理结果,例如在操作交易流水表中记录交易的这些信息。在操作交易流水表中记录的最终状态是联机交易处理平台自动处理的结果。一笔交易在联机交易处理平台自动处理结束后,有时会需要线下人工处理。如:营帐系统充值失败的交易、营帐系统多次充值仍未得到成功应答的交易。这一部分的交易会进入到系统交易异常表中,由客服进行线下处理,处理状态会更新到系统交易异常表中,不再更新系统交易流水表。交易流水表按交易接入节点分别进行记录,对于电信来说,就是每个省分别登记交易流水表。(4)交易记录为了进行平台交易超时控制,需要对外联系统请求交易的主要信息进行记录,当应答交易返回时,更新交易记录状态。例如这些信息可以记录在交易超时控制表中,其中交易超时控制表也按照交易接入节点来分别记录。(5)交易风控为了对交易进行风险控制,需要在接收到交易请求以后,进行交易单笔/日/月的交易控制,一旦超过了设定的风险阀值,会对当笔交易进行拒绝。
例如按笔进行控制:一个用户(通常对应银行卡)每天/月不能超过限定笔数。例如按交易金额进行控制:一个用户(通常对应银行卡)每笔/天/月的交易总金额不能超过限定金额。如图3所示的联机交易处理平台中的TimeOut模块是联机交易处理平台中独立的异常处理模块,针对每笔经过平台的交易进行超时控制。主要是TimeOut模块的轮询进程定时扫描交易记录表,查看未完成交易的开始时间与当前时刻进行比较,找到超过设定的时间阀值的交易进行超时处理:判断是否需要进行系统的异常超时冲正,需要则触发AutoRvs进行冲正,同时做超时应答,不需要冲正的交易,直接做超时应答;同时,将已完成交易直接从交易记录表中清除。AutoRvs模块要根据需要冲正的总交易量,动态发起冲正交易。保证联机系统的稳定运行,避免大规模的冲正浪涌。减少系统压力。各交易场景下的冲正处理详细参见上述实施例的记载,在此不再赘述。由于TimeOut模块和AutoRvs模块均属于异常处理模块,在图3中放在一起。网络链路状态、流量控制、交易优先级考虑系统的其他异常等就要求系统内部有较高的容错功能。联机交易处理平台中为解决此等问题提供了事件处理模块,将异常信息同一接入,提供了清晰的处理流程。联机交易处理平台中与各省营帐系统、银行网关、各省IVR的通讯链路状态发生变化时,会向 EventProcesser 发送事件消息 EventMsgQQEventProcesser 将这些 EventMsgQ转发给实时监控设备监控进行显示。该实时监控设备不属于联机交易处理平台,能够对联机交易处理平台的所有事件信息EventMsgQ进行实施监控分析,供联机交易处理平台的工作人员实时查看,监管。Switch入队列超过设定的阀值时,会将交易报文转发给EventProcesser,EventProcesser会生成“系统忙”应答报文给发起方。Msg模块发生解、组包错误时,将交易关键信息发给EventProcesser,EventProcesse进行异常应答给交易发起方。图4为本发明实施例提供的联机交易处理平台的交易处理示意图。如图4所示,为本实施例的交易处理可以按照通信层、报文转换层和业务处理层共三层来实现。对于交易类的监控,联机交易处理平台在报文转换层将内部交易报文(如报文转换层转换后的报文)写入管道,有专门的模块从管道中读出数据发给实时监控设备进行监控分析展示。对于通讯链路状态的监控,EventProcesser会在通讯链路状态发生变化的时候写入管道信息,由专门模块从管道中取出数据发给实时监控设备进行展示。采用该方案的优点主要体现在以下几个方面:异步处理大吞吐量交易数据效率较高;将交易报文采用“复制分发”的方式写入管道,不会影响到联机交易的正常处理。将转换后的内部报文发给监控端,数据报文统一,便于监控进行数据分析。本实施例提供的联机交易处理平台在系统扩展性方面,架构上引入了逻辑节点即通讯点的概念,一个逻辑节点由一个Com模块和Msg模块组成,Com模块和Msg模块米用插件化的思想进行节点的拼装。同时,支付平台提供动态路由配置的功能,降低了支付平台与各外部系统间的耦合度,这样支付平台为业务的发展提供了快捷的扩展功能。在系统处理高并发方面,联机交易处理平台架构内部采用全异步的交互方式,并定义了统一的内部报文格式。联机交易处理平台架构内部各模块可以通过业务测试进行一种最优的进程资源配置,以使联机交易处理平台达到一种最优的运行方式。在系统异常处理方面,联机交易处理平台架构采用异步事件的处理方式来对系统中发生的异常进行事件触发完成事件的监控和处理;异步超时/冲正功能最大可能的保证了交易的一致性和数据的完整性。从三个方面进行比较,首先是系统扩展性方面,联机交易处理平台架构不再采用传统硬编码的方式进行业务的扩展,而采用较高的配置化、插件化进行系统架构的设计和实现,为系统的灵活扩展提供的很好的基础。其次在处理高并发性方面,联机交易处理平台内部采用全异步的交互方式,并且每个模块可以根据实际业务测试情况进行进程资源的合理配置,在这一点摆脱了传统联机交易处理平台的单一处理进程,需要同步等待造成资源因等待浪费的困境。最后是系统异常处理方面,联机交易处理平台采用异步事件的方式,将平台内部发生的异常情况以内部事件的方式发给各异常处理模块进行及时的处理,这样不仅保证了异常处理,同时也确保不会因为异常处理而影响到正常交易的运行。且本发明实施提供的联机交易处理平台已经进行了首轮的功能和性能测试,基本达到了预期的效果。在IBM P740的16C64G的环境下,单机交易吞吐量达到300笔/秒,成功率在99.9%以上。新增单支交易的开发量基本维持在1-2个工作日。相对于传统的联机交易处理平台,性能得到了大大提高。实施例四图5为本发明实施例四提供的基于联机交易处理平台的交易处理方法的流程图。本实施例的联机交易处理平台采用如上图1-图3任一实施例所示的联机交易处理平台。本实施例的基于联机交易处理平台的交易处理方法,具体可以包括如下步骤:100、通讯模块接收客户端发送的交易请求报文;并向报文转换模块转发交易请求报文;101、报文转换模块将交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块发送转换格式后的交易请求报文;102、路由选择与交易流程模块根据转换格式后的交易请求报文中的参数信息路由选择外联系统,并与外联系统之间进行业务逻辑的交易处理。其中通讯模块和报文转换模块、以及报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯。本实施例为上述图1所示实施例的联机交易处理平台实现交易处理的具体方法,其具体实现机制与上述图1所示实施例的联机交易处理平台的实现机制相同,详细亦可以参考上述图1所示实施例的记载,在此不再赘述。本实施例的基于联机交易处理平台的交易处理方法,通过设置至少一个通讯节点,各通讯节点可以与外联系统或者客户端进行通信连接,能够有效地增强了联机交易处理平台的扩展性,降低了联机交易处理平台与其他外联系统的耦合复杂度,为联机交易处理平台的灵活扩展提供了很好的基础。且通讯节点中的通讯模块、报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯,这样,在交易处理过程中,每个模块处理完一个交易,即可开始处理第二个交易,而不用整个联机交易处理平台都在处理或者等待处理透明同一个交易,从而能够有效地增强联机交易平台的资源利用率,且提高交易的处理效率,满足高并发量的交易的需求。可选地,在上述图5所示实施例的技术方案的基础上,步骤102之后,还可以包括如下步骤:(A)路由选择与交易流程模块根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的报文转换模块发送响应报文;同时还在交易处理的过程中,在数据库中记录交易处理过程中的状态信息;(B)报文转换模块将响应报文转换为对应的客户端要求的报文格式;并向通讯模块发送转换格式后的响应报文;(C)通讯模块向客户端返回转换格式后的响应报文。通过采用上述技术方案,联机交易处理平台还能够在完成交易处理之后,向客户端返回响应报文,供客户端的用户获知交易处理的结果。另外路由选择与交易流程模块通过在交易处理的过程中,在数据库中记录交易处理过程中的状态信息,当在交易出现问题的时候,根据数据库中记录的交易的状态信息,及时查找问题所在。可选地,在上述图5所示实施例的技术方案的基础上,其中报文转换模块将交易请求报文转换为内部统一的报文格式,包括:报文转换模块调用对应的报文解析插件函数,将交易请求报文转换为内部统一的报文格式;报文转换模块将响应报文转换为对应的客户端要求的报文格式,包括:报文转换模块调用对应的报文组报插件函数,将响应报文转换为对应的客户端要求的报文格式。因此,该实施例的技术方案中,在报文转换模块中,可以采用插件函数来实现其功能,而不像现有技术中,联机交易处理平台需要写大量的代码来满足功能需求,因此与现有技术相比,本实施例中的该技术方案,能够有效地节省人力成本,且通过插件函数实现其功能,还能有效地提闻交易的处理效率。可选地,在上述图5所示实施例的技术方案的基础上,路由选择与交易流程模块在交易处理的过程中,在数据库中记录交易处理过程中的状态信息中包括交易的处理结果,且路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作。该实施例的技术方案中,路由选择与交易流程模块在数据库中记录交易处理过程中的状态信息中包括交易的处理结果,从而有效地保证了交易的完整性,且路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作,从而能够有效地保证了交易的一致性。可选地,在上述图5所示实施例的技术方案的基础上,路由选择与交易流程模块在接收到报文转换模块发送的转换格式后的交易请求报文之后,路由选择与交易流程模块根据转换格式后的交易请求报文中的参数信息路由选择外联系统之前,还包括:路由选择与交易流程模块确定交易请求报文中的银行卡的交易未达到交易阈值。当达到交易阈值时,拒绝该交易执行,当未达到交易阈值时,同意该交易继续执行,能够有效地对交易的风险进行控制,提高交易处理的安全性。详细可以参考上述图2或图3所示实施例的详细记载,在此不再赘述。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:(I)路由选择与交易流程模块在数据库中建立交易记录表,交易记录表中记录所有未完成交易;(2)超时处理模块定时扫描交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向路由选择与交易流程模块发送超时响应报文;(3)路由选择与交易流程模块通过对应的报文转换模块和通讯模块,向发起交易请求报文的客户端返回超时响应报文。该步骤(1)-(3)与上述实施例的步骤不做顺序限制,可以放在符合交易处理的任何位置。该步骤的具体实施可以参考上述装置实施例的记载,在此不再赘述。采用上述技术方案,能够有效地对联机交易处理平台中的未完成交易进行有效地超时控制和后续处理,避免了联机交易处理平台中长期存在未完成交易的缺陷,能够有效保证交易处理的效率。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:冲正模块根据数据库中需求冲正的总交易的数量,动态地发起冲正交易,能够有效地保证联机交易系统的稳定运行,避免大规模的冲正浪涌。减少系统压力。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:(a)路由选择与交易流程模块在接收的消息队列中的报文数量超出数量阈值时,向事件处理模块发送消息队列中超出数量阈值之后的交易请求报文;(b)事件处理模块接收路由选择与交易流程模块发送的、消息队列中超出数量阈值之后的交易请求报文;并通过对应的报文转换模块和通讯模块,向发起交易请求报文的客户端返回携带“系统忙“的响应报文。该步骤(a)和(b)与上述实施例的步骤不做顺序限制,可以放在符合交易处理的任何位置。该步骤的具体实施可以参考上述装置实施例的记载,在此不再赘述。采用该方案,能够有效地提高联机交易处理平台的容错功能。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:(C)报文转换模块在转换报文过程中发生错误时,向事件处理模块发送转换错误的报文的客户端的参数消息;(d)事件处理模块接收报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的报文转换模块和通讯模块,向对应的客户端返回携带“交易异常“的响应报文。该步骤(C)和(d)与上述实施例的步骤不做顺序限制,可以放在符合交易处理的任何位置。该步骤的具体实施可以参考上述装置实施例的记载,在此不再赘述。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:(e)通讯模块在与外联系统通讯链路发生变化时,向事件处理模块发送通讯链路变化的事件消息;(f)事件处理模块向实时监控处理设备转发通讯链路变化的事件消息,以供实时监控处理设备展示接收的通讯链路变化的事件消息。该步骤(e)和(f)与上述实施例的步骤不做顺序限制,可以放在符合交易处理的任何位置。该步骤的具体实施可以参考上述装置实施例的记载,在此不再赘述。采用上述技术方案,不仅能够有效地提高联机交易处理平台的容错功能。而且还能通过实时监控处理模块展示事件信息,便于对联机交易处理平台进行实时监控,更加一步地提闻了系统的容错功能。可选地,在上述图5所示实施例的技术方案的基础上,还可以包括如下步骤:报文转换模块在对报文转换之后,复制格式转换后的报文,并向实时监控处理设备发送复制的格式转换后的报文,以供实时监控处理设备展示接收的格式转换后的报文。采用上述技术方案,将交易报文采用“复制分发”的方式转发给实时监控处理模块,不会影响到联机交易的正常处理。且将转换后的内部报文通过实时监控处理模块进行展示,保证了数据报文统一,且也便于实时监控报文。上述所有可选技术方案的实施,均可以参考上述图1-图3所示装置实施例的记载,在此不再一一赘述。实施例五图6为本发明实施例五提供的基于联机交易处理平台的交易处理方法的流程图。本实施例的联机交易处理平台在上述实施例所述联机交易处理平台的基础上,提供另一种基于联机交易处理平台的交易处理方法。本实施例的基于联机交易处理平台的交易处理方法,具体可以包括如下步骤:200、通讯模块接收客户端发送的交易请求报文;并向报文转换模块转发交易请求报文;例如该交易请求中包括用户的用于缴费的银行卡、缴费类别、缴费金额等信息。如果是缴手机费,还需要包括手机号码,同时还可以包括用户的其他信息,不再一一举例。201、报文转换模块将交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块发送转换格式后的交易请求报文;202、路由选择与交易流程模块判断该交易请求报文中的银行卡信息是否超出支付阈值;当该交易请求报文中的银行卡信息超出支付阈值时,执行步骤203 ;否则执行步骤204 ;判断该交易请求报文中的银行卡信息是否超出支付阈值具体可以分为两种方式,一种为某段时间,如每天/每月/每季度/每年,支付的笔数是否超出支付笔数的预设阈值,另一种为某段时间,如每天/每月/每季度/每年,支付的总金额是否超出支付的总金额的预设阈值;具体为哪段时间,可以根据实际需求设置。203、路由选择与交易流程模块生成包括“支付超出阈值”的响应报文;并向对应的报文转换模块发送包括“支付超出阈值”的响应报文;执行步骤205 ;204、路由选择与交易流程模块根据转换格式后的交易请求报文中的参数信息路由选择外联系统,并与外联系统之间进行业务逻辑的交易处理;执行步骤206 ;205、报文转换模块将包括“支付超出阈值”的响应报文转换为对应的客户端要求的报文格式;并向通讯模块发送转换格式后的包括“支付超出阈值”的响应报文;执行步骤207 ;206、路由选择与交易流程模块根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的报文转换模块发送响应报文;执行步骤208 ;路由选择与交易流程模块同时还可以在交易处理的过程中,在数据库中记录交易处理过程中的状态信息,便于在交易出现问题的时候,及时查找问题所在。
207、通讯模块向客户端返回转换格式后的包括“支付超出阈值”的响应报文,结束。这样,客户端的用户便可以获知本次交易中使用的银行卡已经超出支付。208、报文转换模块将响应报文转换为对应的客户端要求的报文格式;并向通讯模块发送转换格式后的响应报文;执行步骤209 ;209、通讯模块向客户端返回转换格式后的响应报文,结束。本实施例中是以一个交易请求为例介绍本发明的技术方案,本实施例的中通讯模块和报文转换模块、以及报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯。因此同一时刻,不同的模块可以在处理不同的交易请求。本实施例的基于联机交易处理平台的交易处理方法,通讯节点中的通讯模块、报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯,这样,在交易处理过程中,每个模块处理完一个交易,即可开始处理第二个交易,而不用整个联机交易处理平台都在处理或者等待处理透明同一个交易,从而能够有效地增强联机交易平台的资源利用率,且提高交易的处理效率,满足高并发量的交易的需求。且路由选择与交易流程模块通过判断该交易请求报文中的银行卡信息是否超出支付阈值,来决定是否需要继续执行交易,能够有效地对交易的风险进行控制,提高交易处理的安全性。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种联机交易处理平台,其特征在于,所述联机交易处理平台包括:至少一个通讯节点、路由选择与交易流程模块和数据库;所述通讯节点中包括通讯模块和报文转换模块;所述通讯模块和所述报文转换模块、以及所述报文转换模块和所述路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯; 所述通讯模块,用于接收客户端发送的交易请求报文;并向所述报文转换模块转发所述交易请求报文; 所述报文转换模块,用于将所述通讯模块转发的所述交易请求报文转换为内部统一的报文格式;并向所述路由选择与交易流程模块发送转换格式后的所述交易请求报文; 所述路由选择与交易流程模块,用于根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理。
2.按权利要求1所述的联机交易处理平台,其特征在于,所述路由选择与交易流程模块,还用于根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的所述报文转换模块发送所述响应报文;同时还用于在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息; 所述报文转换模块,还用于将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文; 所述通讯模块,还用于向所述客户端返回转换格式后的所述响应报文。
3.按权利要求2所述的联机交易处理平台,其特征在于,所述报文转换模块,具体用于调用对应的报文解析插件函数,将所述交易请求报文转换为内部统一的报文格式;并向所述路由选择与交易流程模块发送转换格式后的所述交易请求报文; 所述报文转换模块, 还具体用于调用对应的报文组报插件函数,将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文。
4.按权利要求2所述的联机交易处理平台,其特征在于,所述路由选择与交易流程模块在数据库中记录交易处理过程中的状态信息中包括交易的处理结果,且所述路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作。
5.按权利要求2所述的联机交易处理平台,其特征在于,所述路由选择与交易流程模块,还用于在根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统之前,确定所述交易请求报文中的银行卡的交易未达到交易阈值。
6.按权利要求2所述的联机交易处理平台,其特征在于,所述联机交易处理平台还包括超时处理模块; 所述路由选择与交易流程模块,还用于在所述数据库中建立交易记录表,所述交易记录表中记录所有未完成交易; 所述超时处理模块,用于定时扫描所述交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向所述路由选择与交易流程模块发送所述超时响应报文,以供所述路由选择与交易流程模块通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回所述超时响应报文。
7.按权利要求1-6任一所述的联机交易处理平台,其特征在于,所述联机交易处理平台还包括冲正模块;所述冲正模块,用于根据所述数据库中需求冲正的总交易的数量,动态地发起冲正交易。
8.按权利要求1-6任一所述的联机交易处理平台,其特征在于,所述联机交易处理平台还包括事件处理模块; 所述路由选择与交易流程模块,还用于在接收的消息队列中的报文数量超出数量阈值时,向所述事件处理模块发送所述消息队列中超出所述数量阈值之后的交易请求报文;所述事件处理模块,用于接收所述路由选择与交易流程模块发送的、所述消息队列中超出所述数量阈值之后的所述交易请求报文;通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回携带“系统忙“的响应报文。
9.按权利要求8所述的联机交易处理平台,其特征在于,所述报文转换模块,还用于在转换报文过程中发生错误时,向所述事件处理模块发送转换错误的报文的客户端的参数消息; 所述事件处理模块,还用于接收所述报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的所述报文转换模块和通讯模块,向对应的所述客户端返回携带“交易异常“的响应报文。
10.按权利要求8所述的联机交易处理平台,其特征在于: 所述通讯模块,还用于在与所述外联系统通讯链路发生变化时,向所述事件处理模块发送通讯链路变化的事件消息; 所述事件处理模块,还用于向实时监控处理设备转发所述通讯链路变化的事件消息,以供所述实时监控处理设备展示接收的所述通讯链路变化的事件消息。
11.按权利要求10所述的 联机交易处理平台,其特征在于,所述报文转换模块,还用于在对报文转换之后,复制所述格式转换后的报文,并向所述实时监控处理设备发送复制的所述格式转换后的报文,以供所述实时监控处理设备展示接收的所述格式转换后的报文。
12.一种基于联机交易处理平台的交易处理方法,其特征在于,所述联机交易处理平台如上权利要求1-11任一所述的联机交易处理平台;所述方法包括: 通讯模块接收客户端发送的交易请求报文;并向报文转换模块转发所述交易请求报文; 所述报文转换模块将所述交易请求报文转换为内部统一的报文格式;并向路由选择与交易流程模块发送转换格式后的所述交易请求报文; 所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理 其中所述通讯模块和所述报文转换模块、以及所述报文转换模块和所述路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯。
13.按权利要求12所述的方法,其特征在于,所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统,并与所述外联系统之间进行业务逻辑的交易处理之后,所述方法还包括: 所述路由选择与交易流程模块根据交易处理的结果生成包括交易处理结果的响应报文,并向对应的所述报文转换模块发送所述响应报文;同时还在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息;所述报文转换模块将所述响应报文转换为对应的所述客户端要求的报文格式;并向所述通讯模块发送转换格式后的所述响应报文。
14.按权利要求13所述的方法,其特征在于,所述报文转换模块将所述交易请求报文转换为内部统一的报文格式,包括:所述报文转换模块调用对应的报文解析插件函数,将所述交易请求报文转换为内部统一的报文格式; 所述报文转换模块将所述响应报文转换为对应的所述客户端要求的报文格式,包括:所述报文转换模块调用对应的报文组报插件函数,将所述响应报文转换为对应的所述客户端要求的报文格式。
15.按权利要求13所述的方法,其特征在于,所述路由选择与交易流程模块在交易处理的过程中,在所述数据库中记录交易处理过程中的状态信息中包括交易的处理结果,且所述路由选择与交易流程模块在交易处理的过程中考虑交易的原子性操作。
16.按权利要求13 所述的方法,其特征在于,所述路由选择与交易流程模块在接收到所述报文转换模块发送的转换格式后的所述交易请求报文之后,所述路由选择与交易流程模块根据转换格式后的所述交易请求报文中的参数信息路由选择外联系统之前,还包括: 所述路由选择与交易流程模块确定所述交易请求报文中的银行卡的交易未达到交易阈值。
17.按权利要求13所述的方法,其特征在于,所述方法还包括: 所述路由选择与交易流程模块在所述数据库中建立交易记录表,所述交易记录表中记录所有未完成交易; 所述超时处理模块定时扫描所述交易记录表,查看未完成交易的交易时间是否超出设定的时间阈值,并在超时时,生成超时响应报文;并向所述路由选择与交易流程模块发送所述超时响应报文; 所述路由选择与交易流程模块通过对应的所述报文转换模块和通讯模块,向发起所述交易请求报文的所述客户端返回所述超时响应报文。
18.按权利要求12-17任一所述的方法,其特征在于,所述方法还包括: 所述冲正模块根据所述数据库中需求冲正的总交易的数量,动态地发起冲正交易。
19.按权利要求12-17任一所述的方法,其特征在于,所述方法还包括: 所述路由选择与交易流程模块在接收的消息队列中的报文数量超出数量阈值时,向所述事件处理模块发送所述消息队列中超出所述数量阈值之后的交易请求报文; 所述事件处理模块接收所述路由选择与交易流程模块发送的、所述消息队列中超出所述数量阈值之后的所述交易请求报文;并通过对应的所述报文转换模块和所述通讯模块,向发起所述交易请求报文的所述客户端返回携带“系统忙“的响应报文。
20.按权利要求19所述的方法,其特征在于,所述方法还包括: 所述报文转换模块在转换报文过程中发生错误时,向所述事件处理模块发送转换错误的报文的客户端的参数消息; 所述事件处理模块接收所述报文转换模块发送的转换错误的报文的客户端的参数消息,并通过对应的所述报文转换模块和通讯模块,向对应的所述客户端返回携带“交易异常“的响应报文。
21.按权利要求19所述的方法,其特征在于,所述方法还包括:所述通讯模块在与所述外联系统通讯链路发生变化时,向所述事件处理模块发送通讯链路变化的事件消息; 所述事件处理模块向实时监控处理设备转发所述通讯链路变化的事件消息,以供所述实时监控处理设备展示接收的所述通讯链路变化的事件消息。
22.按权利要求21所述的方法,其特征在于,所述方法还包括: 所述报文转换模块在对报文转换之后,复制所述格式转换后的报文,并向所述实时监控处理设备发送复制的所述格式转换后的报文,以供所述实时监控处理设备展示接收的所述格式转 换后的报文。
全文摘要
本发明公开了一种联机交易处理平台及其交易处理方法。联机交易处理平台包括至少一个通讯节点、路由选择与交易流程模块和数据库;通讯节点中包括通讯模块和报文转换模块;通讯模块和报文转换模块、以及报文转换模块和路由选择与交易流程模块相互之间采用操作系统消息队列的方式进行异步通讯。本发明还公开了用于基于联机交易处理平台的交易处理方法。本发明的技术方案能够有效地增强联机交易平台的资源利用率,且提高交易的处理效率,满足高并发量的交易的需求。
文档编号G06Q20/08GK103093342SQ20131001215
公开日2013年5月8日 申请日期2013年1月11日 优先权日2013年1月11日
发明者滕广选 申请人:北京掌上汇通科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1