CN112596780A - 一种业务执行的方法以及装置 - Google Patents

一种业务执行的方法以及装置 Download PDF

Info

Publication number
CN112596780A
CN112596780A CN202011488555.7A CN202011488555A CN112596780A CN 112596780 A CN112596780 A CN 112596780A CN 202011488555 A CN202011488555 A CN 202011488555A CN 112596780 A CN112596780 A CN 112596780A
Authority
CN
China
Prior art keywords
middleware
service
target
storage center
configuration data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011488555.7A
Other languages
English (en)
Inventor
陈凯鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN202011488555.7A priority Critical patent/CN112596780A/zh
Publication of CN112596780A publication Critical patent/CN112596780A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本说明书公开了一种业务执行的方法以及装置,接收用户发送的业务请求,确定所述业务请求对应的业务,作为目标业务,并确定执行所述目标业务所对应的至少一个待配置中间件。针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件。根据各配置后中间件,对所述目标业务进行业务执行。本方法可以在接收到用户发送的业务请求时,配置出执行该业务请求对应目标业务的中间件,从而降低中间件与业务之间的耦合性,实现中间件的动态配置。将中间件代码或中间件配置数据进行分离,使开发人员修改中间件时,可以节省大量的时间,提高工作效率。

Description

一种业务执行的方法以及装置
技术领域
本说明书涉及计算机技术领域,尤其涉及一种业务执行的方法以及装置。
背景技术
中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
目前,大多数项目的中间件研发,是基于业务进行定制。这些定制的中间件与目标业务耦合严重,导致业务代码在后续修改、维护、升级等方面缺乏灵活性。如当业务需求发生变更,需要对中间件进行修改,而每次增删改中间件时,都需要对业务代码整体重新下载,再进行中间件的修改,修改完成后重新发布。中间件增删改的过程非常繁琐,而每一个业务需求变化都可能需要对中间件进行修改,这会导致开发人员花费大量的时间,降低工作效率。
因此,如何避免中间件与目标业务耦合严重,提高业务的开发、更新效率,则是一个亟待解决的问题。
发明内容
本说明书提供一种业务执行的方法、装置、存储介质及电子设备,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种业务执行的方法,包括:
接收用户发送的业务请求;
根据所述业务请求,确定所述业务请求对应的业务,作为目标业务;
根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件;
针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件;
根据各配置后中间件,对所述目标业务进行业务执行。
可选地,根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件,具体包括:
确定执行所述目标业务所涉及的中间件,作为目标中间件;
从所述目标中间件中确定出还未配置的中间件,作为待配置中间件。
可选地,根据各配置后中间件,对所述目标业务进行业务执行之前,所述方法还包括:
从所述目标中间件中确定出除所述至少一个待配置中间件以外的已部署中间件;
根据各配置后中间件,对所述目标业务进行业务执行,具体包括:
将所述各配置后中间件进行部署,并根据所述已部署中间件以及所述各配置后中间件,对所述目标业务进行业务执行。
可选地,确定除所述至少一个待配置中间件以外的已部署中间件,具体包括:
确定预先缓存的各中间件;
针对每个目标中间件,若预先缓存的各中间件中包含有该目标中间件,确定该目标中间件为已部署中间件。
可选地,根据所述已部署中间件以及所述各配置后中间件,对所述目标业务进行业务执行之前,所述方法还包括:
确定所述已部署中间件的中间件标识;
根据所述中间件标识,从所述存储中心中查询所述已部署中间件对应的中间件代码和/或中间件配置数据是否存在数据更新;
若是,通过所述存储中心中存储的所述已部署中间件对应的中间件代码以及中间件配置数据,对所述已部署中间件进行更新。
可选地,针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,具体包括:
针对每个待配置中间件,确定该待配置中间件对应的标识符;
将所述标识符发送给所述存储中心,以使所述存储中心根据所述标识符、该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,其中,不同中间件对应的标识符不同,标识符用于对不同中间件中相同的自定义变量名称进行区分。
本说明书提供了一种业务执行的系统,包括:存储中心以及业务平台;
所述业务平台,用于接收用户发送的业务请求,根据所述业务请求,确定所述业务请求对应的业务,作为目标业务,根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件,针对每个待配置中间件,向预设的存储中心发送数据获取请求,以从所述存储中心中获取该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,并根据该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,得到配置后中间件,根据各配置后中间件,对所述目标业务进行业务执行;
所述存储中心,用于接收所述业务平台发送的所述数据获取请求,根据所述数据获取请求,查询出所述业务平台需要获取的中间件代码以及中间件配置数据,并将查询出的中间件代码以及中间件配置数据返回给所述业务平台。
可选地,所述存储中心包括:第一子存储中心以及第二子存储中心,所述第一子存储中心中存储有各中间件对应的中间件代码,所述第二子存储中心中存储有各中间件对应的中间件配置数据。
可选地,所述存储中心还用于,针对每个中间件,若监听到该中间件对应的中间件代码发生变更,根据获取到的该中间件对应的变更后中间件代码,对所述第一子存储中心中存储的该中间件对应的中间件代码进行更新;
所述存储中心还用于,针对每个中间件,若监听到该中间件对应的中间件配置数据发生变更,根据获取到的该中间件对应的变更后中间件配置数据,对所述第二子存储中心中存储的该中间件对应的中间件配置数据进行更新。
本说明书提供了一种业务执行的装置,包括:
接收模块,用于接收用户发送的业务请求;
业务模块,用于根据所述业务请求,确定所述业务请求对应的业务,作为目标业务;
确定模块,用于根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件;
配置模块,用于针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件;
执行模块,用于根据各配置后中间件,对所述目标业务进行业务执行。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述业务执行的方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述业务执行的方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的业务执行的方法中,接收用户发送的业务请求,并根据所述业务请求,确定所述业务请求对应的业务,作为目标业务。再根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件。而后,针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件。最后,根据各配置后中间件,对所述目标业务进行业务执行。
从上述方法中可以看出,可以在接收到用户发送的业务请求时,配置出执行该业务请求对应目标业务的中间件,从而降低了中间件与业务之间的耦合性,实现了中间件的动态配置,并且,在确定配置后中间件的过程中,需要将该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据结合,得到配置后中间件,也就是说,将中间件代码或中间件配置数据进行分离,这样可以分别对中间件代码或中间件配置数据进行修改,避免了增删改中间件时繁琐的过程,使开发人员节省了大量的时间,提高了工作效率。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书实施例提供的一种业务执行的方法的流程示意图;
图2为本说明书实施例提供的一种业务平台与存储中心处理过程的示意图;
图3为本说明书实施例提供的一种业务执行的装置的结构示意图;
图4为本说明书实施例提供的电子设备的结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
在本说明书实施例中,将用户发送的业务请求对应的业务,作为目标业务,执行该目标业务需要对该目标业务对应的中间件进行配置,再根据配置后的中间件对该目标业务进行业务执行。所以,下面将先介绍对执行目标业务所对应的待配置中间件进行配置,得到配置后中间件,并对目标业务进行业务执行的过程,如图1所示。
图1为本说明书实施例提供的一种业务执行的方法的流程示意图,具体包括以下步骤:
S100:接收用户发送的业务请求。
在本说明书实施例中,业务平台可以接收用户发送的业务请求。其中,用户发送业务请求时所用的终端设备可以是诸如手机、平板电脑等终端设备,而对业务请求进行业务执行的执行主体可以是业务平台、服务器等。为了便于描述,下面仅以业务平台为执行主体,对本说明书提供的一种业务执行的方法进行说明。
S102:根据所述业务请求,确定所述业务请求对应的业务,作为目标业务。
S104:根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件。
在本说明书实施例中,每个业务请求对应一个业务,所以,业务平台在接收到该业务请求后,可以根据该业务请求,确定该业务请求对应的业务,作为目标业务,这里提到的目标业务可以是任意业务,如网上购物业务,网约车业务,外卖订购业务等。
其中,该目标业务可以有多个目标中间件对该目标业务进行业务执行,这里的目标中间件是指执行目标业务时所涉及的中间件,不同的目标中间件在该目标业务执行的过程中提供不同的业务功能,所以,业务平台在根据该业务请求执行该目标业务之前,需要先确定出该目标业务对应的多个目标中间件。
对于该目标业务所对应的多个目标中间件来说,有些目标中间件可能已经完成了配置并部署在业务平台中,而有些可能还未进行配置,所以,目标中间件中还未配置的中间件可以称之为待配置中间件,目标中间件中除待配置中间件以外的中间件可以称之为已部署中间件。业务平台中预先缓存的部分中间件,可以是业务平台在历史上执行业务时所配置出的。所以,若预先缓存的中间件中包含有该目标业务对应的目标中间件(即,已部署中间件),则可以直接获取到已部署中间件。
S106:针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件。
在本说明书实施例中,存储中心预先存储中间件代码以及中间件代码对应的中间件配置数据,该预先存储中间件代码以及中间件代码对应的中间件配置数据可以是开发人员预先存储在存储中心的。即,开发人员可以根据实际的业务需求,开发出业务执行过程中涉及的中间件所对应的中间件代码及中间件配置数据,并将中间件代码以及中间件配置数据上传到存储中间中进行存储。其中,一个中间件对应的中间件代码以及中间件配置数据包含有相同的中间件标识信息。后续在配置中间件时,可以根据待配置中间件的中间件标识,从存储中间中确定出将该中间件标识对应的中间件代码以及中间件配置数据,以配置出该待配置中间件。
对于一个中间件来说,该中间件对应的中间件代码可以用于体现该中间件在进行数据处理时的业务逻辑,而该中间件对应的中间件配置数据可以用于体现该中间件需要处理的数据的具体类型。而从上述可以看出,由于同一中间件的中间件代码和中间件配置数据可以在存储中间分开存储,所以,开发人员对一个中间件进行更改时,可以根据实际需求,只对该中间件的中间件代码或是中间件配置数据进行更改,这样将极大的提高开发人员针对中间件的更新效率。
在实际应用中,中间件代码中的变量名称往往是开发人员自定义的,所以,存储中心中的不同中间件对应的中间件代码中可能包含有相同的变量名称。例如,开发人员将中间件1对应的中间件代码中代表用户名称的变量名称设置为name,将中间件2对应的中间件代码中代表业务名称的变量名称设置为name,两者的变量名称相同,但可以看出,这两个变量名称所代表的意义不同。所以,若是不对不同中间件中相同的变量名称进行区分,则若是上述目标业务涉及有包含相同变量名称的不同中间件,业务平台可能在执行该目标业务的过程中出现执行错误。
为了避免上述情况的发生,业务平台可以针对每个待配置中间件,确定该待配置中间件对应的标识符,并通过标识符对不同中间件中相同的自定义变量名称进行区分。其中,可以在中间件对应的中间件代码的所有变量名称前添加该中间件对应的标识符,也可以先确定不同中间件中相同的变量名称,再对不同中间件中相同的变量名称前添加对应的中间件的标识符,对变量名称进行区分。
若是中间件的配置由存储中心来完成,则业务平台可以根据目标业务所对应的至少一个待配置中间件,确定该待配置中间件的标识符,并将待配置中间件的标识符发送给存储中心。存储中心接收到待配置中间件的标识符后,可以先查询出该待配置中间件的中间件代码以及中间件配置数据,并根据该待配置中间件的标识符、查找到该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置。而后,将配置完的中间件再返回给业务平台。
当然,中间件的配置也可以由业务平台来完成。具体的,存储中间可以将查询出的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据发送给业务平台,业务平台可以根据该待配置中间件的标识符,获取到的该待配置中间件的中间件代码以及中间件配置数据,对该待配置中间件进行配置。
在本说明书实施例中,一个中间件的标识符可以是预先设置的,即,可以预先针对每个中间件,设置相应的标识符,不同中间件的标识符不同。当然,也可以在接收到用户发送的业务请求后,根据该用户的不同类型的用户数据,来创建出该目标业务涉及的不同目标中间件的标识符。需要说明的是,若是需要基于用户发送的业务请求确定中间件的标识符,则在通过配置出的中间件完成上述目标业务后,可以将配置出的这些中间件删除,这是因为,通过这种方式配置出的中间件,往往只适用于该用户此次发送的业务请求。
S108:根据各配置后中间件,对所述目标业务进行业务执行。
业务平台获取到目标业务对应的各配置后中间件,根据各配置后中间件,对目标业务进行业务执行。其中,业务平台确定执行目标业务所涉及的中间件,作为目标中间件。该目标中间件包含有待配置中间件与已部署中间件,将各配置后中间件进行部署,并根据已部署中间件以及各配置后中间件,对目标业务进行业务执行。
需要说明的是,在根据已部署中间件以及各配置后中间件,对目标业务进行业务执行之前,将已部署中间件的中间件标识发送给存储中心,存储中心根据中间件标识查询已部署中间件对应的中间件代码和/或中间件配置数据是否存在数据更新。若是,存储中心中将存储的已部署中间件对应的中间件代码以及中间件配置数据发送给业务平台,以使业务平台对已部署中间件进行更新。
在本说明书实施例中,中间件涉及的数据更新可以是开发人员预先上传已部署中间件对应的新版本中间件的中间件代码和/或中间件配置数据来实现的,也可以是开发人员对已部署中间件对应的中间件代码和/或中间件配置数据通过在线修改的方式实现的。
从上述过程中可以看出,业务平台在接收到用户发送的业务请求时,配置出执行该业务请求对应目标业务的中间件,即,业务执行过程中涉及的中间件无需事先配置出,而是可以在业务执行过程中实时配置相应的中间件,这样将极大的降低中间件与业务之间的耦合性,实现了中间件的动态配置。并且,由于存储中心将中间件代码和中间件配置数据分别进行存储,这样使得开发人员可以分别对中间件代码或中间件配置数据进行修改,简化了增删改中间件的过程,使开发人员节省了大量的时间,提高了工作效率。
本说明书实施例中业务平台处理客户端发送的请求时,业务平台与存储中心之间的处理过程,具体过程如图2所示。
图2为本说明书实施例提供的一种业务平台与存储中心处理过程的示意图。
本说明书实施例中,存储中心与业务平台组成了一种业务执行的系统。在该系统中,业务平台中包含有业务执行模块以及业务维护模块,业务执行模块中包含有至少一个中间件,业务维护模块可以包含有缓存模块、更新模块、标识模块。
在该系统中,业务平台在接收到用户通过客户端发送的业务请求后,可以根据业务请求,确定业务请求对应的业务,作为目标业务。而后,可以根据目标业务,确定执行目标业务所对应的至少一个待配置中间件,这些待配置中间件即是需要配置在业务执行模块中的中间件。业务平台可以针对每个待配置中间件,向预设的存储中心发送数据获取请求,以从存储中心中获取该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,并根据该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,得到配置后中间件,并将配置后中间件部署在业务执行模块中,以对目标业务进行业务执行。
对于存储中心来说,存储中心在接收业务平台发送的数据获取请求后,可以根据数据获取请求,查询出业务平台需要获取的中间件代码以及中间件配置数据,并将查询出的中间件代码以及中间件配置数据返回给业务平台。
其中,存储中心包括:第一子存储中心以及第二子存储中心,第一子存储中心中存储有各中间件对应的中间件代码,第二子存储中心中存储有各中间件对应的中间件配置数据。而在对各中间件进行管理和维护的过程中,存储中心还需要对中间件的中间件代码以及中间件配置数据进行及时的更新。具体的,针对存储中间管理的每个中间件,存储中心若监听到该中间件对应的中间件代码发生变更,可以根据获取到的该中间件对应的变更后中间件代码,对第一子存储中心中存储的该中间件对应的中间件代码进行更新。而在监听到该中间件对应的中间件配置数据发生变更时,则可以根据获取到的该中间件对应的变更后中间件配置数据,对第二子存储中心中存储的该中间件对应的中间件配置数据进行更新。
在本说明书实施例中,业务平台通过缓存模块缓存一些中间件,缓存的中间件可以是业务平台之前进行业务执行时所配置出的中间件,也可以是预设的始终缓存的中间件。相应的,业务平台在配置目标业务对应的中间件时,可以先查询是否缓存有该目标业务对应的目标中间件,对于缓存的目标中间件,可以将其作为已部署中间件直接进行调用。而对于未缓存的目标中间件,在可以将其作为待配置中间件,并根据从存储中心中查询出的该待配置中间件对应的中间件代码以及中间件配置数据,配置出该待配置中间件。
对于业务维护模块中包含的标识模块来说,业务平台可以通过该标识模块,确定出上述待配置中间件的标识符,并根据该待配置中间件的标识符、从存储中心查询出的该待配置中间件的中间件代码以及中间件配置数据,配置出该待配置中间件。
对于业务维护模块中包含的更新模块来说,业务平台在执行该目标业务之前,可以通过该更新模块,将从缓存中确定出的已部署中间件的中间件标识发送给存储中心,存储中心根据各中间件标识查询各已部署中间件对应的中间件代码和/或中间件配置数据是否存在数据更新,若是,存储中心中将存储的已部署中间件对应的中间件代码以及中间件配置数据发送给业务平台,以使业务平台对已部署中间件进行更新。
在业务执行过程中,业务执行模块中的各个目标中间件需要依次处理该业务请求,目标中间件在处理业务请求的过程中,可以基于该业务请求获取相应的业务信息,并对业务信息进行修改。通过各目标中间件处理完成该业务请求后,业务处理结果会按照各个目标中间件处理顺序依次返回,并将最终的业务处理结果发送给客户端。其中,上述业务执行模块中目标中间件的数据方式可以是web框架下的Koa,也可以是web框架下的Koa2,亦或是web框架下的Express等方式。本说明书不对中间件所采用的具体数据处理方式进行限定。
当然,中间件的配置也可以由存储中心来完成,即,业务平台在确定出待配置中间件的中间件标识信息后,可以将中间件标识信息发送给存储中心,以向存储中心请求相应的中间件。存储中心根据该中间件标识信息,在第一存储中心中查找该中间件标识信息对应的中间件代码,以及在第二存储中心中查找该中间件标识信息对应的中间件配置数据。存储中心可以根据确定出的该待配置中间件对应的标识符、该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,并将配置完成的中间件发送给业务平台。而业务平台在接收配置完成的中间件后,可以将该配置后中间件以及已部署中间件按照目标业务的执行顺序进行排序,并通过这些中间件执行该目标业务。
从上述内容可以看出,由于存储中心可以将中间件的中间件代码以及中间配置数据分别存储在第一存储中心、第二存储中心,这使得开发人员在对中间件进行修改时,可以简化了中间件的修改过程,使开发人员节省了大量的时间,提高了中间件的维护效率。
以上为本说明书的一个或多个实施例提供的业务执行的方法,基于同样的思路,本说明书还提供了相应的业务执行的装置,如图3所示。
图3为本说明书实施例提供的一种业务执行的装置的结构示意图,具体包括:
接收模块300,用于接收用户发送的业务请求;
业务模块302,用于根据所述业务请求,确定所述业务请求对应的业务,作为目标业务;
确定模块304,用于根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件;
配置模块306,用于针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件;
执行模块308,用于根据各配置后中间件,对所述目标业务进行业务执行。
可选地,所述确定模块304具体用于,确定执行所述目标业务所涉及的中间件,作为目标中间件,从所述目标中间件中确定出还未配置的中间件,作为待配置中间件。
可选地,所述配置模块306具体用于,从所述目标中间件中确定出除所述至少一个待配置中间件以外的已部署中间件,将所述各配置后中间件进行部署,并根据所述已部署中间件以及所述各配置后中间件,对所述目标业务进行业务执行。
可选地,所述配置模块306具体用于,确定预先缓存的各中间件,针对每个目标中间件,若预先缓存的各中间件中包含有该目标中间件,确定该目标中间件为已部署中间件。
可选地,所述配置模块306具体用于,确定所述已部署中间件的中间件标识,根据所述中间件标识,从所述存储中心中查询所述已部署中间件对应的中间件代码和/或中间件配置数据是否存在数据更新,若是,通过所述存储中心中存储的所述已部署中间件对应的中间件代码以及中间件配置数据,对所述已部署中间件进行更新。
可选地,所述配置模块306具体用于,针对每个待配置中间件,确定该待配置中间件对应的标识符,将所述标识符发送给所述存储中心,以使所述存储中心根据所述标识符、该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,其中,不同中间件对应的标识符不同,标识符用于对不同中间件中相同的自定义变量名称进行区分。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的业务执行的方法。
本说明书还提供了图4所示的电子设备的结构示意图。如图4所述,在硬件层面,该业务执行的方法的设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的业务执行的方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (12)

