[发明专利]业务请求处理方法及装置、业务请求处理系统有效
申请号: | 201710367400.X | 申请日: | 2017-05-23 |
公开(公告)号: | CN108958796B | 公开(公告)日: | 2023-08-04 |
发明(设计)人: | 袁自诚 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 开曼群岛大开曼岛*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 业务 请求 处理 方法 装置 系统 | ||
1.一种业务请求处理方法,包括:
流程引擎接收请求端发送的携带请求参数值的业务请求;
流程引擎根据流程模板文件,确定与所述业务请求中携带的请求参数值对应的包含至少一个流程对象的目标流程模板,所述流程模板文件包含预先确定的流程模板和请求参数值的对应关系;
流程引擎从代码组件容器中获取与所述目标流程模板中的各流程对象对应的业务代码并加载,所述代码组件容器存放有预先抽取的通用代码组件和个性化代码组件,所述代码组件容器中的代码通过动态部署方式进行更新;
其中,所述代码组件容器包括存放有通用代码组件的静态组件容器和存放有个性化代码组件的动态组件容器;所述流程引擎从代码组件容器中获得与所述目标流程模板中的各流程对象对应的业务代码包括:
流程引擎根据所述目标流程模板中包含的各流程对象,确定实现该目标流程模板所需要的通用代码组件及个性化代码组件;
流程引擎从所述静态组件容器中获取所述通用代码组件;
流程引擎从所述动态组件容器中获取所述个性化代码组件;
流程引擎按照所述目标流程模板中流程对象的顺序依次执行所述业务代码,获得执行结果并返回至所述请求端。
2.根据权利要求1所述的方法,所述动态组件容器中的代码通过动态部署方式进行更新。
3.根据权利要求1所述的方法,所述方法还包括:
当所述动态组件容器中的目标代码被至少两个业务场景复用时,将该目标代码从所述动态组件容器转移至所述静态组件容器中。
4.根据权利要求1所述的方法,在确定目标流程模板之后,在从代码组件容器中获取业务代码之前,所述方法还包括:
流程引擎实例化所述目标流程模板中包含的各流程对象。
5.根据权利要求1所述的方法,所述通用代码组件为打包的JAVA代码,所述个性化代码组件为需要动态加载的JAVA类、和/或动态脚本、和/或EL表达式。
6.一种业务请求处理装置,应用于流程引擎中,该装置包括请求接收单元、流程模板确定单元、代码获取单元及代码执行单元,其中:
所述请求接收单元接收请求端发送的携带请求参数值的业务请求;
所述流程模板确定单元根据流程模板文件,确定与所述业务请求中携带的请求参数值对应的包含至少一个流程对象的目标流程模板,所述流程模板文件包含预先确定的流程模板和请求参数值的对应关系;
所述代码获取单元从代码组件容器中获取与所述目标流程模板中的各流程对象对应的业务代码并加载,所述代码组件容器存放有预先抽取的通用代码组件和个性化代码组件,所述代码组件容器中的代码通过动态部署方式进行更新;
其中,所述代码组件容器包括存放有通用代码组件的静态组件容器和存放有个性化代码组件的动态组件容器;所述代码获取单元包括:
确定子单元,根据所述目标流程模板中包含的各流程对象,确定实现该目标流程模板所需要的通用代码组件及个性化代码组件;
第一获取子单元,从所述静态组件容器中获取所述通用代码组件;
第二获取子单元,从所述动态组件容器中获取所述个性化代码组件;
所述代码执行单元按照所述目标流程模板中流程对象的顺序依次执行所述业务代码,获得执行结果并返回至所述请求端。
7.根据权利要求6所述的装置,所述动态组件容器中的代码通过动态部署方式进行更新。
8.根据权利要求6所述的装置,所述装置还包括:
代码转移单元,当所述动态组件容器中的目标代码被至少两个业务场景复用时,将该目标代码从所述动态组件容器转移至所述静态组件容器中。
9.根据权利要求6所述的装置,所述装置还包括:
实例化单元,实例化所述目标流程模板中包含的各流程对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710367400.X/1.html,转载请声明来源钻瓜专利网。