业务请求处理方法、装置、计算机设备和存储介质与流程

文档序号:14684363发布日期:2018-06-12 23:05阅读:171来源:国知局
业务请求处理方法、装置、计算机设备和存储介质与流程
本申请涉及计算机
技术领域
,特别是涉及一种业务请求处理方法、装置、计算机设备和存储介质。
背景技术
:随着智能终端普及,涌现出了大量的应用程序。一款应用程序可以具有多种功能,人们通过一款应用程序可以办理多种业务。在传统的方式中,应用程序通常采用SOA架构(Service-OrientedArchitecture,面向服务的架构),将所有业务功能的功能模块集中在一起。功能模块之间的耦合度较高,在应用程序版本升级时,如果其中一个功能模块被修改,其他未被修改的功能模块可能也会受到影响。因此,如何降低应用程序多个功能模块之间的耦合度,避免多个业务功能之间的相互影响成为目前需要解决的一个技术问题。技术实现要素:基于此,有必要针对上述技术问题,提供一种能够有效降低应用程序多个功能模块之间的耦合度,避免多个业务功能之间的相互影响的业务请求处理方法、装置、计算机设备和存储介质。一种业务请求处理方法,包括:主节点接收终端发送的业务请求;所述主节点识别所述业务请求对应的业务类型,所述业务类型对应多个从节点标识;所述主节点将所述业务请求发送至与所述从节点标识对应的从节点;所述从节点中部署了与所述业务类型对应的流程逻辑代码,所述从节点利用所述流程逻辑代码执行所述业务请求。在其中一个实施例中个,所述主节点将所述业务请求发送与所述从节点标识对应的从节点包括:所述主节点根据所述从节点标识轮询多个从节点的当前负载权重,根据所述当前负载权重选择与所述业务请求对应的从节点标识;对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识;根据被选择的从节点标识将多个业务请求依次发送至对应的从节点。在其中一个实施例中个,所述方法还包括:接收终端通过应用程序上传的埋点数据;对所述埋点数据进行分析,得到一个或多个感兴趣业务功能;根据所述感兴趣业务功能获取对应的静态资源,利用所述静态资源生成静态资源差分包;将所述静态资源差分包发送至终端,使得终端利用所述静态资源差分包对所述应用程序在本地的静态资源进行更新。在其中一个实施例中个,所述对所述埋点数据进行分析,得到一个或多个感兴趣业务功能的步骤包括:根据终端标识对每个终端上传的埋点数据分别进行分析,得到每个终端标识对应的感兴趣业务功能;所述根据所述感兴趣业务功能获取对应的静态资源,利用所述静态资源生成静态资源差分包的步骤包括:根据终端标识对应的感兴趣业务功能获取对应的静态资源,利用所述静态资源生成与所述终端标识对应的静态资源差分包。一种业务请求处理方法,包括:从节点接收主节点分配的业务请求,所述业务请求具有对应的业务类型,所述从节点与所述业务类型相对应;所述从节点根据所述业务请求调用预先部署的与所述业务类型相对应的流程逻辑代码;利用所述流程逻辑代码调用业务数据,执行所述业务请求。在其中一个实施例中个,所述方法还包括:当所述主节点发生异常时,所述从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数;根据加入集群的时间、性能指数和响应次数选举新的主节点。一种业务请求处理装置,包括:第一通信模块,用于接收终端发送的业务请求;识别模块,用于识别所述业务请求对应的业务类型,所述业务类型对应多个从节点标识;分配模块,用于将所述业务请求发送至与所述从节点标识对应的从节点;所述从节点中部署了与所述业务类型对应的流程逻辑代码,所述从节点利用所述流程逻辑代码执行所述业务请求。一种业务请求处理装置,包括:第二通信模块,用于接收主节点分配的业务请求,所述业务请求具有对应的业务类型,所述从节点与所述业务类型相对应;所述业务请求源自终端的应用程序;代码调用模块,用于根据所述业务请求调用预先部署的与所述业务类型相对应的流程逻辑代码;执行模块,用于利用所述流程逻辑代码调用业务数据,执行所述业务请求。一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项方法的步骤。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项方法的步骤。上述业务请求处理方法、装置、计算机设备和存储介质,与业务类型对应的流程逻辑代码被迁移后,部署在了集群中不同的从节点中,当主节点接收到终端发送的业务请求时,识别业务请求对应的业务类型,从而根据业务类型将业务请求分配至对应的从节点,由从节点调用与业务类型对应的流程逻辑代码来执行业务请求。每个业务类型的流程逻辑代码可以实现一项相应的业务功能,由于每个业务类型的流程逻辑代码从传统的SOA架构中脱离出来,使得每个业务类型的流程逻辑代码被拆分,由此有效降低了业务功能模块之间的耦合度。附图说明图1为一个实施例中业务请求处理方法的应用场景图;图2为一个实施例中业务请求处理方法的流程图;图3为另一个实施例中业务请求处理方法的流程图;图4为一个实施例中业务请求处理装置的框图;图5为另一个实施例中业务请求处理装置的框图;图6为一个实施例中计算机设备的框图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供业务请求处理方法,可以应用于如图1所示的应用环境中。终端102通过网络与服务器集群(以下简称集群)104进行通信连接。集群104中包括主节点和多个从节点。终端上安装了应用程序。用户可以通过应用程序办理多种业务。从节点部署了多个业务类型的功能模块。每个功能模块具有相应的流程逻辑代码。当用户需要办理业务时,可以通过终端的应用程序发送业务请求。集群中的主节点接收终端发送的业务请求。业务请求中携带了详情页面的页面标识,主节点根据页面标识对业务请求对应的业务类型进行识别。主节点根据所述业务类型获取对应的从节点标识。主节点将所述业务请求发送至与所述从节点标识对应的从节点。所述从节点根据该业务请求调用对应的流程逻辑代码,所述从节点利用所述流程逻辑代码执行所述业务请求。由于每个业务类型的流程逻辑代码从传统的SOA架构中脱离出来,使得每个业务类型的流程逻辑代码被拆分,由此有效降低了业务功能模块之间的耦合度。在一个实施例中,如图2所示,提供了一种业务请求处理方法,以该方法应用于图1集群中的主节点为例进行说明,具体包括以下步骤:步骤202,主节点接收终端发送的业务请求。步骤204,主节点识别业务请求对应的业务类型,业务类型对应多个从节点标识。终端上安装了应用程序的客户端。客户端中可以集成了多种业务类型的操作页面。从节点集群中安装了应用程序的服务端。应用程序的服务端部署了多个业务类型的功能模块。每个功能模块具有相应的流程逻辑代码,通过功能模块的流程逻辑代码调用业务数据可以实现相应的业务功能。客户端与服务端的交互,可以实现终端与集群的交互,从而可以使得用户通过应用程序办理多种业务。其中,集群包括多个节点,节点包括一个主节点和多个从节点。每个从节点上都部署了一种业务功能对应的流程逻辑代码。业务功能对应的流程逻辑代码也可以称为功能模块。也就是说,每个业务功能对应的功能模块从传统的SOA架构,分别迁移至了对应的从节点。每个从节点通过相应的流程逻辑代码(即功能模块)实现一种业务功能。传统方式中,多个业务功能的功能模块集中在一起,本实施例中的多个功能模块被拆分,有效降低了彼此之间的耦合度。在应用程序的客户端,业务功能可以有相应的详情页面。用户可以通过终端对详情页面进行操做,向集群发送业务请求。集群中的主节点负责与终端进行通信。主节点接收终端发送的业务请求。业务请求中携带了详情页面的页面标识,主节点根据页面标识对业务请求对应的业务类型进行识别。业务类型与业务功能相对应,可以通过一种业务类型实现相应的一种业务功能。步骤206,主节点将业务请求发送至与从节点标识对应的从节点;从节点中部署了与业务类型对应的流程逻辑代码,从节点利用流程逻辑代码执行业务请求。从节点在部署了与业务功能后,主节点可以获取从节点标识以及与业务功能对应的业务类型,利用从节点标识和业务类型生成业务列表。在主节点识别出业务请求对应的业务类型后,可以通过业务列表查询与该业务类型对应的从节点标识。主节点根据从节点标识将业务请求发送对应的从节点。从节点接收业务请求,根据业务请求调用预先部署的流程逻辑代码,通过流程逻辑代码在数据库中获取与业务类型对应的业务数据,流程逻辑代码利用业务数据执行该业务请求。以自动理赔这一业务类型为例,从节点接收业务请求,业务请求中携带了理赔信息。从节点根据业务请求调用预先部署的流程逻辑代码,通过流程逻辑代码根据理赔信息在数据库中获取对应的保单数据。保单数据包括有效期和理赔范围。从节点通过流程逻辑代码查询理赔信息中的出险日期是否在有效期内,若是,则进一步查询出险类型是否在理赔范围内,若是,则对理赔信息中的诊疗信息进行识别。当识别成功时,从节点对提取到的诊疗项目与理赔范围进行比对,得到准予理赔的诊疗项目。从节点根据准予理赔的诊疗项目与对应的费用,计算相应的理赔金额,若理赔金额在预设范围内,则审核通过。审核通过后,从节点还可以进一步的通过流程逻辑代码执行理赔操作。从节点利用客户信息和理赔金额生成理赔转账请求,将理赔转账请求发送至银行服务器,由银行服务器根据理赔金额向客户账户转账,从而完成客户理赔。本实施例中,与业务类型对应的流程逻辑代码被迁移后,部署在了集群中不同的从节点中,当主节点接收到终端发送的业务请求时,识别业务请求对应的业务类型,从而根据业务类型将业务请求分配至对应的从节点,由从节点调用与业务类型对应的流程逻辑代码来执行业务请求。每个业务类型的流程逻辑代码可以实现一项相应的业务功能,由于每个业务类型的流程逻辑代码从传统的SOA架构中脱离出来,使得每个业务类型的流程逻辑代码被拆分,由此有效降低了业务功能模块之间的耦合度。在一个实施例中,该方法还包括:主节点获取与业务类型对应的关键字;利用关键字生成SQL语句,利用SQL语句在源数据库中提取对应的业务数据;将提取到的业务数据写入与业务类型对应的业务数据库中,以使得与业务类型对应的从节点在业务数据库中调取相应的业务数据执行业务请求。从节点中除了部署相应的流程逻辑代码之外,还可以部署相应的业务数据库。业务数据库中可以存储与流程逻辑代码的业务类型相对应的业务数据。其中,业务数据库中的业务数据可以是从源数据库中同步得到的。具体地,主节点获取与业务类型对应的关键字。业务类型可以是保险投保、保险理赔、理财、银行以及贷款等待。不同的业务类型可以有不同的关键字。主节点利用关键字生成SQL语句,通过SQL语句在源数据库中提取对应的业务数据。主将提取到的业务数据写入与业务类型对应的业务数据库中。由此可以使得从节点在本地直接调取业务数据执行业务请求,有助于提高业务请求的处理效率。可以理解,在后续业务处理过程中所产生的业务数据,可以按照其业务类型存入相应的业务数据库中。在一个实施例中,该方法还包括:按照预设频率扫描多个业务类型对应的字段;利用当前扫描到的字段与上一次扫描到的字段进行比对,得到与业务类型对应的发生变化的字段;利用发生变化的字段对业务数据库中的相应字段进行更新。随着业务的发展,有些业务可能会被取消,有些业务可能会被增加。此外,有些业务的销售渠道也可能会发生变化。为了在业务请求的处理中得到使用最新的业务数据,主节点可以根据业务的变化状况对业务数据库进行更新。具体的,主节点按照预设频率扫描多个业务类型对应的字段,将当前扫描到的字段与上一次扫描到的字段进行比对,得到与业务类型对应的发生变化的字段。发生变化的字段可以是被删掉的字段,也可以是新增的字段等。主节点利用发生变化的字段对业务数据库中的相应字段进行更新。在一个实施例中,业务类型对应多个从节点标识,主节点将业务请求发送与从节点标识对应的从节点包括:主节点根据从节点标识轮询多个从节点的当前负载权重,根据当前负载权重选择与业务请求对应的从节点标识;对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识;根据被选择的从节点标识将多个业务请求依次发送至对应的从节点。本实施例中,面对海量的业务请求时,为了有效提高业务请求的处理效率,同一业务类型的流程逻辑代码可以部署在不同的从节点中。也就是说,多个从节点可以实现同一个业务功能,通过多个从节点并发执行业务请求以提高处理效率。具体地,从节点被配置了相应的负载权重。负载权重包括初始负载权重和当前负载权重。初始负载权重可以是根据集群中各个从节点的配置来决定的。初始负载权重越高,表示从节点的空闲资源就越多,可承担的业务请求的数量也就越多。当前负载权重是根据初始负载权重进行动态调整计算得到的,表示在当前空闲资源的状况。当前负载权重越高,表示当前的空闲资源就越多,可承担的业务请求的数量也就越多。主节点接收到业务请求时,根据业务类型在业务列表中对相应从节点的当前负载权重进行轮询,得到与业务类型对应的每个从节点的当前负载权重。主节点根据集群中每个从节点的当前负载权重为业务请求选择对应的从节点标识。主节点对被选择的从节点标识对应的当前负载权重进行平滑处理。通过平滑处理可以对当前已分配业务请求的从节点的资源消耗进行抵消,防止重复计算其负载权重,以此达到集群中多个从节点的负载均衡。主节点利用平滑处理后的结果选择下一个业务请求对应的从节点标识。由此将多个业务请求分配至相应的从节点进行处理。通过多个从节点并发执行业务请求,由此能够有效提高业务请求的处理效率。在其中一个实施例中,对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识的步骤包括:根据业务列表获取多个从节点标识对应的当前负载权重;对多个从节点标识对应的当前负载权重进行遍历,得到最高负载权重;将接收到的其中一个业务请求分配至最高负载权重的从节点;对分配业务请求后的从节点的当前负载权重进行平滑处理;针对下一个业务请求,根据平滑处理结果再次计算多个从节点标识对应的当前负载权重,得到最高当前负载权重;将下一个业务请求分配至最高当前负载权重的从节点,得到下一个业务请求对应的从节点标识,直至为多个业务请求选择出对应的从节点标识。本实施例中,主节点对集群中多个从节点标识对应的当前负载权重进行遍历,得到最高负载权重。主节点可以将多个业务请求中的一个业务请求分配至最高负载权重的从节点。在完成这个业务请求的分配工作之后,主节点还会对最高负载权重进行平滑处理,得到平滑处理结果。平滑处理结果中包括多个从节点标识对应的平滑后的负载权重。主节点理赔平滑后的负载权重与初始负载权重计算每个从节点标识对应的当前负载权重,得到最高负载权重。主节点将下一个业务请求分配至最高负载权重对应的从节点。以此类推,直到将所有的业务请求分配完毕。在其中一个实施例中,对分配业务请求后的从节点的当前负载权重进行平滑处理的步骤包括:根据业务列表获取多个从节点标识对应的初始负载权重;利用多个初始权重计算负载权重总和;利用负载权重总和最高负载权重对分配业务请求后的从节点的当前负载权重进行平滑处理。主节点可以根据集群中多个从节点的初始负载权重计算负载权重总和。在完成一个业务请求的分配之后,主节点利用负载权重总和对最高负载权重进行平滑处理。具体的,主节点可以利用最高负载权重减去负载权重总和,对被分配业务请求的从节点的当前负载权重进行平滑计算,得到平滑后的负载权重。通过平滑处理可以对当前已分配业务请求的从节点的资源消耗进行抵消,防止重复计算其负载权重,以此达到集群中多个从节点的负载均衡。在其中一个实施例中,根据平滑处理结果计算多个从节点标识对应的当前负载权重的步骤包括:获取多个从节点标识对应的初始负载权重以及平滑后的负载权重;利用初始负载权重与平滑后的负载权重分别计算多个从节点标识对应的当前负载权重。在进行平滑处理之后,主节点获取多个从节点标识对应的初始负载权重以及平滑后的负载权重,计算初始负载权重以及平滑后的负载权重的和,以此得到多个从节点标识对应的当前负载权重。主节点在多个当前负载权重中选择最高负载权重,将下一个业务请求分配至最高负载权重对应的从节点。例如,集群中包括3个从节点,从节点标识分别为:a、b、c;初始负载权重分别为6、4、1。目前主节点接收到6个业务请求,在集群的各个从节点初始化之后,主节点依次对6个业务请求进行分配。具体过程如下:主节点计算负载权重总和为11。对业务请求1而言,3个从节点标识对应当前负载权重中的最高负载权重为6,主节点选择6对应的从节点标识a,将业务请求1分配至a从节点。在业务请求1分配完成之后,主节点对a从节点的当前负载权重进行平滑计算,得到平滑后的负载权重,即利用6减去11得到-5。对于业务请求1而言,主节点重新计算每个从节点标识的当前负载权重。即利用-5加上6得到1,作为a从节点的当前负载权重;利用4加上4得到8,作为b从节点的当前负载权重;利用1加上1得到2,作为c从节点的当前负载权重。此时,b从节点的当前负载权重最高,主节点将业务请求分配至b从节点。在业务请求2分配完成之后,主节点对b从节点的当前负载权重进行平滑计算,得到平滑后的负载权重,即利用8减去11得到-3。以此类推,直到主节点将6个业务请求分配完毕。分配过程可以采用下表一来示意:表一:业务请求标识当前负载权重被分配的从节点标识平滑结果1(6,4,1)a(6-11,4,1)2(-5+6,4+4,1+1)b(1,8-11,2)3(1+6,-3+4,2+1)a(7-11,1,3)4(-4+6,1+4,3+1)b(2,5-11,4)5(2+6,-6+4,4+1)a(8-11,-2,5)6(-3+6,-2+4,5+1)c(3,2,6-11)进一步的,主节点还可以监测集群中的从节点是否出现异常;当监测到异常从节点时,将异常从节点对应的从节点标识在业务列表中删除;当再次接收到业务请求时,利用删除异常从节点标识后的业务列表进行业务请求分配。当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数。多个从节点根据加入集群的时间、性能指数和响应次数选举新的主节点。在一个实施例中,该方法还包括:接收终端通过应用程序上传的埋点数据;对埋点数据进行分析,得到一个或多个感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包;将静态资源差分包发送至终端,使得终端利用静态资源差分包对应用程序在本地的静态资源进行更新。本实施例中,终端在安装应用程序时,可以将应用程序的安装包和静态资源包同时安装在终端本地。用户在通过终端中的应用程序办理业务时,应用程序在本地直接加载所需的静态资源快速展示相应业务,不再需要从主节点拉取数据,能够有效提高应用程序加载页面的速度。终端的应用程序中预设设置了埋点,埋点可以是控件、文本、图片或视频等。在页面加载成功之后,用户可以触发页面中的控件、文件或其他埋点。当埋点被触发时,终端可以通过应用程序采集埋点数据,将采集到的埋点数据上传至主节点。主节点对埋点数据进行分析,以此对用户行为进行分析。主节点可以对每个业务类型的埋点数据进行分析,以此了解用户对该业务功能的喜好情况,可以得到一个或多个感兴趣业务功能。在其中一个实施例中,对埋点数据进行分析,得到一个或多个感兴趣业务功能的步骤包括:主节点对所有终端上传的埋点数据进行分析,得到所有终端对应的一个或多个感兴趣业务功能。主节点可以对所有终端上传的埋点数据进行分析。例如,主节点可以对所有终端上传的控件对应的埋点数据进行分析,根据业务类型对所有被触发的控件进行统计,得到被触发的控件的点击量。当被触发的控件的点击量超过阈值时,主节点根据该控件对应的业务类型的得到感兴趣业务功能。由此能够从整体上反映用户的感兴趣业务功能。为了使得用户在通过感兴趣业务功能办理业务时,应用程序能够快速加载相应页面,主节点根据感兴趣功能查询对应的静态资源是否有更新。若有更新,则利用感兴趣业务功能对应的静态资源生成静态资源差分包。主节点将静态资源包发送至所有连接中的终端。终端可以利用静态资源差分包与本地已安装的静态资源包进行增量更新,由此使得终端能够在本地直接加载更新后的静态资源。在用户使用感兴趣业务功能办理业务时,可以进一步提高页面加载速度。在其中一个实施例中,对埋点数据进行分析,得到一个或多个感兴趣业务功能的步骤包括:根据终端标识对每个终端上传的埋点数据分别进行分析,得到每个终端标识对应的感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包的步骤包括:根据终端标识对应的感兴趣业务功能获取对应的静态资源,利用静态资源生成与终端标识对应的静态资源差分包。主节点还可以针对每个终端上传的埋点数据进行分析,得到每个终端对应的一个或多个感兴趣业务功能,以此对每个用户进行个性化分析。主节点在对每个终端的感兴趣业务功能分析之后,还可以按照上述方式对每个终端中的感兴趣页面功能对应的静态资源生成与终端标识对应的静态资源差分包。主节点根据终端标识将其对应的静态资源差分包分别发送至每个终端。由此可以使得每个终端分别利用静态资源差分包与本地已安装的静态资源包进行增量更新。通过个性化的分析,以及对每个终端的静态资源进行个性化的更新,在不同用户在使用自己的感兴趣页面功能时,都可以使得相应页面的加载速度得到有效提升。在一个实施例中,如图3所示,提供了一种业务请求处理方法,以该方法应用于图1集群中的从节点为例进行说明,具体包括以下步骤:步骤302,从节点接收主节点分配的业务请求,业务请求具有对应的业务类型,从节点与业务类型相对应。步骤304,从节点根据业务请求调用预先部署的与业务类型相对应的流程逻辑代码。步骤306,利用流程逻辑代码调用业务数据,执行业务请求。终端上安装了应用程序的客户端。客户端中可以集成了多种业务类型的操作页面。从节点集群中安装了应用程序的服务端。应用程序的服务端部署了多个业务类型的功能模块。每个功能模块具有相应的流程逻辑代码,通过功能模块的流程逻辑代码调用业务数据可以实现相应的业务功能。客户端与服务端的交互,可以实现终端与从节点集群的交互,从而可以使得用户通过应用程序办理多种业务。每个业务功能对应的功能模块从传统的SOA架构,分别迁移至了对应的从节点。由于多个功能模块被拆分,有效降低了彼此之间的耦合度。在应用程序的客户端,业务功能可以有相应的详情页面。用户可以通过终端对详情页面进行操做,向集群发送业务请求。集群中的主节点负责与终端进行通信。主节点接收终端发送的业务请求。业务请求中携带了详情页面的页面标识,主节点根据页面标识对业务请求对应的业务类型进行识别。业务类型与业务功能相对应,可以通过一种业务类型实现相应的一种业务功能。在主节点识别出业务请求对应的业务类型后,可以通过业务列表查询与该业务类型对应的从节点标识。主节点根据从节点标识将业务请求发送对应的从节点。从节点接收业务请求,根据业务请求调用预先部署的流程逻辑代码,通过流程逻辑代码在数据库中获取与业务类型对应的业务数据,流程逻辑代码利用业务数据执行该业务请求。面对海量的业务请求时,为了有效提高业务请求的处理效率,同一业务类型的流程逻辑代码可以部署在不同的从节点中。也就是说,多个从节点可以实现同一个业务功能,通过多个从节点并发执行业务请求以提高处理效率。本实施例中,与业务类型对应的流程逻辑代码被迁移后,部署在了集群中不同的从节点中,当主节点接收到终端发送的业务请求时,识别业务请求对应的业务类型,从而根据业务类型将业务请求分配至对应的从节点,由从节点调用与业务类型对应的流程逻辑代码来执行业务请求。每个业务类型的流程逻辑代码可以实现一项相应的业务功能,由于每个业务类型的流程逻辑代码从传统的SOA架构中脱离出来,使得每个业务类型的流程逻辑代码彼此分离,由此有效降低了业务功能模块之间的耦合度。在一个实施例中,该方法还包括:当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数;根据加入集群的时间、性能指数和响应次数选举新的主节点。主节点还可以监测集群中的从节点是否出现异常。具体的,主节点可以按照预设频率向集群中的每个从节点发送心跳,若在预设时间内收到从节点根据心跳返回的消息,则确定从节点正常,否则,确定从节点异常。如果从节点未能按照预设频率接收到主节点发送的心跳,也可以确定主节点发生异常。当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数。多个从节点根据加入集群的时间、性能指数和响应次数选举新的主节点。多个从节点中除了分别部署与业务类型对应的流程逻辑代码之外,还可以部署主节点对应的流程逻辑代码。由此方便在主节点出现异常时,能够快速切换至选举出的新的主节点中继续工作。多个从节点可以根据以下规则进行选举,得到新的主节点:从节点加入到集群中的时间;从节点的性能指数;从节点的响应次数。从节点加入集群的时间具有第一权重,从节点的性能参数具有第二权重,从节点的响应次数具有第三权重。每个从节点利用第一权重、第二权重和第三权重分别计算其他节点的权重值,将第一权重、第二权重和第三权重相加,得到总权重。将总权重最高的从节点选举为新的主节点。由于在选举中考虑到了从节点加入集群的时间长短、从节点的性能指数和响应次数等,由此能够确保选举得到的新的主节点的性能是众多从节点中性能最优的。从而能够使得更换主节点后的集群性能稳健。在一个实施例中,如图4所示,提供了一种业务请求处理装置,包括:第一通信模块402、识别模块404和分配模块406,其中:第一通信模块402,用于接收终端发送的业务请求。识别模块404,用于识别业务请求对应的业务类型,业务类型对应多个从节点标识。分配模块406,用于将业务请求发送至与从节点标识对应的从节点;从节点中部署了与业务类型对应的流程逻辑代码,从节点利用流程逻辑代码执行业务请求。在一个实施例中,分配模块还用于根据从节点标识轮询多个从节点的当前负载权重,根据当前负载权重选择与业务请求对应的从节点标识;对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识;根据被选择的从节点标识将多个业务请求依次发送至对应的从节点。在一个实施例中,第一通信模块还用于接收终端通过应用程序上传的埋点数据;该装置还包括:分析模块和更新模块,其中:分析模块,用于对埋点数据进行分析,得到一个或多个感兴趣业务功能。更新模块,用于根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包。第一通信模块还用于将静态资源差分包发送至终端,使得终端利用静态资源差分包对应用程序在本地的静态资源进行更新。在一个实施例中,分析模块还用于根据终端标识对每个终端上传的埋点数据分别进行分析,得到每个终端标识对应的感兴趣业务功能;更新模块还用于根据终端标识对应的感兴趣业务功能获取对应的静态资源,利用静态资源生成与终端标识对应的静态资源差分包。在一个实施例中,如图5所示,提供了一种业务请求处理装置,包括:第二通信模块502、代码调用模块504和执行模块506,其中:第二通信模块502,用于接收主节点分配的业务请求,业务请求具有对应的业务类型,从节点与业务类型相对应。代码调用模块504,用于根据业务请求调用预先部署的与业务类型相对应的流程逻辑代码。执行模块506,用于利用流程逻辑代码调用业务数据,执行业务请求。在一个实施例中,该装置还包括:选举模块,用于当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数;根据加入集群的时间、性能指数和响应次数选举新的主节点。上述装置中的每个模块可以通过软件、硬件或其组合来实现。上述装置也可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。其中,计算机设备可以是一种服务器,例如,可以是集群中的主节点,也可以是集群中的从节点。在一个实施例中,提供了一种计算机设备,例如,集群中的主节点或从节点。如图6所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该计算机设备的非易失性存储介质存储有操作系统和和计算机程序。该计算机设备的内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种业务请求处理方法。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:主节点接收终端通过应用程序发送的业务请求;主节点识别业务请求对应的业务类型,业务类型对应多个从节点标识;主节点将业务请求发送至与从节点标识对应的从节点;从节点中部署了与业务类型对应的流程逻辑代码,从节点利用流程逻辑代码执行业务请求。在一个实施例中,处理器执行计算机程序时还实现以下步骤:主节点根据从节点标识轮询多个从节点的当前负载权重,根据当前负载权重选择与业务请求对应的从节点标识;对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识;根据被选择的从节点标识将多个业务请求依次发送至对应的从节点。在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收终端通过应用程序上传的埋点数据;对埋点数据进行分析,得到一个或多个感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包;将静态资源差分包发送至终端,使得终端利用静态资源差分包对应用程序在本地的静态资源进行更新。在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据终端标识对每个终端上传的埋点数据分别进行分析,得到每个终端标识对应的感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包的步骤包括:根据终端标识对应的感兴趣业务功能获取对应的静态资源,利用静态资源生成与终端标识对应的静态资源差分包。在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:通过从节点接收主节点分配的业务请求,业务请求具有对应的业务类型,从节点与业务类型相对应;从节点根据业务请求调用预先部署的与业务类型相对应的流程逻辑代码;利用流程逻辑代码调用业务数据,执行业务请求。在一个实施例中,处理器执行计算机程序时还实现以下步骤:当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数;根据加入集群的时间、性能指数和响应次数选举新的主节点。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:主节点接收终端发送的业务请求;主节点识别业务请求对应的业务类型,业务类型对应多个从节点标识;主节点根据业务类型获取对应的从节点标识;主节点将业务请求发送至与从节点标识对应的从节点;从节点中部署了与业务类型对应的流程逻辑代码,从节点利用流程逻辑代码执行业务请求。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:主节点根据从节点标识轮询多个从节点的当前负载权重,根据当前负载权重选择与业务请求对应的从节点标识;对被选择的从节点标识对应的当前负载权重进行平滑处理,利用平滑处理后的结果选择下一个业务请求对应的从节点标识;根据被选择的从节点标识将多个业务请求依次发送至对应的从节点。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收终端通过应用程序上传的埋点数据;对埋点数据进行分析,得到一个或多个感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包;将静态资源差分包发送至终端,使得终端利用静态资源差分包对应用程序在本地的静态资源进行更新。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据终端标识对每个终端上传的埋点数据分别进行分析,得到每个终端标识对应的感兴趣业务功能;根据感兴趣业务功能获取对应的静态资源,利用静态资源生成静态资源差分包的步骤包括:根据终端标识对应的感兴趣业务功能获取对应的静态资源,利用静态资源生成与终端标识对应的静态资源差分包。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:通过从节点接收主节点分配的业务请求,业务请求具有对应的业务类型,从节点与业务类型相对应;从节点根据业务请求调用预先部署的与业务类型相对应的流程逻辑代码;利用流程逻辑代码调用业务数据,执行业务请求。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当主节点发生异常时,从节点获取所属集群中多个从节点加入集群的时间、性能指数和响应次数;根据加入集群的时间、性能指数和响应次数选举新的主节点。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一个或多个非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)等。以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1