1.一种业务执行的方法,其特征在于,包括:
接收用户发送的业务请求;
根据所述业务请求,确定所述业务请求对应的业务,作为目标业务;
根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件;
针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件;
根据各配置后中间件,对所述目标业务进行业务执行。
2.如权利要求1所述的方法,其特征在于,根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件,具体包括:
确定执行所述目标业务所涉及的中间件,作为目标中间件;
从所述目标中间件中确定出还未配置的中间件,作为待配置中间件。
3.如权利要求2所述的方法,其特征在于,根据各配置后中间件,对所述目标业务进行业务执行之前,所述方法还包括:
从所述目标中间件中确定出除所述至少一个待配置中间件以外的已部署中间件;
根据各配置后中间件,对所述目标业务进行业务执行,具体包括:
将所述各配置后中间件进行部署,并根据所述已部署中间件以及所述各配置后中间件,对所述目标业务进行业务执行。
4.如权利要求3所述的方法,其特征在于,确定除所述至少一个待配置中间件以外的已部署中间件,具体包括:
确定预先缓存的各中间件;
针对每个目标中间件,若预先缓存的各中间件中包含有该目标中间件,确定该目标中间件为已部署中间件。
5.如权利要求3所述的方法,其特征在于,根据所述已部署中间件以及所述各配置后中间件,对所述目标业务进行业务执行之前,所述方法还包括:
确定所述已部署中间件的中间件标识;
根据所述中间件标识,从所述存储中心中查询所述已部署中间件对应的中间件代码和/或中间件配置数据是否存在数据更新;
若是,通过所述存储中心中存储的所述已部署中间件对应的中间件代码以及中间件配置数据,对所述已部署中间件进行更新。
6.如权利要求1所述的方法,其特征在于,针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,具体包括:
针对每个待配置中间件,确定该待配置中间件对应的标识符;
将所述标识符发送给所述存储中心,以使所述存储中心根据所述标识符、该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,其中,不同中间件对应的标识符不同,标识符用于对不同中间件中相同的自定义变量名称进行区分。
7.一种业务执行的系统,其特征在于,包括:存储中心以及业务平台;
所述业务平台,用于接收用户发送的业务请求,根据所述业务请求,确定所述业务请求对应的业务,作为目标业务,根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件,针对每个待配置中间件,向预设的存储中心发送数据获取请求,以从所述存储中心中获取该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,并根据该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据,对该待配置中间件进行配置,得到配置后中间件,根据各配置后中间件,对所述目标业务进行业务执行;
所述存储中心,用于接收所述业务平台发送的所述数据获取请求,根据所述数据获取请求,查询出所述业务平台需要获取的中间件代码以及中间件配置数据,并将查询出的中间件代码以及中间件配置数据返回给所述业务平台。
8.如权利要求7所述的系统,其特征在于,所述存储中心包括:第一子存储中心以及第二子存储中心,所述第一子存储中心中存储有各中间件对应的中间件代码,所述第二子存储中心中存储有各中间件对应的中间件配置数据。
9.如权利要求8所述的系统,其特征在于,所述存储中心还用于,针对每个中间件,若监听到该中间件对应的中间件代码发生变更,根据获取到的该中间件对应的变更后中间件代码,对所述第一子存储中心中存储的该中间件对应的中间件代码进行更新;
所述存储中心还用于,针对每个中间件,若监听到该中间件对应的中间件配置数据发生变更,根据获取到的该中间件对应的变更后中间件配置数据,对所述第二子存储中心中存储的该中间件对应的中间件配置数据进行更新。
10.一种业务执行的装置,其特征在于,包括:
接收模块,用于接收用户发送的业务请求;
业务模块,用于根据所述业务请求,确定所述业务请求对应的业务,作为目标业务;
确定模块,用于根据所述目标业务,确定执行所述目标业务所对应的至少一个待配置中间件;
配置模块,用于针对每个待配置中间件,通过预设的存储中心中存储的该待配置中间件对应的中间件代码以及该待配置中间件对应的中间件配置数据配置该待配置中间件,得到配置后中间件;
执行模块,用于根据各配置后中间件,对所述目标业务进行业务执行。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~6任一项所述的方法。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~6任一项所述的方法。
CN202011488555.7A 2020-12-16 2020-12-16 一种业务执行的方法以及装置 Pending CN112596780A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011488555.7A CN112596780A (zh) 2020-12-16 2020-12-16 一种业务执行的方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011488555.7A CN112596780A (zh) 2020-12-16 2020-12-16 一种业务执行的方法以及装置

