业务处理方法、装置及计算机可读存储介质与流程

文档序号:14197309阅读:102来源:国知局
业务处理方法、装置及计算机可读存储介质与流程

本公开涉及网络技术领域,尤其涉及一种业务处理方法、装置及计算机可读存储介质。



背景技术:

目前,大多数业务都是通过客户端与服务器之间的交互来实现。在实际实现中,客户端向服务器发送业务请求,譬如,在分布式系统中,该业务请求可以用于请求服务器读或者写数据。服务器接收该业务请求,并基于该业务请求进行业务处理,如,进行数据读或者写操作等。在实际应用场景中,通常还需要服务器在一定的时限内,将业务处理结果反馈给该客户端。



技术实现要素:

为克服相关技术中存在的问题,本公开提供一种业务处理方法、装置及计算机可读存储介质。

第一方面,提供一种业务处理方法,所述方法包括:

接收客户端发送的业务请求,所述业务请求携带超时时长,所述超时时长用于指示为所述客户端反馈业务处理结果的最大时限;

基于当前的系统时间和所述超时时长,确定截止时间,所述截止时间是指为所述客户端反馈所述业务处理结果的最终时间;

基于所述截止时间,对所述业务请求所请求的业务进行处理。

可选地,所述基于所述截止时间,对所述业务请求所请求的业务进行处理,包括:

当所述业务请求所请求的业务包括多个子业务时,每当完成所述多个子业务中的任一子业务时,查询是否到达所述截止时间;

当到达所述截止时间且当前完成的子业务不是所述多个子业务中的最后一个子业务时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述基于所述截止时间,对所述业务请求所请求的业务进行处理,包括:

在对所述业务请求所请求的业务进行处理的过程中,每隔预设时长,查询是否到达所述截止时间;

当到达所述截止时间且业务处理尚未完成时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述基于当前的系统时间和所述超时时长,确定截止时间,包括:

将当前的系统时间与所述超时时长进行求和运算;

将求和运算得到的时间确定为所述截止时间。

可选地,所述基于所述截止时间,对所述业务请求所请求的业务进行处理之后,还包括:

当在所述截止时间之前完成对所述业务请求所请求的业务的处理时,向所述客户端发送业务响应,所述业务响应用于提示所述客户端已完成业务处理。

第二方面,提供一种业务处理装置,所述装置包括:

接收模块,用于接收客户端发送的业务请求,所述业务请求携带超时时长,所述超时时长用于指示为所述客户端反馈业务处理结果的最大时限;

确定模块,用于基于当前的系统时间和所述超时时长,确定截止时间,所述截止时间是指为所述客户端反馈所述业务处理结果的最终时间;

处理模块,用于基于所述截止时间,对所述业务请求所请求的业务进行处理。

可选地,所述处理模块用于:

当所述业务请求所请求的业务包括多个子业务时,每当完成所述多个子业务中的任一子业务时,查询是否到达所述截止时间;

当到达所述截止时间且当前完成的子业务不是所述多个子业务中的最后一个子业务时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述处理模块还用于:

在对所述业务请求所请求的业务进行处理的过程中,每隔预设时长,查询是否到达所述截止时间;

当到达所述截止时间且业务处理尚未完成时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述确定模块用于:

将当前的系统时间与所述超时时长进行求和运算;

将求和运算得到的时间确定为所述截止时间。

可选地,所述装置还包括:

发送模块,用于当在所述截止时间之前完成对所述业务请求所请求的业务的处理时,向所述客户端发送业务响应,所述业务响应用于提示所述客户端已完成业务处理。

第三方面,提供一种业务处理装置,所述装置包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行上述第一方面所述的业务处理方法。

第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述第一方面所述的业务处理方法。

第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的业务处理方法。

本公开的实施例提供的技术方案可以包括以下有益效果:

接收客户端发送的携带超时时长的业务请求,基于当前的系统时间和该超时时长确定为客户端反馈该业务处理结果的最终时间,其中,该超时时长用于指示为客户端反馈业务处理结果的最大时限。之后,基于所确定的最终时间对该业务请求所请求的业务进行处理,避免了在客户端已经丢弃业务请求的情况下仍继续进行业务处理,如此,节约了资源。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1a是根据一示例性实施例示出的一种系统结构的示意图。

图1b是根据一示例性实施例示出的一种业务处理方法的流程图。

图2是根据另一示例性实施例示出的一种业务处理方法的流程图。

图3a是根据一示例性实施例示出的一种业务处理装置的框图。

图3b是根据一示例性实施例示出的另一种业务处理装置的框图。

图4是根据一示例性实施例示出的一种业务处理装置400的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在对本公开实施例进行详细介绍之前,先对本公开实施例涉及的应用场景和系统结构进行简单的介绍。

首先,对本公开实施例涉及的应用场景进行简单介绍。

客户端在与服务器交互以请求服务器进行业务处理时,一般会针对不同业务请求设置不同的超时时长。如果在该超时时长内没有接收到服务器反馈业务处理结果,则客户端断开与服务器的连接,即丢弃本次业务请求。然而,由于服务器在进行业务处理的过程中并不会监测与该客户端之间的连接情况,也即是,服务器无法获知客户端已经丢弃了本次的业务请求,因此,服务器还会继续对本次的业务请求进行处理,如此,导致资源浪费。为此,本公开实施例提供了一种业务处理方法,该业务处理方法可以避免资源浪费,即能够达到节约资源的效果,其具体实现可以参见如下图1b和图2所示的实施例。

接下来,对本公开实施例涉及的系统结构进行简单介绍。

请参考图1a,该图1a是根据一示例性实施例示出的一种系统结构的示意图,该系统中主要包括有客户端110和服务器120,该客户端和该服务器120可以通过有线网络或者无线网络实现连接。在一种可能的应用场景中,该客户端110和该服务器120可以为分布式系统中的两个节点。

其中,该客户端110主要用于向该服务器120发送业务请求,以请求该服务器120进行业务处理并反馈业务处理结果。在实际实现中,该客户端110可以安装在终端中,该终端可以为诸如手机、平板电脑、计算机之类的设备。或者,该客户端110所执行的操作也可以通过web来实现,本公开实施例对此不做限定。

其中,该服务器120可以用于接收该客户端110发送的业务请求,并基于该业务请求进行业务处理,即该服务器120主要用于实现本公开实施例提供的业务处理方法,其具体实现可以参见如下图1b和图2所示的实施例。

需要说明的是,在实际实现中,该服务器120可以为一台服务器,也可以是由多台服务器组成的服务器集群,本公开实施例对此不做限定。

在介绍完本公开实施例所涉及的应用场景和系统结构之后,接下来,将结合附图对本公开实施例涉及的业务处理方法的具体实现进行详细介绍。

请参考图1b,该图1b是根据一示例性实施例示出的一种业务处理方法的流程图,该业务处理方法可应用于图1a所示的系统中,该业务处理方法可以包括以下几个实现步骤。

在步骤101中,接收客户端发送的业务请求,该业务请求携带超时时长,该超时时长用于指示为该客户端反馈业务处理结果的最大时限。

在步骤102中,基于当前的系统时间和该超时时长,确定截止时间,该截止时间是指为该客户端反馈该业务处理结果的最终时间。

在步骤103中,基于该截止时间,对该业务请求所请求的业务进行处理。

在本公开实施例中,接收客户端发送的携带超时时长的业务请求,基于当前的系统时间和该超时时长确定为客户端反馈该业务处理结果的最终时间,其中,该超时时长用于指示为客户端反馈业务处理结果的最大时限。之后,基于所确定的最终时间对该业务请求所请求的业务进行处理,避免了在客户端已经丢弃业务请求的情况下仍继续进行业务处理,如此,节约了资源。

可选地,基于该截止时间,对该业务请求所请求的业务进行处理,包括:

当该业务请求所请求的业务包括多个子业务时,每当完成该多个子业务中的任一子业务时,查询是否到达该截止时间;

当到达该截止时间且当前完成的子业务不是该多个子业务中的最后一个子业务时,终止对该业务请求所请求的业务的处理操作。

可选地,基于该截止时间,对该业务请求所请求的业务进行处理,包括:

在对该业务请求所请求的业务进行处理的过程中,每隔预设时长,查询是否到达该截止时间;

当到达该截止时间且业务处理尚未完成时,终止对该业务请求所请求的业务的处理操作。

可选地,基于当前的系统时间和该超时时长,确定截止时间,包括:

将当前的系统时间与该超时时长进行求和运算;

将求和运算得到的时间确定为该截止时间。

可选地,基于该截止时间,对该业务请求所请求的业务进行处理之后,还包括:

当在该截止时间之前完成对该业务请求所请求的业务的处理时,向该客户端发送业务响应,该业务响应用于提示该客户端已完成业务处理。

上述所有可选技术方案,均可按照任意结合形成本公开的可选实施例,本公开实施例对此不再一一赘述。

请参考图2,该图2是根据另一示例性实施例示出的一种业务处理方法的流程图,该业务处理方法可以应用于图1a所示的系统中,该业务处理方法可以包括如下几个实现步骤:

在步骤201中,客户端向服务器发送业务请求。服务器接收客户端发送的业务请求,该业务请求携带超时时长,该超时时长用于指示为该客户端反馈业务处理结果的最大时限。

