业务请求处理方法及装置的制造方法_2

文档序号:8447412阅读:来源:国知局
并将所述处理结果发送给所述用户终端,所述处理结果包括:所述第一业务对应的第一处理结果与所述第二业务对应的第二处理结果,其中,当查询出所述第二处理结果为失败时,为所述业务请求重新分配身份标识。
[0038]具体地,服务器102定期按照身份标识查询业务请求的处理状态,获取业务请求的处理结果。如上所述,业务请求的处理状态可包括:第一处理状态与第二处理状态。处理结果可包括:服务器102在处理第一业务时获得的第一处理结果,与服务器102在处理第二业务时获得的第二处理结果。
[0039]请参见图3,步骤S15可以包括:
[0040]步骤S151,当所述业务请求的处理状态为所述第一处理状态,且所述第一处理结果为处理成功时,继续处理所述第二业务,获取所述第二处理结果,将所述第二处理结果发送给所述用户终端。
[0041]具体地,当查询到业务请求的处理状态为第一处理状态且第一处理结果为处理成功时,也就是说服务器102虽然在处理业务请求对应的第一业务时发生处理超时,但是最终服务器102对第一业务处理成功,获得了处理结果数据,则服务器102继续处理对应的第二业务,获取第二业务的处理结果,也即第二处理结果,然后将第二处理结果发送给用户终端 101 ο
[0042]步骤S152,当所述业务请求的处理状态为所述第二处理状态时,判断是否获取到所述处理状态为所述第二处理状态的业务请求的所述第二处理结果。
[0043]具体地,当查询到业务请求的处理状态为第二处理状态时,判定是否获取到该业务请求的第二处理结果,也即判断服务器102是否对该业务请求对应的第二业务进行过处理,也可以理解为判断服务器102中是否存储有第二业务的处理记录。
[0044]若否,则执行步骤S153:重新处理所述第二业务,获取所述第二处理结果,将所述第二处理结果发送给所述用户终端。
[0045]具体地,若服务器102未获得第二处理结果,则重新处理该业务请求对应的第二业务,获取第二处理结果(也即第二业务的处理结果)的结果数据,将获取的结果数据发送给用户终端101。业务请求的处理状态为第二处理状态,但服务器102未获得第二处理结果的情况可发生在服务器102在首次处理业务请求对应的第二业务时失败,于是重新为业务请求分配了身份标识,此后服务器102按照新分配的身份标识查询业务请求的处理结果,由于身份标识的唯一性,因此按照新分配的身份标识查询将无法获得对应的处理结果。
[0046]若是,则执行步骤S154,判断所述处理结果是否为成功。
[0047]具体地,若服务器102获得第二处理结果,则判断第二处理结果是否为成功,也即是否有对应的结果数据。
[0048]若是,则执行步骤S155,将所述第二处理结果发送给所述用户终端。
[0049]具体地,若第二处理结果为处理成功,则将第二处理结果的结果数据发送给用户终端101。
[0050]若否,则执行步骤S156:为所述业务请求重新分配身份标识。
[0051]具体地,若第二处理结果为处理失败,则服务器102重新为业务请求分配身份标识。由于服务器102针对相同的身份标识的业务请求只能处理一次,如果仍然使用相同身份标识重新处理业务请求,处理结果仍然是失败,因此需要为处理失败的业务请求重新分配身份标识。
[0052]本发明实施例提供的业务请求处理方法,通过服务器为接收的用户终端发送的业务请求分配唯一的身份标识,根据业务请求按照预设的顺序处理第一业务与第二业务,并根据处理情况分别标记第一业务与第二业务的处理状态,定期按照身份标识查询业务请求的处理状态,获取业务请求的处理结果,并且当查询出第二处理结果为失败时,为业务请求重新分配身份标识,因此,可避免服务器对具有相同身份标识的业务请求进行重复处理,提高处理效率,避免资源浪费。
[0053]第二实施例
[0054]图4为本发明第二实施例提供的业务请求处理方法的流程图。如图4所示,本实施例的业务请求处理方法包括以下步骤:
[0055]步骤S21,服务器接收用户终端发送的业务请求,为业务请求分配唯一的身份标识,根据业务请求,按照预设的处理顺序,分别处理第一业务与第二业务。
[0056]如图5所示,本步骤具体包括以下步骤:
[0057]步骤S211,服务器接收用户终端发送的业务请求,为业务请求分配唯一的身份标识。
[0058]业务请求中可包含用于获取预置的第一业务与第二业务的业务数据,其中,根据预设的处理顺序,第一业务的处理顺序先于第二业务。例如:假设业务请求为付费抽奖的业务请求,则业务请求中可包含用于获取电子支付业务的业务数据,比如:用户的银行账号、
密码等。
[0059]身份标识用于标识业务请求的身份,具有唯一性,至少可以由业务请求对应的业务代码、处理时间、用户终端对应的用户帐号、以及预置数量的随机字符构成。
[0060]步骤S212,服务器根据业务请求,对第一业务进行处理。
[0061]具体地,服务器可通过第一业务处理模块,根据业务请求中所包含的业务数据,对预置的第一业务进行处理。可以理解的,第一业务处理模块既可运行于服务器本地,也可运行于其它云端服务器中。第一业务处理模块可在第一业务处理完成时,对处理情况进行记录,并通过身份标识将处理情况与业务请求相关联,通过身份标识,服务器可查询对应的第一业务的处理情况,处理情况具体可包括:处理成功获得结果数据与处理失败未获得结果数据。
[0062]步骤S213,若第一业务处理超时,则立即重新处理第一业务,若处理再次超时,则将业务请求的处理状态标记为第一处理状态,若第一业务处理未超时且处理失败,则通知用户终端第一业务处理失败。
[0063]具体地,若第一业务处理超时,也即超过预置的时长,服务器未通过第一业务处理模块获得处理结果,则立即重新通过第一业务处理模块重新处理第一业务,并当超过预置的时长,仍未获得处理结果时,将业务请求的处理状态标记为第一处理状态,同时,服务器通知用户终端业务请求处理异常。第一处理状态的标记可用于标识服务器在处理业务请求对应的第一业务时发生异常,比如:处理超时。可以理解的,若第一业务处理模块运行于其它云端服务器中,则当超过预置的时长,服务器未接收到第一业务处理模块返回的处理响应数据时,可视为处理超时。
[0064]若在预置的时长内,服务器通过第一业务处理模块处理第一业务失败未获得结果数据,则通知用户终端第一业务处理失败。
[0065]步骤S214,若第一业务处理未超时且处理成功,则继续处理第二业务。
[0066]具体地,若在预置的时长内,服务器处理第一业务成功,获得处理的结果数据,则服务器可按照预设的顺序,继续通过第二业务处理模块处理与第一业务相关联的第二业务。
[0067]步骤S215,若第二业务处理未超时且处理成功,则将处理结果发送给用户终端,若第二业务处理未超时且处理失败,则为业务请求重新分配身份标识,并将业务请求的处理状态标记为第二处理状态。
[0068]具体地,若服务器在预置的时长内,处理第二业务成功并获得处理的结果数据,则处理的结果数据发送给用户终端。
[0069]若服务器在预置的时长内,处理第二业务失败,则为业务请求重新分配身份标识,并将业务请求的处理状态标记为第二处理状态。第二处理状态的标记可用于标识服务器在处理业务请求对应的第二业务时发生异常,比如:处理超时或处理失败。可以理解的,第二业务处理模块既可运行于服务器本地,也可运行于其它云端服务器中,若第二业务处理模块运行于其它云端服务器中,则当超过预置的时长,服务器未接收到第二业务处理模块返回的处理响应数据时,可视为处理超时。第二业务处理模块在第二业务处理完成时,对处理情况进行记录,并通过身份标识将处理情况与业务请求相关联,通过身份标识,服务器可查询对应的第二业务的处理情况,处理情况具体可包括:处理成功获得结果数据与处理失败未获得结果数据。
[0070]步骤S216,若第二业务处理超时,则立即重新处理第二业务。
[0071]具体地,若服务器处理第二业务超时,也即超过预置的时长未获得第二业务的处理结果,则立即重新通过第二业务处理模块处理第二业务。
[0072]步骤S217,若重新处理第二业务超时,则将业务请求的处理状态标记为第二处理状态。
[0073]具体地,当服务器再次超过预置的时长仍然未获得第二业务的处理结果时,将业务请求的处理状态标记为第二处理状态,同时通知用户终端业务请求处理异常。
[0074]步骤S218,若重新处理第二业务未超时且处理成功,则将处理结果发送给用户终端,若重新处理第二业务未超时且处理失败,则重新为业务请求分配身份标识,并将业务请求的处理状态标记为第二处理状态。
[0075]具体地,服务器再次通过第二业务处理模块对第二业
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1