Publications (1)

Publication Number Publication Date
CN112596780A true CN112596780A (zh) 2021-04-02

Family

ID=75196428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011488555.7A Pending CN112596780A (zh) 2020-12-16 2020-12-16 一种业务执行的方法以及装置

Country Status (1)

Country Link
CN (1) CN112596780A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434228A (zh) * 2021-06-21 2021-09-24 青岛海尔科技有限公司 页面的请求方法、装置、存储介质及电子装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434228A (zh) * 2021-06-21 2021-09-24 青岛海尔科技有限公司 页面的请求方法、装置、存储介质及电子装置

Similar Documents

Publication Publication Date Title
CN108958796B (zh) 业务请求处理方法及装置、业务请求处理系统
CN108418851B (zh) 策略发布系统、方法、装置及设备
CN108959341B (zh) 一种数据同步的方法、装置及设备
CN108848244B (zh) 一种分页显示的方法及装置
CN111796823A (zh) 页面更新、页面展示的方法、装置及页面维护系统
CN108268289B (zh) web应用的参数配置方法、装置及系统
CN112631679B (zh) 一种微应用的预加载方法及装置
CN110633096B (zh) 节点控制方法及装置、版本控制方法及装置、分布式系统
CN113254163B (zh) 区块链数据的处理方法及装置
CN110430255A (zh) 分布式集群中服务请求的处理方法、系统以及电子设备
CN112597013A (zh) 一种在线开发以及调试方法及装置
CN111273965B (zh) 一种容器应用启动方法、系统、装置及电子设备
CN115617799A (zh) 一种数据存储的方法、装置、设备及存储介质
CN114648303A (zh) 一种业务执行的方法及装置
CN108989072B (zh) 一种部署、管理及调用组件的方法及装置
CN110427237B (zh) 一种跨应用访问目标页面的方法、装置及电子设备
CN111338655A (zh) 一种安装包分发方法和系统
CN111538667A (zh) 一种页面测试的方法及装置
CN112596780A (zh) 一种业务执行的方法以及装置
CN112181979A (zh) 一种数据更新方法、装置、存储介质及电子设备
CN109582388B (zh) 一种参数配置方法、装置及设备
CN111309737A (zh) 名单查询方法、装置及设备
CN110502551A (zh) 数据读写方法、系统及架构组件
CN110874322A (zh) 一种用于应用程序的测试方法及测试服务器
CN111339117B (zh) 数据处理方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination