掌桥专利:专业的专利平台
掌桥专利
首页

对业务的网络转发处理方法、相关设备和存储介质

文献发布时间:2024-04-18 19:58:21


对业务的网络转发处理方法、相关设备和存储介质

技术领域

本申请涉及计算机技术领域,尤其涉及一种对业务的网络转发处理方法、相关设备和存储介质。

背景技术

随着计算机技术的发展,对于传统业务数据转发来说,需要产品经理给出一个业务的业务数据转发需求,然后开发人员根据业务数据转发需求出发,对业务的业务数据转发过程进行需求分析,拆解,然后设计处理该业务的数据库表,最后基于该数据库表编写相应的代码来实现该业务的业务数据转发。这样形式设计出来的代码,与当前业务紧耦合,一旦当前业务的业务转发需求出现变化,就可能重新调整个代码才能重新进行业务的业务数据转发,导致业务转发效率低下。

发明内容

本申请实施例提供了一种对业务的网络转发处理方法、相关设备和存储介质,可以提高业务的网络转发处理的效率。

一方面,本申请实施例提供了一种对业务的网络转发处理方法,应用于网络控制器,所述网络控制器用于为业务项目集合中的各业务项目提供网络服务,所述网络控制器包括接口层、应用层、对象层,在所述对象层中配置了多个网络处理对象,所述网络处理对象用于对所述业务项目集合中的业务项目产生的业务数据进行网络转发处理,该方法包括:

响应于在所述接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;

通过所述应用层对所述目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取所述网络处理对象集合对所述目标业务数据进行网络转发处理的处理逻辑编排指令;

通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理;

其中,所述处理逻辑编排指令包括:对所述目标业务数据进行网络转发处理时所述网络处理对象集合中各目标网络处理对象的执行顺序。

一方面,本申请实施例提供了一种对业务的网络转发处理装置,应用于网络控制器,所述网络控制器用于为业务项目集合中的各业务项目提供网络服务,所述网络控制器包括接口层、应用层、对象层,在所述对象层中配置了多个网络处理对象,所述网络处理对象用于对所述业务项目集合中的业务项目产生的业务数据进行网络转发处理,该装置包括:

接收单元,用于在接口层接收针对目标业务项目的业务请求;

处理单元,用于响应于在所述接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;

所述处理单元,还用于通过所述应用层对所述目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取所述网络处理对象集合对所述目标业务数据进行网络转发处理的处理逻辑编排指令;

所述处理单元,还用于通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理;

其中,所述处理逻辑编排指令包括:对所述目标业务数据进行网络转发处理时所述网络处理对象集合中各目标网络处理对象的执行顺序。

一方面,本申请实施例提供一种计算机设备,该计算机设备包括:

处理器,适用于执行计算机程序;

计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时,实现如上述的对业务的网络转发处理方法。

一方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器加载并执行如上述对业务的网络转发处理方法。

一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述对业务的网络转发处理方法。

在本申请实施例中,响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令;通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理,通过确定网络处理对象集合,并在对象层基于网络处理对象集合中各目标网络处理对象的执行顺序直接对目标业务数据进行网络转发处理,无需编写代码实现对该目标业务数据的网络转发处理,提高了业务的网络转发处理的效率。

附图说明

图1a是本申请实施例提供的一种区域模型建模示意图;

图1b是本申请实施例提供的一种对象层处于核心位置的示意图;

图1c是本申请实施例提供的一种网络控制器的结构示意图;

图1d是本申请实施例提供的另一种区域模型建模示意图;

图1e是本申请实施例提供的一种网络控制器中对象层的构建示意图;

图2是发明实施例提供的一种对业务的网络转发处理方法的流程示意图;

图3a是发明实施例提供的一种业务项目A的业务数据的网络转发流程;

图3b是发明实施例提供的一种业务项目B的业务数据的网络转发流程;

图3c是本申请实施例提供的一种业务项目A和业务项目B存在共同的网络处理对象的示意图;

图4是本申请实施例提供的一种抽象实体对象的示意图;

图5是本申请实施例提供的一种实体对象描述服务的属性值和行为方法的示意图;

图6是本申请实施例提供的一种构建组合对象的示意图;

图7是本申请实施例提供的另一种对业务的网络转发处理方法的流程示意图;

图8是本申请实施例提供的一种在对象层设置依赖反转层的示意图。

图9是本申请实施例提供的一种对业务的网络转发处理装置的结构示意图;

图10是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