在实际应用场景中,该超时时长可以预先进行设置,例如,该超时时长可以由客户端进行设置。并且,针对不同的业务,通常可能对应设置有不同的超时时长。客户端在请求服务器进行业务处理的过程中,可以针对当前需要请求的业务,从本地获取对应的预先设置的超时时长。

之后,该客户端可以基于该超时时长,生成业务请求,并向服务器发送携带该超时时长的业务请求,以告知服务器为该客户端反馈业务处理结果的最大时限。相应地,该服务器接收该客户端发送的该业务请求。

需要说明的是,在实际应用场景中,客户端可以是在接收到业务处理指令后,向服务器发送携带超时时长的业务请求。其中,该业务处理指令可以由用户触发,该用户可以通过指定操作触发,该指定操作可以包括点击操作、滑动操作等等。

例如,该客户端上可以设置有业务处理选项,用户可以点击该业务处理选项以触发上述业务处理指令,客户端接收到该业务处理指令后,按照上述实现过程,向服务器发送携带超时时长的业务请求。

在步骤202中,服务器基于当前的系统时间和该超时时长,确定截止时间,该截止时间是指为该客户端反馈该业务处理结果的最终时间。

服务器接收到客户端发送的业务请求后,为了确定为该客户端反馈业务处理结果的最终时间,该服务器需要基于当前的系统时间和该超时时长,确定截止时间。

在具体实现中,服务器基于当前的系统时间和该超时时长,确定截止时间可以包括如下实现过程:服务器将当前的系统时间与该超时时长进行求和运算,并将求和运算得到的时间确定为该截止时间。

例如,若当前的系统时间为13:00,上述业务请求中携带的超时时长为2分钟,则该服务器将当前的系统时间13:00和上述超时时长2分钟进行求和运算后得到的时间为13:02,服务器将该时间13:02确定为上述截止时间。也即是,服务器为该客户端反馈该业务处理结果的最终时间是13:02。

在步骤203中,服务器基于该截止时间,对该业务请求所请求的业务进行处理。

例如,若该截止时间为13:02,则服务器根据该时间13:02,对该业务请求所请求的业务进行处理。在具体实现中,该服务器基于该截止时间,对该业务请求所请求的业务进行处理可以包括如下几种可能的实现方式:

第一种情况:当该业务请求所请求的业务包括多个子业务时,每当完成该多个子业务中的任一子业务时,查询是否到达该截止时间,当到达该截止时间且当前完成的子业务不是该多个子业务中的最后一个子业务时,终止对该业务请求所请求的业务的处理操作。

在实际应用场景中,该业务请求所请求的业务通常可能包括多个子业务,在该种情况下,该服务器可以基于上述截止时间,根据该多个子业务的完成情况进行业务处理。

例如,假设该业务中包括子业务a、子业务b、子业务c和子业务d,且服务器对该多个子业务的处理顺序依次为子业务a、子业务b、子业务c,以及子业务d。则当服务器完成对子业务a的业务处理时,可以查询一下是否达到上述截止时间13:02。如果没有到达该截止时间13:02,则服务器继续处理子业务b。以此类推,当服务器完成对子业务b的业务处理时,再查询一次是否到达该截止时间13:02,如果没有到达该截止时间13:02,则服务器继续处理下一个子业务。但是,一旦服务器查询到达了截止时间13:02,且当前完成的子业务不是该多个子业务中的最后一个子业务d时,由于客户端已经丢弃了该业务请求,因此,可以认为服务器对该业务请求所请求的业务继续进行处理是没有意义的,此时,为了避免资源浪费,服务器终止对所述业务请求所请求的业务的处理操作。

这里需要说明的是,在本公开实施例中,不对服务器处理子业务的顺序进行限定,上述举例仅是示例性的,在实际实现中,该服务器还可能按照其它顺序处理该多个子业务。

第二种情况:在对该业务请求所请求的业务进行处理的过程中,每隔预设时长,查询是否到达该截止时间,当到达该截止时间且业务处理尚未完成时,终止对该业务请求所请求的业务的处理操作。

其中,该预设时长可以由用户根据实际需求自定义设置,也可以由该服务器默认设置,本公开实施例对此不做限定。

在该种实现方式中,服务器不是根据业务所包括的多个子业务的完成情况进行业务处理,而是按照一定的时间规律,基于上述截止时间,对该业务请求所请求的业务进行处理。

