【技术实现步骤摘要】
用于鲁棒通信的方法和系统
[0001]本专利技术涉及交易数据处理系统领域。本专利技术涉及一种用于在客户机与服务器之间进行鲁棒通信以执行交易的方法,以及在客户机装置和服务器计算机中执行的相应方法。
技术介绍
[0002]交易系统中的一个问题是参与的计算机之间的通信并不总是可靠。例如,在客户机为移动装置的情况下,随着客户机的位置的变化,可能会暂时失去通信。如果在交易(例如商品订购或货币交易)期间发生这种情况,至关重要的是确保客户机和与其通信的服务器都得到相同的交易结果。此外,客户机可能会认为服务器尚未收到订单,并通过用户操作或负责该订购的软件过程再次触发了该订单。这可能导致同一交易的多次执行。
技术实现思路
[0003]因此,本专利技术的目的是创建一种用于在最初提到的类型的客户机和服务器之间进行鲁棒通信的方法,以解决上述问题。
[0004]这些目的通过根据本专利技术的用于客户机和服务器之间的鲁棒通信的方法来实现。
[0005]在一个实施例中,用于本文描述的方法的计算机程序产品可加载到构成本文描述的 ...
【技术保护点】
【技术特征摘要】
1.一种用于客户机(1)和服务器(2)之间以执行交易的鲁棒通信方法,,所述方法包括以下步骤:基于用户输入,客户机确定(11)交易的详情;客户机生成(12)并向服务器发送交易请求(21),所述交易请求(21)包括交易的详情和标识该交易的交易UUID;在向服务器发送交易请求(21)后,客户机等待(13)第一超时时间段,以等待由所述服务器发送的交易确认请求(22);在接收到交易请求(21)后,服务器生成(31)并向所述客户机发送交易确认请求(22),所述交易确认请求(22)包括所述交易UUID;如果在第一超时时间段过期前,接收到包括所述交易UUID的交易确认请求(22),客户机生成(14)和发送包括所述交易UUID的交易确认响应(23),并且随后等待(15)来自服务器的包含交易UUID的交易结果消息(24),并且在等待时不能中止该交易;如果在第一超时时间段到期之前没有接收到交易确认请求(22),则客户机中止与交易UUID相关联的客户机侧交易请求处理;如果在中止客户机侧交易请求处理后,接收到交易确认请求(22),则客户机不响应服务器,或者向服务器发送中止消息;向客户机发送交易确认请求(22)后,服务器等待(32)第二超时时间段,以等待客户机发送的交易确认响应(23);如果在第二超时时间段到期之前接收到交易确认响应(23),则服务器处理(33)交易并将包括交易UUID的交易结果消息(24)发送给客户机;如果在第二超时时间段到期之前没有接收到交易确认响应(23),则服务器中止(34)服务器侧交易处理,并且将包括交易UUID的服务器侧交易中止消息(25)发送给客户机;如果接收到服务器侧交易中止消息(25),则客户机中止(17)客户机侧交易请求处理;如果接收到交易结果消息(24),则客户机处理(16)交易结果消息(24)。2.根据权利要求1所述的方法,包括:在所述客户机已经向所述服务器发送了所述交易请求(21)之后,以及在所述客户机正在等待(13)第一超时时间段期间,以等待由所述服务器发送的所述交易确认请求(22),不允许客户机发送具有同一UUID的另一个交易请求。3.根据权利要求1或2所述的方法,包括:在所述客户机生成(12)并发送交易请求(21)的步骤之前,在所述客户机装置(1)与所述服务器计算机(2)之间进行交互以用于建立业务逻辑的至少一部分。4.根据权利要求3所述的方法,所述交互包括UUID。5.根据权利要求1或2所述的方法,包括:在所述客户机生成(12)并发送交易请求(21)的步骤之前,在所述客户机装置(1)与所述服务器计算机(2)之间没有用于建立业务逻辑的至少一部分的的交互。6.根据权利要求1或2所述的方法,包括以下步骤:当等待针对所述交易UUID的交易确认请求(22)时,所述客户机中止与所述交易UUID相关联的交易,并为同一订单发送具有一个不同交易UUID的另一交易请求(21)。
7.根据...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。