(1)云计算(cloud computing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。

随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。

(2)云存储

云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。

目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。

存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。

(3)在软件设计或软件开发时,一般分为:瀑布式或者敏捷式。所谓瀑布式是指项目经理经过大量的业务分析后,会基于现有需求整理出一个基本模型,再将结果传递给开发人员,这就是开发人员的需求文档,他们只需要照此开发便是。这种模式下,是很难频繁的从用户那里得到反馈,因此在前期分析时就已经默认了这个业务模型是正确的,那么结果可想而之,数月甚至数年后交付的时候,必然和客户的预期差距较大。敏捷式是指:在进行处理时同样需要大量的分析,范围会设计到更精细的业务模块,它是小步迭代,周期性交付,那么获取客户的反馈也就比较频繁和及时。可敏捷也不能够将业务中的方方面面都考虑到,并且敏捷是拥抱变化的,大量的需求或者业务模型变更必将带来不小的维护成本,同时,对开发人员的要求也必然会更高。

而在本申请实施例中,领域驱动设计相较于瀑布式和敏捷式,是一种更小粒度的迭代设计,该领域驱动设计中的最小单元可以是:区域模型(Domain Model),所谓区域模型就是能够精确反映区域中某一知识元素的载体,这种知识的获取需要通过与专家(DomainExpert)进行频繁的沟通才能将专业知识转化为区域模型。区域模型无关技术,具有高度的业务抽象性,区域模型能够精确的描述区域中的知识体系;同时也是独立的,还需要学会如何让区域模型具有表达性,让区域模型彼此之间建立关系,形成完整的区域架构。通常可以用象形图或一种统一语言(Ubiquitous Language)去描述区域模型之间的关系。在此之上,可以进行区域中的代码设计(Domain Code Design)。

其中,领域驱动设计的核心是建立区域模型,该区域模型就是具体某个业务场景所要研究的现实世界的一块,区域模型可以如图1a,可以是将所要研究的现实世界进行合理抽象,抽象成虚拟对象形成区域对象。

在本申请实施例中,基于领域驱动设计思想设计了一种网络控制器层级划分优化方案,实现了代码组织结构层面指导网络控制器的对象设计,该网络控制器可以用于为业务项目集合中的各业务项目提供网络服务。为了更好地进行对象设计,在设计网络控制器时如图1b所示,以对象层为核心,将数据库服务、数据缓存服务、组件、框架等围绕该对象层来搭建,从而达到构建网络控制器的目的。

通过上述方式,可以基于领域驱动设计思想设计四层软件架构、实体对象的构建与方法填充(即为实体对象构建行为方法)、组合对象的构建、依赖反转层的引入,以达到构建网络控制器平台化对象层的目的,这样可以提高了网络控制器的可复用性、健壮性、可维护性,提升了对业务的业务数据的网络转发处理效率。将网络控制器由传统的三层结构(即如图1c中,传统网络控制器11的三层结构分别为应用接口层、业务逻辑层和数据层)进行演变得到的四层软件结构,在这四层软件结构中,最核心的地方在对象层,对象层中的重要部分为网络处理对象,网络处理对象的出现可以指导开发人员更加地进行对象的设计,通过该网络控制器的四层架构可以将传统网络控制器依靠数据驱动改为对象驱动,通过这种方式可以解决代码对外部数据库依赖严重,而中间的业务逻辑层包含了大量的业务代码,跟业务场景强相关的问题。其中,本申请实施例提供的网络控制器可以如图1c所示,网络控制器12可以包括:接口层、应用层、对象层和数据支持层:

①接口层:将传统网络控制器中的应用接口层和业务逻辑层中的对外部分划入了接口层,该接口层包括应用程序接口和数据传输对象(DTO,Data Transfer Object);该接口层可以负责接收外部发送的业务项目的业务数据、业务数据转发指令等。

②应用层:负责指令转发、对网络转发处理过程中所涉及的网络处理对象的执行顺序进行业务编排,以及将执行顺序和结果进行拼接,将功能托付给对象层实现,应用层中包括应用服务。

③对象层:包含核心网络处理对象以实现具体的业务逻辑,并通过数据支持层来获取需要的数据。在该对象层中可以配置多个网络处理对象,网络处理对象用于对业务项目集合中的业务项目产生的业务数据进行网络转发处理。其中,网络处理对象可以包括以下至少一种:实体对象、数值对象和组合对象。

④数据支持层:为接口层、应用层、对象层中的一种或多种提供数据服务。该数据服务可以包括以下一种或多种:数据库服务、数据缓存服务、第三方接口服务、消息队列服务。

在一个实施例中,对于一个业务项目来说,如图1d所示,可以先对该业务项目的业务数据进行网络转发处理进行区域分析,确定对该业务项目的业务数据进行网络转发处理所需要用到的实体对象,然后对所要用到的实体对象进行区域建模,得到网络处理对象,并完成微服务的划分和对象层代码的实现,最后在利用网络处理对象来支撑生层的具体需求细节。可以理解为:分析对该业务项目的业务数据进行网络转发处理所需要的实体对象,并对实体对象进行建模得到网络处理对象,在对象层实现该网络处理对象的业务处理逻辑。在图1e中,通过构建网络处理对象与服务组成控制器服务平台化的对象层;不同的业务项目可以共用公共的网络处理对象;面对需求新增与变更,只需开发应用层即可,通过对网络处理对象的组合与调度来实现,极大提高开发效率;最终以实现打造平台化的对象层,提高代码的健壮性、可维护性。其中,在图1e中,公共的网络处理对象可以包括但不限于:VSI(虚拟交换接口,Virtual Switch Interface)、GRE(通用路由封装,Generic RoutingEncapsulation)、Vxlan(网络虚拟,Virtual Extensible Local Area Network)、NQA(网络质量分析,Network Quality Analyzer)、IPSEC(Internet Protocol Security,协议包)、PIPE(管道)、LOOpback(环回接口)、VRF(虚拟路由转发,Virtual Routing Forwarding)、BGP(边界网关协议,Border Gateway Protocol)、BFD(双向转发检测,BidirectionalForwarding Detection)、运营商物理专线,互联网通道、租户通道、5G CPE(用户驻地设备,Customer Premise Equipment)。通过DTO可以将接口层的数据发送到应用层,DO(DomainObject)是指网络处理对象,PO(Persistent Object)是指持久化对象,与数据支持层中的数据库、数据缓存、Tsac Caller、SDWAN Caller相关。其中,Caller:调用者,Tsac:一种安全网关SDWAN:软件定义广域网。

在一个实施例中,基于上述网络控制器,本申请实施例提供了一种对业务的网络转发处理方案,该业务的网络转发处理方案的大致原理如下:当需要对业务项目集合中目标业务项目的目标业务数据进行网络转发处理时,首先,通过网络控制器中的接口层接收该目标业务项目的目标业务数据,并通过该网络控制器中的应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合;然后获取该网络处理集合对目标业务数据进行网络转发处理的处理逻辑编排指令,并通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理。

通过上述网络控制器,可以通过区域分析以及区域建模生成对象层中的网络处理对象,该网络处理对象无需经常变更,且该网络处理对象具有内聚的业务逻辑,合理的网络处理对象可以被业务项目集合中的任意一个业务项目进行复用,无需根据业务项目的业务数据的网络转发处理需求编写相应代码,提高了网络控制器中的网络处理对象的可复用性、健壮性、可维护性,提升了业务的网络转发处理的效率。

基于上述对业务的网络转发处理方案,请参见图2,图2为本申请实施例提供的一种对业务网络转发处理方法的流程示意图,该对业务网络转发处理方法可由计算机设备执行,计算机设备中配置有网络控制器,对业务的网络转发处理方法可以应用于网络控制器,该网络控制器可以用于为业务项目集合中的各业务项目提供网络服务。该网络控制器包括接口层、应用层、对象层和数据支持层,在该对象层中配置了多个网络处理对象。该计算机设备可以是终端设备或服务器;上述终端设备可以是包括但不限于智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端、智能可穿戴设备等等;上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。其中,本申请实施例所提供的对业务网络转发处理方法可以包括以下步骤S201-S203:

S201:响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据。业务项目集合可以包括一个或多个业务项目,目标业务项目为业务项目集合中包括的一个或多个业务项目中的任意一个业务项目。业务项目可以是:数据查询项目、数据存储项目等等,例如,当数据查询项目时,该目标业务数据可以是所要查询的业务数据;当业务项目为数据存储项目时,目标业务数据为所要存储的数据。当想要对目标业务项目的目标业务数据进行网络转发处理时,可以向接口层发送针对业务项目的业务请求,该业务请求中携带有待转发的目标业务数据,然后接口层可以响应于接收到的目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据。

在对象层中配置了多个网络处理对象,在该业务项目集合中的任意一个业务项目的业务数据在进行网络转发处理时,均可以在网络控制器中的对象层配置的多个网络处理对象中获取到相应的网络处理对象,即业务项目集合中的业务项目可以复用对象层中配置的多个网络处理对象中的部分或者全部网络处理对象。例如,业务项目集合中包括业务项目A和业务项目B,如图3a和图3b所示,图3a为业务项目A的业务数据进行网络转发处理的过程(资源集1-vECMGW1(虚拟边缘计算机器网关)通过Vxlan将数据集转发到资源集1-vECMGW2(虚拟边缘计算机器网关)),图3b为业务B的业务数据进行网络转发处理的过程(租户侧的业务数据可以通过Ipsec(协议包,Internet Protocol Security)网络转发到运营商侧,并经过运营商侧将该业务数据通过专线发送到互联网侧的ECNPL(ExternalConnection Network.Private Line,外部网络连接.专线),并由ECNPL通过Vxlan将业务数据转发到外网网关EGW)。

业务项目A在网络控制器中所要使用的网络处理对象为Ipsec和网络虚拟Vxlan;业务项目B在网络控制器中所要使的网络处理对象同样为Ipsec和Vxlan。若在网络控制器中的对象层不存在网络处理对象“Ipsec”和“Vxlan”,则如图3c所示,在实际应用过程中在图3c中的区域31表示业务项目A中对于Vxlan定义的属性较少无法满足项目B中的需要,在图3c中的区域32表示业务项目A对于Vxlan与Ipsec在逻辑上存在耦合,这导致业务项目A和业务项目B中相同网络处理对象所对应的实现代码无法复用(即只能各自编写相应代码),若在网络控制器的对象层中配置了网络处理对象“Ipsec”和“Vxlan”,业务项目A和业务项目B均可以复用在对象层中的网络处理对象“Ipsec”和“Vxlan”,这样无需开发人员针对任意一个业务项目的业务数据在进行网络转发处理时都去编写相应的代码实现,减少开发所造成的资源浪费。

其中,对象层配置的网络处理对象可以包括:实体对象、数值对象、组合对象中的任意一种或多种。实体对象可以用于描述在网络转发处理过程中所涉及的节点或服务的属性值和行为方法,实体对象具有唯一标识ID,实体对象具有高内聚低耦合的特点。数值对象用于描述在网络转发处理过程中所涉及到的节点或服务在运行所需要的参数数据,数值对象不具备唯一标识ID。本申请实施例所涉及到的节点例如可以是基站、路由器等,所涉及到的服务例如可以是专用通道、路由、协议包、CPE、IPSEC等等。例如,如图4所示,针对传统业务逻辑层41中的IPSEC来说,传统方式是:在业务逻辑层为业务项目A定义业务对象“使用次数UsageCount”和“边缘计算机器网关标识EcmgwID”,业务对象“UsageCount”和“EcmgwID”是对业务需求的抽象得到;在本申请实施例中,可以将IPSEC中的业务对象“UsageCount”和“EcmgwID”记录到业务项目A所在的应用层42,并对IPSEC进行区域模型的抽象,得到实体对象“IPSEC”以及该实体对象所描述的IPSEC的属性“EncapVrf(封装虚拟路由转发)”“InstanceID(实例ID)”、“CidrPair(无类别域间路由对)”、“DecapVrf(解封装虚拟路由转发)”,并记录到对象层43。在图4中的区域44为一个交集区域,通常在软件开发中,该交集区域中抽象的业务对象与实体对象有一定交集,业务对象是实体对象不完备的抽象,还会添加一些其他业务逻辑,例如,为实体对象“IPSEC”设置AllocateIP(分配IP(网际互连协议,Internet Protocol))和CreatePSK(创建PSK(预共享密钥,pre-shared key))。

在一个实施例中,上述行为方法中可以包括内聚的业务逻辑,属性值可以隐藏在实体对象中。在实际运用时,该行为方法直接对外暴露应包含内聚的业务处理逻辑,并采用目标方法暴露实体对象所描述的节点或服务的属性值,目标方法可以包括以下一种:Getter/Setter方法。其中,Getter方法可以为调用者返回内部的成员变量的值,Setter方法可以用来设置成员变量,在Setter方法过滤掉不合理的值。如图5所示,图5中的51所描述的是IPSEC按照传统面向对象对流程图进行翻译实现的业务处理逻辑,这种容易沦为事务性脚本,可复用性差。而在图5中的52是本申请实施例在确定实体对象“IPSEC”之后,为实体对象“IPSEC”所描述的IPSEC赋予行为方法并在该实体对象中隐藏属性值,其中,该行为方法对外暴露应包含内聚的业务逻辑,并采用方法1(如Setter方法)和方法2(如Getter方法)暴露该属性值。需要说明的是,在网络转发处理过程中实体对象在描述所涉及的节点或服务的行为方法时要适度(即避免过度充血),如果过度,可能会引入对其他实体对象的依赖,造成不必要的耦合。

在一个实施例中,具有高内聚低耦合特点的实体对象能够完成对业务项目的业务数据的网络转发处理,但实体对象与实体对象之间,或者实体对象和值对象之间也会暴露原本不需要关心的细节,且可能会引入了实体对象之间的耦合。例如,在图6中,实体对象所描述的专用通道、路由、IPSEC之间暴露细节,且IPSEC和用户驻地设备之间引入了耦合。针对上述问题,在本申请实施例中,网络处理对象可以包括组合对象,该组合对象是指将一组互相关联的实体对象或者值对象进行聚合得到的,该组合对象可以包括多个实体对象和/或多个值对象,组合对象的数量可以是一个或多个。在进行聚合时要讲究高内聚、可重用、隐藏细节等特性,因此可以在该组合对象中设置有根实体对象,通过根实体对象可以访问相应的组合对象。可理解为:任一组合对象是通过根实体对象来与交互对象进行交互,该交互对象包括:应用层、对象层中的其他组合对象、实体对象、值对象中的任意一种或多种。通过组合对象可以避免暴露过多原本不需要关心的细节,引入实体对象之间不必要的耦合等问题。组合对象只通过核心方法暴露(即暴露根实体对象对应的行为方法),就能够让组合对象所包括的实体对象和/或值对象进行协同工作,实现相应的业务功能。其中,组合对象还可以作为数据修改和持久化的基本单元。

如图6所示,由于实体对象所描述的专用通道、路由、IPSEC和用户驻地设备能够完成业务项目的业务数据的网络转发处理,但暴露了过多的细节,且协议包和用户驻地设备存在一定的耦合,在用户驻地设备中还设置获取标识(GetID(获取ID))。因此可以将网络控制器中的对象层中描述专用通道的实体对象、描述路由的实体对象、描述IPSEC的实体对象以及描述用户驻地设备的实体对象聚合成一个组合对象,并从描述专用通道的实体对象、描述路由的实体对象、描述IPSEC的实体对象和描述用户驻地设备的实体对象中选择一个实体对象作为根实体对象,如可以选择描述用户驻地设备的实体对象作为根实体对象,当然也可以随机选择一个实体对象作为根实体对象,本申请实施例对此不作限定。最终构成的组合对象有如下特点:(1)在组合对象中的其他实体对象和根实体对象具有相同的生命周期;(2)组合对象内具有一套一致的业务规则且具有事务一致性;(3)该组合对象内的实体对象和/或数值对象的数量小于预设值,预设值可以根据需求设置。

在一个实施例中,网络控制器可以配置在网络处理转发的过程中涉及的节点或者服务中。例如,在图3b中,网络控制器配置在用户驻地设备(CPE)中,网络控制器中对象层的网络处理对象可以包括Ipsec,通过该网络处理对象Ipsec可以控制用户驻地设备将目标业务数据转发到运营商的用户平面功能;又例如,网络控制器还可以配置在用户平面功能(UPF,User Plane Function),网络控制器中对象层的网络处理对象可以包括Ipsec(互联网安全协议)、GRE、专线、Ipsec over GRE(使用GRE隧道来封装IPSec隧道)和TSACGW(边缘接入与加速平台网关);通过该网络处理对象Ipsec、通用路由封装GRE和专线可以实现用户平面功能将目标业务数据转发到互联网在5G中的ECNPL。应理解的是,针对任意业务项目而言,该任意业务项目中涉及的节点或服务中均可配置网络控制器,节点或服务中的配置的网络控制器的对象层中所包括的网络处理对象可以相同或者不同。其中,5G基站和用户平面功构成5GC(即5G核心网)

S202:通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令。其中,网络处理对象集合可以包括一个或多个目标网络处理对象,各目标网络处理对象可以用于对目标业务项目产生的目标业务数据进行网络转发处理。处理逻辑编排指令可以包括:对目标业务数据进行网络转发处理时网络处理对象集合中各目标网络处理对象的执行顺序,在一些实施例中处理编辑编排指令中还可以包括执行指令,该执行指令用于触发对象层按照各目标网络处理对象的执行顺序执行该网络处理对象对应的业务处理逻辑。

在一个实施例中,通过接口层可以将目标业务项目的目标业务数据发送给网络控制器中的应用层,然后通过应用层可以接收该目标业务项目的目标业务数据,并对目标业务项目的目标业务数据进行转发分析,得到网络处理对象集合。此处的转发分析可以理解为区域分析,具体是指:分析该业务项目的目标业务数据的网络转发处理流程,以及在该转发处理流程下所需要使用到的网络处理对象。

其中,获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令的具体实现方式可以是:通过应用层获取在对目标业务数据进行网络转发处理时网络处理对象集合包括的各目标网络处理对象的执行顺序,并基于该网络处理对象集合包括的各目标网络处理对象的执行顺序生成处理逻辑编排指令。

S203、通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理。

在一个实施例中,通过网络控制器中的对象层从应用层中获取处理编辑编排指令,处理逻辑编排指令包括:在对目标业务数据进行网络转发处理时网络处理对象集合中各目标网络处理对象的执行顺序,并按照网络处理对象集合中的各目标网络处理对象的执行顺序,依次执行各目标网络处理对象,完成对目标业务项目的目标业务数据的网络转发处理。

在本申请实施例中,响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令;通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理,通过确定网络处理对象集合,并在对象层基于网络处理对象集合中各目标网络处理对象的执行顺序直接对目标业务数据进行网络转发处理,无需编写代码实现对该目标业务数据的网络转发处理,提高了业务的网络转发处理的效率。

基于对业务的网络转发处理方案,请参见图7,图7为本申请实施例提供的一种对业务的网络转发处理方法的流程示意图。对业务的网络转发处理方法可应用计算机设备中配置的网络控制器。该网络控制器可以包括接口层、应用层、对象层、数据支撑层。本申请实施例中,对业务的网络转发处理方法可以包括以下步骤S701-S705:

S701:响应于在所述接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据。

S702:通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令。网络处理对象集合中包括一个或多个目标网络处理对象。

在一个实施例中,在应用层中为业务项目集合配置了项目集合中各个业务项目所对应的处理逻辑模块,一个业务项目可以对应一个或者多个处理逻辑模块。通过配置处理逻辑模块便于确定不同业务项目的业务数据进行网络转发处理的网络处理对象。如图1e所示,在应用层可以预先开发业务项目A对应的处理逻辑模块、业务项目B对应的处理逻辑模块和业务项目C对应的处理逻辑模块。在处理逻辑模块中可以规定该业务项目的目标业务数据进行网络转发处理时的网络处理对象集合、以及网络处理对象中各网络对象处理之间的执行顺序、以及对业务项目的目标业务数据进行网络转发处理得到的处理结果对应的处理逻辑等。通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合的具体实现方式可以是:确定在应用层中为目标业务项目配置的处理逻辑模块(如根据业务项目标识查找对应的处理逻辑模块),并通过应用层中为目标业务项目配置的处理逻辑模块对目标业务数据进行转发分析,得到在对目标业务数据进行网络转发处理时的网络处理对象集合。具体的,可以从为目标业务项目配置的处理逻辑模块中直接获取在对目标业务数据进行网络转发处理时的网络处理对象集合。

在一些实施例中,还可以从为目标业务项目配置的处理逻辑模块中获取网络处理对象集合中各目标网络处理对象的执行顺序,并基于各个网络处理对象的执行顺序生成对目标业务数据进行网络转发处理的处理逻辑编排指令。

S703:通过对象层包括的对象服务从应用层获取处理逻辑编排指令。为了避免对象层直接暴露给应用层,本申请实施例通过对象层中的对象服务为应用层提供服务。当应用层将在对目标业务数据进行网络转发处理时的处理逻辑编排指令交付给对象层时,可以通过对象层包括的对象服务从应用层中获取该处理逻辑编排指令。

S704:根据处理逻辑编排指令确定网络处理对象集合中的各目标网络处理对象的执行顺序。其中,处理逻辑编排指令包括网络处理对象集合中的各目标网络处理对象的执行顺序,可以通过对象服务基于处理逻辑编排指令从对象层配置的多个网络处理对象中确定网络处理对象集合中的各目标网络处理对象,以及各目标网络处理对象的执行顺序。

S705:按照各目标网络处理对象的执行顺序,对目标业务数据进行网络转发处理。其中,任意一个目标对象网络处理对象可以是实体对象、数值对象和组合对象中的任意一种。

在一个实施例中,实体对象用于描述在网络转发处理过程中所涉及的节点或服务的属性值和行为方法。当网络处理对象集合包括多个目标实体对象时,按照各目标网络处理对象的执行顺序,对目标业务数据进行网络转发处理的具体实现方式可以是:按照各个目标实体对象的执行顺序,依次确定各目标实体对象所描述的节点或服务的属性值和行为方法,并依次基于各目标实体对象所描述的节点或服务的属性值执行相应行为方法暴露的业务处理逻辑,完成对目标业务数据的网络转发,业务处理逻辑中定义了对业务数据网络转发的处理过程。

在一个实施例中,数值对象用于描述在网络转发处理过程中所涉及的节点或服务在运行时所需的参数数据,网络处理对象集合中包括目标实体对象和目标数值对象,按照各目标网络处理对象的执行顺序,对目标业务数据进行网络转发处理的具体实现方式可以是:按照目标实体对象的执行顺序,依次确定目标实体对象所描述的节点或服务的属性值和行为方法以及目标数值对象所描述的节点或服务在运行时所需的参数数据,并依次基于所描述的节点或服务在运行时所需的参数数据运行节点或服务,以及基于目标实体对象所描述的节点或服务的属性值执行相应行为方法暴露的业务处理逻辑,完成对目标业务数据的网络转发。

在一个实施例中,网络处理对象集合中包括多个组合对象,按照各目标网络处理对象的执行顺序,对目标业务数据进行网络转发处理的具体实现方式可以是:按照各目标网络对象的执行顺序,依次通过每个组合对象的根实体对象执行该组合对象内部的业务处理逻辑,完成对目标业务数据的网络转发处理。此时,组合对象内部的业务处理逻辑可以包括:各实体对象的业务实体对象与实体对象之间的业务处理逻辑、实体对象和数值对象之间的业务处理逻辑,数值对象与数值对象之间的处理逻辑等等。

其中,在对目标业务数据进行网络转发处理时,若按照处理逻辑编排指令的指示确定了网络处理对象集合的第一组合对象与第二组合对象之间存在数据交互,则通过第一组合对象的根实体对象与第二组合对象的根实体对象进行数据交互。例如图3b所示,网络处理对象集合中的多个组合对象分别为租户通道、5g CPE、运营商物理专线和互联网通道,多个组合对象的执行顺序为:租户通道-5g CPE-运行商物理专线-互联网通道,租户通道与5g CPE之间存在数据交互,5g CPE和运营商物理专线之间存在数据交互,运营商物理专线和互联网络通道存在数据交互,每个组合对象均对应根实体对象。通过对象服务按照租户通道对应的根实体对象执行租户通道内部的业务处理逻辑,并通过租户通道的根实体对象将目标业务数据进行网络转发到5g CPE的根实体对象;接着,根据5gCPE的根实体对象执行5g CPE内部的业务处理逻辑,并通过5g CPE的根实体对象将目标业务数据进行网络转发到运营商物理专线的根实体对象;接着,根据运营商物理专线的根实体对象执行运营商物理专线内部的业务处理逻辑,并通过运营商物理专线的根实体对象将目标业务数据进行网络转发到互联网通道的根实体对象。通过依次执行多个组合对象对应的业务处理逻辑,可以更好地实现该目标业务数据的网络转发处理。

在一个实施例中,网络控制器还包括数据支持层,该数据支持层可以用于为接口层、应用层、对象层中的任意一个或多个提供数据服务。该数据支撑层提供的数据服务可以包括:数据库服务、数据缓存服务、第三方接口服务、消息队列服务中的任意一种或多种,第三方接口服务可以包括:数据查询接口服务、数据通知接口服务(如邮件服务、短信服务)。

区别于传统采用自上向下的依赖,使得基础层(数据层)位于核心位置的方式,本申请实施例提出了将对象层置于最核心位置,为了防止对象层在实现外部数据的依赖,一旦依赖发生了变更,业务代码的耦合导致其必须要修改的问题,本申请实施例可以在对象层中设置了依赖反转层(也可称为防腐层),通过该依赖反转层可以实现依赖反转。如图8所示,当对象层(如对象层中的Dctg service(专线隧道组服务))向下存在对数据支持层的第三方接口服务和数据缓存服务存在外部数据依赖时,此时,可以在对象层中设置依赖反转层,在对业务项目的业务数据进行网络处理转发时,可以在确定网络处理对象集合时,可以向对象层中按照需求注入需要从数据支持层获取的依赖数据。

依赖反转层的实现方式是在对象层中定义其所依赖的组件或服务的接口,即该依赖反转层可以以接口形式呈现。并通过接口注入的方式将外部依赖的接口信息放入网络处理对象中,而具体的实现放在数据支持层中实现,这样当外部依赖的组件、服务发生变更时,只需修改注入的接口信息即可,对于对象层中的业务逻辑完全无需感知。具体的,可以通过接口注入规则将对象层所依赖的组件或服务的接口信息注入到依赖反转层中,该接口注入规则可以是对象层中的一个构造函数,通过该构造函数可以实现接口信息的注入;若对象层中所依赖的组件或服务的接口信息发生变更,则获取变更之后的所述对象层所依赖的组件或服务的接口信息,并将变更之后的接口信息通过该接口注入规则注入到依赖反转层中。在注入变更之后的接口信息可以将原来的组件或服务的接口信息进行覆盖。

在一个实施例中,可以在依赖反转层中设置功能开关来实现不同业务项目场景下的特殊业务需求,业务代码无感知,当功能关闭时,对依赖反转层中的该功能接口的调用返回成功,但不做任何操作。当功能开启时,对依赖反转层中的该功能接口的调用返回成功,并需要执行相应的特殊业务需求的操作。

在一个实施例中,依赖反转层中还设置有缓存,缓存用于存储有依赖数据,依赖数据包括:被对象层成功利用过的依赖数据、预设的依赖数据中的一种或两种的组合。此处被对象层成功利用过的依赖数据可以上一次成功被对象层利用过的依赖数据,或者历史时间段内被对象层成功利用过的依赖数据;预设的依赖数据可以是业务兜底数据或者数据支撑层中的数据服务无法提供的数据。例如,对业务项目的业务数据进行网络转发处理进行测试,但在单测环境中无法部署单元测试这类数据服务,即可以在依赖反转层的缓存中存储该单元测试对应的数据(即预设的依赖数据)。计算机设备可以检测通过对象层从数据支持层获取目标数据服务是否失败,若检测通过对象层从数据支持层获取目标数据服务失败,则从依赖反转层的缓存所存储的依赖数据中,获取目标数据服务对应的依赖数据,并将获取到的依赖数据发送给对象层;若检测通过对象层从数据支持层获取目标数据服务成功,则通过仓库接口将目标数据服务对应的数据发送给对象层。通过在依赖反转层中设置缓存可以有效的降低对于外部依赖的请求压力。其中,没有获取到目标数据服务所提供的依赖数据(即服务数据),就可以认为通过对象层从数据支持层获取目标数据服务失败。

其中,依赖反转层可以用于屏蔽目标类型的依赖数据,该目标类型的依赖数据的接口或者协议不满足预设条件,目标类型可以包括但不限于:数据库类型、第三方接口类型等,预设条件可以是目标接口需求,或者预设条件可以是目标接口协议。此时,检测通过对象层从数据支持层获取目标数据服务是否失败的方式可以是:计算机设备可以检测服务数据是否为目标类型的依赖数据,该服务数据是指通过对象层获取的目标数据服务对应的数据,该数据服务由数据支持层提供。若检测服务数据为目标类型的依赖数据,则可以确定通过对象层从数据支持层获取目标数据服务失败,若检测服务数据为目标类型的依赖数据,则确定通过对象层从数据支持层获取目标数据服务成功。其中,服务数据和依赖数据是属于同类型的数据,都是从数据支持层获取到的、且对象层的网络处理对象所需的数据。

在一个实施例中,在通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理之后,可以通过应用层获取对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理的处理结果,并通过数据支持层中的第三方接口服务输出处理结果。例如,第三方接口为邮件通知接口,可以通过数据支持层中的邮件通知接口通过邮件形式输出该处理结果。

需要说明的是,本申请实施例中所涉及到的区域模型可以称为领域模型,对象层可以称为领域层,网络处理对象可以称为领域对象,数值对象也可称为值对象,组合对象可以称为聚合。

在本申请实施例中,响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据,通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对业务数据进行网络转发处理的处理逻辑编排指令;通过对象层包括的对象服务从应用层获取处理逻辑编排指令;根据处理逻辑编排指令确定网络处理对象集合中的各目标网络处理对象的执行顺序;按照各目标网络处理对象的执行顺序,对目标业务数据进行网络转发处理,通过对象层包括的对象服务以及应用层的处理逻辑编排指令可以快速对业务项目的业务数据进行网络转发处理。

基于上述对业务的网络转发处理方法实施例的描述,本申请实施例还公开了一种对业务的网络转发处理装置,该对业务的网络转发处理装置可以是运行于上述所提及的计算机设备中的一个计算机程序(包括程序代码)。计算机设备中配置了网络控制器,网络控制器用于为业务项目集合中的各业务项目提供网络服务,所述网络控制器包括接口层、应用层、对象层。在所述对象层中配置了多个网络处理对象,所述网络处理对象用于对所述业务项目集合中的业务项目产生的业务数据进行网络转发处理。该对业务的网络转发处理装置可以执行图2和图7所示的方法。请参见图9,对业务的网络转发处理可以包括如下单元:

接收单元901,用于在接口层接收针对目标业务项目的业务请求;

处理单元902,用于响应于在所述接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;

所述处理单元902,还用于通过所述应用层对所述目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取所述网络处理对象集合对所述目标业务数据进行网络转发处理的处理逻辑编排指令;

所述处理单元,还用于通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理;

其中,所述处理逻辑编排指令包括:对所述目标业务数据进行网络转发处理时所述网络处理对象集合中各目标网络处理对象的执行顺序。

在一个实施例中,在所述应用层中配置了业务项目集合中各个业务项目所对应的处理逻辑模块,一个业务项目对应一个或者多个处理逻辑模块,所述处理单元902在通过所述应用层对所述目标业务项目的目标业务数据进行转发分析时,可具体用于:

确定在应用层中为所述目标业务项目配置的处理逻辑模块;

通过所述应用层中为所述目标业务项目配置的处理逻辑模块对所述目标业务数据进行转发分析。

在一个实施例中,所述对象层配置的网络处理对象包括:实体对象、数值对象、组合对象中的任意一种或多种;其中:

所述实体对象用于描述在网络转发处理过程中所涉及的节点或服务的属性值和行为方法;

所述数值对象用于描述在网络转发处理过程中所涉及的节点或服务在运行时所需的参数数据;

所述组合对象包括多个实体对象和/或多个值对象,在所述组合对象中设置有根实体对象,所述组合对象是通过所述根实体对象来与交互对象进行交互,所述交互对象包括:所述应用层、所述对象层中的其他组合对象、实体对象、值对象中的任意一种或多种。

在一个实施例中,所述网络控制器还包括数据支持层,所述数据支持层用于为所述接口层、所述应用层、所述对象层中的任意一个或者多个提供数据服务;

所述数据支持层提供的数据服务包括:数据库服务、数据缓存服务、第三方接口服务、消息队列服务中的任意一种或多种。

在一个实施例中,在所述对象层中设置了依赖反转层,所述处理单元902还用于:

通过接口注入规则将所述对象层所依赖的组件或服务的接口信息注入到所述依赖反转层中;

若所述对象层所依赖的组件或服务的接口信息发生变更,则获取变更之后的所述对象层所依赖的组件或服务的接口信息,并将变更之后的接口信息通过所述接口注入规则注入到所述依赖反转层中。

在一个实施例中,所述依赖反转层中还设置有缓存,所述缓存用于存储依赖数据,所述依赖数据包括:被所述对象层成功利用过的依赖数据、预设的依赖数据中的一种或两种的组合,所述处理单元902还用于:

检测通过所述对象层从所述数据支持层获取目标数据服务是否失败;

若是,则从所述依赖反转层的缓存所存储的依赖数据中,获取所述目标数据服务所对应的依赖数据,并将获取到的依赖数据发送给所述对象层。

在一个实施例中,所述依赖反转层用于屏蔽目标类型的依赖数据,所述目标类型的依赖数据的接口或者协议不满足预设条件;所述后处理单元在检测通过所述对象层从所述数据支持层获取目标数据服务是否失败时,可具体用于:

检测服务数据是否为目标类型的依赖数据,所述服务数据是指通过所述对象层获取的目标数据服务对应的数据,所述目标数据服务由数据支持层提供;

若是,则确定通过所述对象层从所述数据支持层获取目标数据服务失败。

在一个实施例中,所述网络处理对象集合包括:多个组合对象,所述处理单元902还用于:

在对所述目标业务数据进行网络转发处理时,若按照所述处理逻辑编排指令的指示确定了所述网络处理对象集合的第一组合对象与第二组合对象之间存在数据交互,则通过所述第一组合对象的根实体对象与所述第二组合对象的根实体对象进行数据交互。

在一个实施例中,所述对象层还包括对象服务,所述处理单元在通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理时,可具体用于:

通过对象服务从所述应用层获取处理逻辑编排指令;

根据所述处理逻辑编排指令确定所述网络处理对象集合中的各目标网络处理对象的执行顺序;

按照各目标网络处理对象的执行顺序,对所述目标业务数据进行网络转发处理。

在一个实施例中,所述处理单元902还用于:

通过应用层,获取所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理的处理结果;

通过数据支持层中的第三方接口服务输出所述处理结果。

在本申请实施例中,响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令;通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理,通过确定网络处理对象集合,并在对象层基于网络处理对象集合中各目标网络处理对象的执行顺序直接对目标业务数据进行网络转发处理,无需编写代码实现对该目标业务数据的网络转发处理,提高了业务的网络转发处理的效率。

基于上述对业务的网络转发处理方法实施例的描述,本申请实施例还公开了一种计算机设备,该计算机设备中设置有网络控制器。请参见图10,该计算机设备至少可包括处理器1001、输入设备1002、输出设备1003以及存储器1004。其中,计算机设备内的处理器1001、输入设备1002、输出设备1003以及存储器1004可通过总线或其他方式连接。

所述存储器1004是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器1004既可以包括计算机设备的内置存储介质,当然也可以包括计算机设备支持的扩展存储介质。存储器1004提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器;可选的,还可以是至少一个远离前述处理器的计算机存储介质、所述处理器可以称为中央处理单元(Central Processing Unit,CPU),是计算机设备的核心以及控制中心,用于运行所述存储器1004中存储的计算机程序。

在一种实施方式中,可由处理器1001加载并执行存储器1004中存放的计算机程序,以实现上述有关对业务的网络转发处理方法实施例中的方法的相应步骤;具体的,所述处理器1001加载并执行存储器1004中存放的计算机程序,用于:

响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;

通过所述应用层对所述目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取所述网络处理对象集合对所述目标业务数据进行网络转发处理的处理逻辑编排指令;

通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理;

其中,所述处理逻辑编排指令包括:对所述目标业务数据进行网络转发处理时所述网络处理对象集合中各目标网络处理对象的执行顺序。

在一个实施例中,在所述应用层中配置了业务项目集合中各个业务项目所对应的处理逻辑模块,一个业务项目对应一个或者多个处理逻辑模块,在通过所述应用层对所述目标业务项目的目标业务数据进行转发分析时,所述处理器1001加载并执行存储器1004中存放的计算机程序,可具体用于:

确定在应用层中为所述目标业务项目配置的处理逻辑模块;

通过所述应用层中为所述目标业务项目配置的处理逻辑模块对所述目标业务数据进行转发分析。

在一个实施例中,所述对象层配置的网络处理对象包括:实体对象、数值对象、组合对象中的任意一种或多种;其中:

所述实体对象用于描述在网络转发处理过程中所涉及的节点或服务的属性值和行为方法;

所述数值对象用于描述在网络转发处理过程中所涉及的节点或服务在运行时所需的参数数据;

所述组合对象包括多个实体对象和/或多个值对象,在所述组合对象中设置有根实体对象,所述组合对象是通过所述根实体对象来与交互对象进行交互,所述交互对象包括:所述应用层、所述对象层中的其他组合对象、实体对象、值对象中的任意一种或多种。

在一个实施例中,所述网络控制器还包括数据支持层,所述数据支持层用于为所述接口层、所述应用层、所述对象层中的任意一个或者多个提供数据服务;

所述数据支持层提供的数据服务包括:数据库服务、数据缓存服务、第三方接口服务、消息队列服务中的任意一种或多种。

在一个实施例中,在所述对象层中设置了依赖反转层,所述处理器1001加载并执行存储器1004中存放的计算机程序,还用于:

通过接口注入规则将所述对象层所依赖的组件或服务的接口信息注入到所述依赖反转层中;

若所述对象层所依赖的组件或服务的接口信息发生变更,则获取变更之后的所述对象层所依赖的组件或服务的接口信息,并将变更之后的接口信息通过所述接口注入规则注入到所述依赖反转层中。

在一个实施例中,所述依赖反转层中还设置有缓存,所述缓存用于存储依赖数据,所述依赖数据包括:被所述对象层成功利用过的依赖数据、预设的依赖数据中的一种或两种的组合,所述处理器1001加载并执行存储器1004中存放的计算机程序,还用于:

检测通过所述对象层从所述数据支持层获取目标数据服务是否失败;

若是,则从所述依赖反转层的缓存所存储的依赖数据中,获取所述目标数据服务所对应的依赖数据,并将获取到的依赖数据发送给所述对象层。

在一个实施例中,所述依赖反转层用于屏蔽目标类型的依赖数据,所述目标类型的依赖数据的接口或者协议不满足预设条件;在检测通过所述对象层从所述数据支持层获取目标数据服务是否失败时,所述处理器1001加载并执行存储器1004中存放的计算机程序,可具体用于:

检测服务数据是否为目标类型的依赖数据,所述服务数据是指通过所述对象层获取的目标数据服务对应的数据,所述目标数据服务由数据支持层提供;

若是,则确定通过所述对象层从所述数据支持层获取目标数据服务失败。

在一个实施例中,所述网络处理对象集合包括:多个组合对象,所述处理器1001加载并执行存储器1004中存放的计算机程序,还用于:

在对所述目标业务数据进行网络转发处理时,若按照所述处理逻辑编排指令的指示确定了所述网络处理对象集合的第一组合对象与第二组合对象之间存在数据交互,则通过所述第一组合对象的根实体对象与所述第二组合对象的根实体对象进行数据交互。

在一个实施例中,所述对象层还包括对象服务,在通过所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理时,所述处理器1001加载并执行存储器1004中存放的计算机程序,可具体用于:

通过对象服务从所述应用层获取处理逻辑编排指令;

根据所述处理逻辑编排指令确定所述网络处理对象集合中的各目标网络处理对象的执行顺序;

按照各目标网络处理对象的执行顺序,对所述目标业务数据进行网络转发处理。

在一个实施例中,所述处理器1001加载并执行存储器1004中存放的计算机程序,还用于:

通过应用层,获取所述对象层按照所述处理逻辑编排指令对所述目标业务数据进行网络转发处理的处理结果;

通过数据支持层中的第三方接口服务输出所述处理结果。

应当理解,在本申请实施例中,所称处理器1001可以是中央处理单元(CentralProcessing Unit,CPU),该处理器1001还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

在本申请实施例中,响应于在接口层接收到的针对目标业务项目的业务请求,从该业务请求中获取待转发的目标业务数据;通过应用层对目标业务项目的目标业务数据进行转发分析,确定网络处理对象集合,并获取网络处理对象集合对目标业务数据进行网络转发处理的处理逻辑编排指令;通过对象层按照处理逻辑编排指令对目标业务数据进行网络转发处理,通过确定网络处理对象集合,并在对象层基于网络处理对象集合中各目标网络处理对象的执行顺序直接对目标业务数据进行网络转发处理,无需编写代码实现对该目标业务数据的网络转发处理,提高了业务的网络转发处理的效率。

此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有计算机程序,且该计算机程序包括程序指令,当处理器执行上述程序指令时,能够执行前文图2和图7所对应实施例中的方法,因此,这里将不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行。

根据本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备可以执行前文图2和图7所对应实施例中的方法,因此,这里将不再进行赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

相关技术
  • 业务流程的处理方法、设备和存储介质
  • 贷款业务信息处理方法、装置、存储介质及计算机设备
  • 一种业务处理方法及系统、存储介质、计算机设备
  • 保险业务数据处理方法、装置及存储介质、计算机设备
  • 业务处理方法、装置、电子设备和存储介质
  • 报文转发的方法、网络系统、相关设备及计算机存储介质
  • 报文转发的方法、网络系统、相关设备及计算机存储介质
技术分类

06120116480361