也即是,在该种实现方式中,服务器不管该业务请求所请求的业务中包括的子业务的数量,也不管各个子业务的完成情况,这里采用的实现方式是,每隔一段时间,就查询一次是否达到该截止时间。如果到达该截止时间且业务处理尚未完成,由于客户端已经丢弃了该业务请求,因此,可以认为服务器对该业务请求所请求的业务继续进行处理是没有意义的,此时,为了避免资源浪费,服务器终止对所述业务请求所请求的业务的处理操作。

例如,若上述预设时长为30s,则该终端在对该业务请求所请求的业务进行处理的过程中,每隔30s查询是否到达上述截止时间13:02,若没有到达该截止时间,则服务器继续对该业务请求所请求的业务进行处理。在此过程中,一旦查询到达该截止时间13:02且业务处理尚未完成时,为了避免资源浪费,服务器终止对所述业务请求所请求的业务的处理操作。

至此,已实现了本公开实施例所述的业务处理方法。进一步地,在实际应用场景中,还可以包括如下步骤204。

在步骤204中,当服务器在该截止时间之前完成对该业务请求所请求的业务的处理时,向该客户端发送业务响应,该业务响应用于提示该客户端已完成业务处理。

如果服务器在该截止时间之前完成对该业务请求所请求的业务的处理,说明服务器对该业务请求所请求的业务的处理时间没有超时,在实际应用场景中,该服务器可以向该客户端发送业务响应,以通知客户端成功完成了对该业务请求所请求的业务的处理。相应地,该客户端接收该业务响应后,即可确定已经成功实现了本次的业务请求。

进一步地,该业务响应中还可以包括业务处理数据,譬如,当该业务请求用于指示从服务器中读取数据时,该业务响应中可以包括该客户端所请求读取的数据。

在本公开实施例中,接收客户端发送的携带超时时长的业务请求,基于当前的系统时间和该超时时长确定为客户端反馈该业务处理结果的最终时间,其中,该超时时长用于指示为客户端反馈业务处理结果的最大时限。之后,基于所确定的最终时间对该业务请求所请求的业务进行处理,避免了在客户端已经丢弃业务请求的情况下仍继续进行业务处理,如此,节约了资源。

图3a是根据一示例性实施例示出的一种业务处理装置的框图。参照图3a,该装置包括接收模块310,确定模块320和处理模块330。

该接收模块310,用于接收客户端发送的业务请求,所述业务请求携带超时时长,所述超时时长用于指示为所述客户端反馈业务处理结果的最大时限;

该确定模块320,用于基于当前的系统时间和所述超时时长,确定截止时间,所述截止时间是指为所述客户端反馈所述业务处理结果的最终时间;

该处理模块330,用于基于所述截止时间,对所述业务请求所请求的业务进行处理。

可选地,所述处理模块330用于:

当所述业务请求所请求的业务包括多个子业务时,每当完成所述多个子业务中的任一子业务时,查询是否到达所述截止时间;

当到达所述截止时间且当前完成的子业务不是所述多个子业务中的最后一个子业务时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述处理模块330还用于:

在对所述业务请求所请求的业务进行处理的过程中,每隔预设时长,查询是否到达所述截止时间;

当到达所述截止时间且业务处理尚未完成时,终止对所述业务请求所请求的业务的处理操作。

可选地,所述确定模块320用于:

将当前的系统时间与所述超时时长进行求和运算;

将求和运算得到的时间确定为所述截止时间。

可选地,请参考图3b,所述装置还包括:

发送模块340,用于当在所述截止时间之前完成对所述业务请求所请求的业务的处理时,向所述客户端发送业务响应,所述业务响应用于提示所述客户端已完成业务处理。

在本公开实施例中,接收客户端发送的携带超时时长的业务请求,基于当前的系统时间和该超时时长确定为客户端反馈该业务处理结果的最终时间,其中,该超时时长用于指示为客户端反馈业务处理结果的最大时限。之后,基于所确定的最终时间对该业务请求所请求的业务进行处理,避免了在客户端已经丢弃业务请求的情况下仍继续进行业务处理,如此,节约了资源。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图4是根据一示例性实施例示出的一种业务处理装置400的框图。例如,装置400可以被提供为一服务器。参照图4,装置400包括处理器422,其进一步包括一个或多个处理器,以及由存储器432所代表的存储器资源,用于存储可由处理器422的执行的指令,例如应用程序。存储器432中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器422被配置为执行指令,以执行上述图1b或图2所示实施例提供的业务处理方法。

装置400还可以包括一个电源组件426被配置为执行装置400的电源管理,一个有线或无线网络接口450被配置为将装置400连接到网络,和一个输入输出(i/o)接口458。装置400可以操作基于存储在存储器432的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器432,上述指令可由装置400的处理器422执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行上述图1b或图2所示实施例提供的业务处理方法。

一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述图1b或图2所示实施例提供的业务处理方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1