CN112468600B - 一种基于网络矩阵的应用消息通知方法、系统及存储介质 - Google Patents
一种基于网络矩阵的应用消息通知方法、系统及存储介质 Download PDFInfo
- Publication number
- CN112468600B CN112468600B CN202110139151.5A CN202110139151A CN112468600B CN 112468600 B CN112468600 B CN 112468600B CN 202110139151 A CN202110139151 A CN 202110139151A CN 112468600 B CN112468600 B CN 112468600B
- Authority
- CN
- China
- Prior art keywords
- message
- component
- target
- virtual
- extension frame
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种基于网络矩阵的应用消息通知方法、系统及存储介质,该方法包括:当第一服务器检测到有应用消息需要发送时,将应用消息对应的消息内容和消息标识存储至云服务器,并将所生成的消息通知报文发送至第一虚拟交换机,消息通知报文的头部中包含有消息标识;第一虚拟交换机将消息通知报文封装成数据帧后转发到网络矩阵,网络矩阵对数据帧进行处理,将最终形成的第二虚拟扩展帧转发至第二虚拟交换机;第二服务器根据第二交换机转发的第二虚拟扩展帧中的消息标识,从云服务器中获取消息内容,并基于预先生成的反向范式组件,将消息内容推送至目标客户端。本申请能够减少网络负荷,确保消息获取的及时性。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种基于网络矩阵的应用消息通知方法、系统及存储介质。
背景技术
随着移动通信技术和互联网的迅速发展,用户可以通过各种客户端应用所展现的消息,实现各种工作和生活需求,例如,可以随时随地查看工作任务进展,获取工作文件等等。
为了使所展现的消息是最新的,客户端通常采用轮询的方式主动从服务器获取或者需要用户主动触发获取操作。但客户端与服务器之间会经过复杂的通信网络,尤其是涉及到跨服务器查询时,若直接将消息内容作为传输对象,将会增加通信网络的负荷,影响消息传输的速率。同时,每一次获取操作不仅会消耗客户端的资源,例如CPU以及电量等等,也并不一定能成功得到最新消息,不仅导致客户端资源的浪费,也引起客户端获取最新消息的不及时,从而对用户的工作和生活造成影响。
发明内容
本申请提供一种基于网络矩阵的应用消息通知方法、系统及存储介质,能够减少网络负荷,确保消息获取的及时性。
一方面,本申请提供了一种基于网络矩阵的应用消息通知方法,所述方法包括:
当第一服务器检测到有应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至云服务器,并在生成消息通知报文后,将所述消息通知报文发送至第一虚拟交换机,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识;
所述第一虚拟交换机接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发至网络矩阵中的源从节点;
所述源从节点将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点;
所述目标从节点对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至第二虚拟交换机;
所述第二虚拟交换机基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的第二服务器;
所述第二服务器接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器中获取与所述应用消息对应的消息内容;
所述第二服务器基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至目标客户端;
其中,所述通过组件编码方式生成所述反向范式组件的步骤,包括:
在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下;
基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号;
基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
另一方面提供了一种基于网络矩阵的应用消息通知系统,所述系统包括第一服务器、第一虚拟交换机、网络矩阵、第二虚拟交换机、云服务器、第二服务器以及目标客户端,其中,所述第二服务器包括组件生成模块;
所述第一服务器用于检测是否有应用消息需要发送,当检测到有所述应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至所述云服务器,并在生成消息通知报文后,将所述消息通知报文发送至所述第一虚拟交换机,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识;
所述第一虚拟交换机用于接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发到所述网络矩阵中的源从节点;
所述源从节点用于将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点;
所述目标从节点用于对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至所述第二虚拟交换机;
所述第二虚拟交换机用于基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的所述第二服务器;
所述第二服务器用于接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器中获取与所述应用消息对应的消息内容;
所述第二服务器还用于基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至所述目标客户端;
所述组件生成模块用于通过组件编码方式生成所述反向范式组件;
其中,所述组件生成模块,包括:
组件部署单元,用于在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下;
组件代号生成单元,用于基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号;
组件生效单元,用于基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
另一方面提供了一种计算机存储介质,其特征在于,所述计算机存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上所述的基于网络矩阵的应用消息通知方法。
本申请提供的基于网络矩阵的应用消息通知方法、系统及存储介质,具有如下有益效果:
当第一服务器检测到有应用消息需要发送时,将应用消息对应的消息内容和消息标识存储至云服务器,并通过网络矩阵将消息标识转发至第二服务器,第二服务器根据接收到的消息标识从云服务器中获取消息内容,由于消息通知过程中只传递消息标识,可以降低传递消息内容对网络造成的负荷,从而在一定程度上提升了消息通知的速率;第二服务器根据预先生成的反向范式组件,将消息内容推送至目标客户端,而并非是目标客户端主动获取消息内容,能够避免不必要的获取操作,减少目标客户端的资源浪费,进而确保消息通知的及时性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种实施环境的示意图。
图2是本申请实施例提供的一种基于网络矩阵的应用消息通知方法的流程示意图。
图3是本申请实施例提供的一种将第一虚拟扩展帧转发至目标从节点的流程示意图。
图4是本申请实施例提供的另一种将第一虚拟扩展帧转发至目标从节点的流程示意图。
图5是本申请实施例提供的另一种将第一虚拟扩展帧转发至目标从节点的流程示意图。
图6是本申请实施例提供的执行路由策略的流程示意图。
图7是本申请实施例提供的生成反向范式组件的流程示意图。
图8是本申请实施例提供的通道管理页面的示例图。
图9是本申请实施例提供的添加新通道的编辑页面的示例图。
图10是本申请实施例提供的对反向范式组件对应的组件参数进行配置的流程示意图。
图11是本申请实施例提供的通过通道标识增加组件参数的流程示意图。
图12是本申请实施例提供的一种基于网络矩阵的应用消息通知系统的结构示意图。
图13是本申请实施例提供的一种用于实现本申请实施例所提供的方法的设备的硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,其示出了本申请实施例提供的一种实施环境的示意图,如图1所示,该实施环境可以至少包括第一服务器01、云服务器02、第二服务器03以及客户端04。
具体的,所述客户端04可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备、监控设备及语音交互设备等类型的设备,也可以包括运行于设备中的软体,例如一些服务商提供给用户的网页页面,也可以为该些服务商提供给用户的应用。具体的,所述客户端04可以用于展示所述应用的消息内容。
具体的,所述第一服务器01和所述第二服务器03可以分别包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。所述第一服务器01和所述第二服务器03可以分别包括有网络通信单元、处理器和存储器等等。
具体的,所述第一服务器检测到有应用消息需要发送时,将应用消息对应的消息内容和消息标识存储至云服务器02,并将消息标识通过通信网络发送至第二服务器03;第二服务器03根据消息标识从云服务器02中获取消息内容,并将消息内容推送至客户端04。
以下介绍本申请的一种基于网络矩阵的应用消息通知方法。图2是本申请实施例提供的基于网络矩阵的应用消息通知方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,所述方法可以包括:
S201,当第一服务器检测到有应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至云服务器,并在生成消息通知报文后,将所述消息通知报文发送至第一虚拟交换机,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识。
本申请实施例中,应用消息表征需要通过目标客户端所装载应用程序通知给用户的消息,比如告警消息、邮件消息等等,应用程序与第一服务器之间不能直接通信。第一服务器在检测到有应用消息需要发送时,不能直接将应用消息发送至装载应用程序的目标客户端,而是先基于预先存储的应用程序管理列表,获取目标地址标识即管理应用程序的后台服务器的地址标识,例如IP地址以及端口等,然后基于目标地址标识和消息标识,生成消息通知报文,通过第一虚拟交换机将消息通知报文转发至后台服务器。其中,第一虚拟交换机可以是物理服务器或者运行在物理服务器中的软体。
S202,所述第一虚拟交换机接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发至网络矩阵中的源从节点。
第一虚拟交换机在接收到消息通知报文后,直接将消息通知报文封装成二层的数据帧。源从节点是指与第一交换机连接的从节点,该从节点在与第一虚拟交换机建立连接时,会在第一交换机上添加从节点的物理地址(Media Access Control Address,MAC地址)与所连接的端口(Pots)之间的对应关系,并在转发表中的类型(Type)设置为网络(NETWORK)。第一虚拟交换机的转发表中只会存在一个Type为NETWORK的记录,一旦将MAC地址设置为NETWORK,表示通过第一虚拟交换机转发到网络矩阵中的数据帧都将经由该记录对应的端口转发。如表1所示,第一虚拟交换机将该数据帧从Fa0/2端口转发出去,MAC地址0004.7c45.367g即为源从节点的物理地址。
表1
MAC地址 | Type | Pots |
0004.7c45.367g | NETWORK | Fa0/2 |
… | … | … |
网络矩阵是指以应用为中心的网络架构,网络矩阵的拓扑结构是命令式的,通过自动发现、全自动配置和内置电缆计划等来自动执行。在完整的二分图中,网络矩阵的拓扑结构由连接到主节点上的从节点构成,所有所述从节点都连接到所有主节点,所有主节点都连接到所有所述从节点,各个所述从节点均具有路由和网桥连接到外部网络基础架构的能力,且每个所述从节点均具有默认网关的作用。如上述中,源从节点的端口Fa0/2即为第一虚拟交换机的默认网关。
外部网络基础架构包括城域网、多协议标签交换以及虚拟专用网络云等等。从节点可以连接到执行策略的任何网络设备或主机,比如虚拟化服务器、虚拟交换机、路由器等,因而也可以将从节点称为边界从节点。
使用网络矩阵不需要配置热备份路由器协议或虚拟路由器冗余协议地址,网络矩阵使用普遍网关的概念。普遍网关是一种任播网关,这样做的好处是在网络矩阵中的通信很简单,每个从节点承担着默认网关的作用,而无需让流量穿越整个网络矩阵而发送到特定的默认网关。
S203,所述源从节点将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点。
由于网络矩阵的拓扑结构是命令式的,网络矩阵中每个节点(包括主节点和从节点)在每次进行数据帧的处理时,都将执行与数据帧相应的配置命令,比如,端口的配置、IP地址的配置等等。
网络矩阵的转发不同于现有的网络转发模式,在网络矩阵中:工作负载的分类与传输与VLAN(Virtual Local Area Network,虚拟局域网)还是子网均无关,分类是基于安全区域(也称终端组);尽管全面支持2层和3层网络,但报文是使用3层路由在网络矩阵中传输;网桥域中没有必要执行洪泛操作;帧转发类似基于主机的路由,IP是终端的标识符。
现有数据中心网络面临着VLAN网段的短缺的问题,网络矩阵解决此问题的方法是,使用虚拟可扩展局域网(Virtual Extensible LAN,VXLAN)在3层网络上使用2层叠加网络模式。封装中包含24位VXLAN网段ID或VXLAN网络标识符,可提供1600万个VXLAN网段来进行流量隔离和分割,而VLAN仅能提供4000个网段,每个网段表示唯一的2层广播域或3层上下文,这具体取决于使用的是网桥还是路由。VXLAN使用UDP(User Datagram Protocol,用户数据包协议)作为封装协议,将以太网帧封装在IP报文中。
从而源从节点使用UDP作为封装协议,将从第一虚拟交换机发送的数据帧封装成三层的第一虚拟扩展帧,第一虚拟扩展帧中包含有VXLAN网络标识符,并使用3层路由将第一虚拟扩展帧在网络矩阵帧传输。
参照如图3所述,所述基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点,可以包括:
S2031,基于所述转发表中是否包含内部网际协议地址,确定目标主节点,其中,所述内部网际协议地址是指用于出口虚拟端点所绑定的网际协议地址。
用于出口虚拟端点是指用于转发数据帧的虚拟端点,虚拟端点是一个主节点。网络矩阵中的每个从节点都对应至一个虚拟端点,每个从节点在对接收到的数据帧进行处理时,在该从节点对应转发表中的目的IP上执行查找。根据所查询到的结果,确定第一虚拟扩展帧的下一跳主节点。
具体如图4所示,所述基于所述转发表中是否包含内部网际协议地址,确定目标主节点,可以包括:
S20311,若所述转发表中包含所述内部网际协议地址,则将所述虚拟端点确定为所述目标主节点。
网络矩阵中每个从节点都会不间断对网络进行学习,根据学习到的网络情况确定出虚拟端点的网际协议地址(Internet Protocol Address,IP地址),若下一跳主节点是虚拟端点,则在本地转发表中将下一跳主节点对应的类型进行标记。如表2所示,若用1表示内部网际协议地址,则类型1所对应的下一跳IP地址20.0.0.7即为内部网际协议地址。可以理解的,转发表中只会存在一个内部网际协议地址。
表2
目的IP地址 | 下一跳IP地址 | 距离 | 类型 | … |
114.223.150.194 | 20.0.0.7 | 1 | 1 | … |
… | … | … | … |
S20312,若所述转发表中未包含所述内部网际协议地址,则将所述网络矩阵中任意一个主节点确定为所述目标主节点。
源从节点在转发表中的目的IP上执行查找,如果没有找到内部网际协议地址,则通过任播方式选取目标主节点。任播方式是指从网络矩阵中任意选取一个主节点,或者从网络矩阵中距离源从节点位置较近的主节点中任意选取一个主节点,如上表中可通过距离来确定。该任意选取的主节点执行虚拟端点的代理功能,按照虚拟端点的执行策略进行数据帧的转发。但由于网络矩阵的拓扑结构的特殊性,任意一个主节点均与任意一个从节点相连,为了不增加计算距离所带来的额外开销,可以直接采用从网络矩阵中任意选取一个主节点作为目标主节点。
S2032,通过所述目标主节点将所述第一虚拟扩展帧转发至所述目标从节点。
不同于传统的VXLAN网络,网络矩阵中的各个主节点构成了主节点网,为网络矩阵提供映射数据库功能。网络矩阵中每个主节点都维护有一个映射数据库,该映射数据库由多张转发表组成。网络矩阵首选的操作模式并不依赖于组播进行学习和发现,而是依靠映射数据库,该映射数据库在发现终端时进行填充,如果需要支持组播和广播,才会依靠组播来实现。
参见图5所示,步骤S2032可以包括:
S20321,将所述第一虚拟扩展帧采用点对点方式转发至所述目标主节点。
S20322,所述目标主节点检测对应的映射数据库中是否存在与所述目标地址标识匹配的条目。
若存在,则执行步骤S20323;若不存在,则执行步骤S20324。
S20323,将所述第一虚拟扩展帧转发至所述条目对应的目标从节点。
S20324,执行路由策略,以将所述第一虚拟扩展帧转发至所述目标从节点。
目标地址标识包括目标网际协议地址(目标IP地址)和目标物理地址(目标MAC地址),目标主节点在检测映射数据库时,基于目标IP地址进行匹配。当目标主节点中的映射数据库存在与目标IP地址匹配的条目,直接将第一虚拟扩展帧转发至该条目对应的目标从节点;当目标主节点中的映射数据库不存在与目标IP地址匹配的条目时,执行路由策略。在具体实施时,映射数据库中可能存在多个与目标IP地址匹配的条目,此时可以选择与第二虚拟交换机位置最近的从节点作为目标从节点,然后将第一虚拟扩展帧转发至该目标从节点。
具体的,如图6所示,步骤S20324可以包括:
S203241,向所述网络矩阵中的所有边界从节点进行通信,以使所有所述边界从节点进行外部路由学习。
S203242,每个所述边界从节点在学习到所述外部路由后,使用多协议扩展边界网关协议将所述外部路由通告给所述网络矩阵中的各个主节点。
S203243,所述目标主节点接收到所述外部路由后,更新所述映射数据库,并基于所述映射数据库对所述目标地址标识重新匹配,以将所述第一虚拟扩展帧转发至所述目标从节点。
目标主节点在执行路由策略时,向网络矩阵中的所有边界从节点进行通信。每个边界从节点在接收到目标主节点的通信信息后,通过路由协议进行外部路由学习。其中,路由协议可以是静态路由、开放最短路径优先(Open Shortest Path First,OSPF)以及内部边界网关协议(Internal Border Gateway Protocol,IBGP)等等。目标主节点在更新完映射数据库后,按照步骤S20324相同的方式进行第一虚拟扩展帧的转发。
网络矩阵中的主节点和从节点之间使用多协议扩展边界网关协议(Multiprotocol Border Gateway Protocol,MP-BGP)来下发外部路由。BGP路由反射器技术部署在单个矩阵中支持大量从节点。所有从节点和主节点都位于单个BGP自治系统中。在边界从节点学习到外部路由后,将外部路由重新分发给网络矩阵中的其他从节点。并且基于MP-BGP将外部路由通告给BGP路由反射器,由BGP路由反射器下发到所有从节点和所有主节点。
S204,所述目标从节点对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至第二虚拟交换机。
网络矩阵具有超级帧功能,超级帧功能通过VXLAN的报文头来实现。网络矩阵中VXLAN的报文头提供了标识机制用于识别网络矩阵中数据帧的性质,增加了配置命令组、负载和路径度量指标、计数器和入口端口,以及封装信息。网络矩阵中所生成的数据帧结构,包括终端生成的原始以太网数据帧、VXLAN封装报文头、外部UDP、外部IP和外部以太网,其中,VXLAN封装报文头包括网络矩阵VXLAN报文格式与常规VXLAN的映射关系。
超级帧功能是指当第一虚拟交换机的数据帧发送到网络矩阵时,网络矩阵将数据帧捆绑成更大尺寸的数据帧即第一虚拟扩展帧或第二虚拟扩展帧。而且超级帧只有在网络矩阵内部传输时才被使用,因而第一虚拟扩展帧和第二虚拟扩展帧均是超级帧。而当数据帧离开网络矩阵即发送至第二虚拟交换机时,超级帧将会被删除掉。
超级帧功能时网络矩阵内在机制的一部分,没有固定的超级帧尺寸大小,也就是说,第一虚拟扩展帧和第二虚拟扩展帧的尺寸大小可以不相同。由于没有固定的尺寸大小,不需要等待放满超级帧,因而不会增加网络矩阵的延迟。
目标从节点对第一虚拟扩展帧进行解封装,读取目标地址标识,查找转发表中与目标地址标识中目标IP地址标识匹配的记录,得到下一跳IP地址。然后将第二虚拟扩展帧复制到下一跳IP地址对应的端口中,此端口即为与第二虚拟交换机对应的端口。
S205,所述第二虚拟交换机基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的第二服务器。
如表3所示,第二虚拟交换机的转发表中,存储有各MAC地址和端口间的关联关系,在第二服务器通过第二虚拟交换机进行通信时,就可以在第二虚拟交换机上添加第二服务器的MAC地址和所连接端口对应的关系。第二虚拟交换机在转发表中找到与目标地址标识中的目标物理地址匹配的端口,通过该端口将第二虚拟扩展帧转发至第二服务器。
表3
Mac Address | Type | Pots | … |
0009.7c29.284b | DYNAMIC | Fa0/1 | … |
… | … | … | … |
S206,所述第二服务器接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器中获取与所述应用消息对应的消息内容。
第二服务器对第二虚拟扩展帧进行解析,然后根据解析得到的消息标识从云服务器中获取消息内容,减少了消息内容在传输过程中对网络产生的冲击,特别是当消息内容足够大时,所产生的冲击也越大。而消息标识通常只占用较少的比特位即可满足,从而避免了对网络的影响。
S207,所述第二服务器基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至目标客户端。
第二服务器在对消息内容进行发送时,通常是通过email、webchat、短信以及语音等方式,但这些方式并不足以支撑业务发展的需要,例如在与第三方对接时或者消息内容较大时。反向范式组件是指通过web回调方式为应用程序提供实时消息的一种方式,因而也可称作webtool消息通知组件。反向范式组件在数据产生时立即发送数据,也就是说,用户可以实时收到数据。
具体参照图7中所示,所述通过组件编码方式生成所述反向范式组件的步骤,可以包括:
S2071,在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下。
在编写完反向范式组件对应的应用程序编程接口后,第二服务器可以通过git,scp或发布等方式将代码进行部署,在部署完成后,会在第二服务器对应的组件系统的目录下生成与应用程序编程接口对应的类名相符的脚本文件。例如,假设应用程序编程接口对应的类名为SendWebtool,则所生成的脚本文件为send_webtool.py,若反向范式所属系统为CMSI,其在第二服务器中的目录结构如下所示:
apis/
├── cmsi
│├── apidoc
│├── __init__.py
│├── send_webtool.py
│└── toolkit
│├── configs.py
│├── __init__.py
│└── tools.py
├── conf.py
└── __init__.py
S2072,基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号。
反向范式组件通过“组件代号”进行标识,“组件代号”由前缀(默认为generic).系统名.组件类名三部分组成,如应用程序编程接口对应的类名SendWebtool,则反向范式组件对应的组件代号为generic.cmsi.send_webtool。
S2073,基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
在第二服务器中,一个组件的生效需要为该组件设置通道,通道就相当于配置组件通信的资源,比如,位置、入参、权限等等,组件的通道需要在通道管理页面中进行配置。
在一个示例中,如图8所示,其为通道管理页面的示意图。可以通过通道管理页面中的“添加一个新的通道”按钮,打开如图9所示的添加新通道的编辑页面。在该编辑页面中,可以为反向范式组件对应通道的通道名称、通道路径、所属系统、权限级别以及API类型等等。其中,通道名称可以自定义,例如,“通过webtool发送消息”;通道路径指示反向范式所属系统对应的目录,其命名规则是“/系统名称小写/通道名称”,例如反向范式所属系统对应的目录是components/generic/apis/cmsi/send_webtool.py,则通道路径为/cmsi/send_webtool/;API类型包括查询API和非查询API,对于非查询API,例如POST、UPDATE以及DELETE等方式选择执行API,由于反向范式组件是POST方式,因此选择执行API。
第二服务器在完成通道的注册以及服务总线等操作后,通道管理页面中就存在所新增的反向范式组件对应的记录。但若要使该反向范式组件生效,还需要对反向范式组件所需要的参数进行配置。
对于组件参数的配置,有两种方式:一是通过第二服务器中的目录结构下的configs.py文件直接给出配置信息,其配置属性名与代码部分(即SendWebtool中)的变量名保持一致;二是在send_webtool.py中有特定的获取属性的语句的情况下,例如getattr(self, '配置属性名', ''),可以通过esb配置界面进行配置。
若通过esb配置界面进行配置,需要使用指定管理通道配置界面即admin管理通道配置界面进行操作。
参照图10中所示,所述对所述反向范式组件对应的组件参数进行配置,可以包括:
S20731,在所述通道管理中,获取所述反向范式组件对应的通道标识。
S20732,通过所述通道标识,增加所述反向范式组件对应的组件参数。
首先在通道管理对应界面中,找到反向范式组件对应的通道名称,如“通过webtool发送消息”,点击通道名称后,在弹出界面的URL(统一资源定位符)中,关键字channel后的数字即为通道标识。例如,URL为http://xxxxx/channel/106/edit/,那么106即为反向范式组件对应的通道标识。
在获得通道标识后,可以通过执行SQL语句直接在数据库中新增反向范式组件对应的组件参数,也可以通过将指定管理通道配置界面的URL与通道标识进行组合,到反向范式组件的参数配置界面进行手动配置。
具体如图11所示,步骤S20732可以包括:
S207321,基于所述通道标识,进入所述反向范式组件对应的配置参数界面,所述配置参数界面的统一资源定位符由前缀和后缀组成,所述前缀为指定管理通道配置界面的统一资源定位符,所述后缀为所述通道标识。
例如,指定管理通道配置界面的统一资源定位符为http://xxxx/esbchanel/,通道标识为106,则配置参数界面的统一资源定位符为http://xxxx/esbchanel/106/。
S207322,在所述配置参数界面中,增加所述反向范式组件对应的组件参数,其中,所述组件参数的参数名与所述应用程序编程接口中的变量名相对应。
在配置参数界面中确保配置格式为数组结构,即[["可配置属性1",""],["可配置属性名2",""]],编辑好后保存,同时要确保"可配置属性名1"、"可配置属性名2"这些属性的名称要与SendWebtool中各变量名相对应。
由以上技术方案可见,本申请实施例提供的基于网络矩阵的应用消息通知方法,当第一服务器检测到有应用消息需要发送时,将应用消息对应的消息内容和消息标识存储至云服务器,并通过网络矩阵将消息标识转发至第二服务器,第二服务器根据接收到的消息标识从云服务器中获取消息内容,由于消息通知过程中只传递消息标识,可以降低传递消息内容对网络造成的负荷,从而在一定程度上提升了消息通知的速率;第二服务器根据预先生成的反向范式组件,将消息内容推送至目标客户端,而并非是目标客户端主动获取消息内容,能够避免不必要的获取操作,减少目标客户端的资源浪费,进而确保消息通知的及时性。
本申请实施例还提供了一种基于网络矩阵的应用消息通知系统,如图12所示,所述系统包括第一服务器1210、第一虚拟交换机1220、网络矩阵1230、第二虚拟交换机1240、第二服务器1250、目标客户端1260以及云服务器1270,其中,所述第二服务器1250包括组件生成模块1251;
所述第一服务器1210用于检测是否有应用消息需要发送,当检测到有所述应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至所述云服务器1270,并在生成消息通知报文后,将所述消息通知报文发送至所述第一虚拟交换机1220,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识;
所述第一虚拟交换机1220用于接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发到所述网络矩阵1230中的源从节点1231;
所述源从节点1231用于将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵1230中的目标从节点1233;
所述目标从节点1233用于对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至所述第二虚拟交换机1240;
所述第二虚拟交换机1240用于基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的所述第二服务器1250;
所述第二服务器1250用于接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器1270中获取与所述应用消息对应的消息内容;
所述第二服务器1250还用于基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至所述目标客户端1260;
所述组件生成模块1251用于通过组件编码方式生成所述反向范式组件。
本申请实施例中,所述网络矩阵的拓扑结构由连接到主节点上的从节点构成,所有所述从节点都连接到所有主节点,所有主节点都连接到所有所述从节点,各个所述从节点均具有路由和网桥连接到外部网络基础架构的能力,且每个所述从节点均具有默认网关的作用。
在一些实施例中,所述组件生成模块1251,可以包括:
组件部署单元,用于在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下;
组件代号生成单元,用于基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号;
组件生效单元,用于基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
在一些实施例中,所述源从节点1231可以包括:
目标主节点确认模块,用于基于所述转发表中是否包含内部网际协议地址,确定目标主节点,其中,所述内部网际协议地址是指用于出口虚拟端点所绑定的网际协议地址;
帧转发模块,用于通过所述目标主节点将所述第一虚拟扩展帧转发至所述目标从节点。
在一些实施例中,所述帧转发模块可以包括:
第一转发单元,用于将所述第一虚拟扩展帧采用点对点方式转发至所述目标主节点。
如图12所示,网络矩阵中的目标主节点1232用于检测对应的映射数据库中是否存在与所述目标地址标识匹配的条目;若存在,则将所述第一虚拟扩展帧转发至所述条目对应的目标从节点1233;若不存在,则执行路由策略,以将所述第一虚拟扩展帧转发至所述目标从节点1233。
在一些实施例中,所述目标主节点1232可以包括:
通信模块,用于向所述网络矩阵中的所有边界从节点进行通信,以使所有所述边界从节点进行外部路由学习。
网络矩阵中的每个所述边界从节点用于在学习到所述外部路由后,使用多协议扩展边界网关协议将所述外部路由通告给所述网络矩阵中的各个主节点。
所述目标主节点1232接收到所述外部路由后,更新所述映射数据库,并基于所述映射数据库对所述目标地址标识重新匹配,以将所述第一虚拟扩展帧转发至所述目标从节点。
在一些实施例中,所述组件生效单元可以包括:
通道标识获取单元,用于在所述通道管理中,获取所述反向范式组件对应的通道标识;
组件配置单元,用于通过所述通道标识,增加所述反向范式组件对应的组件参数。
在一些实施例中,所述组件配置单元可以包括:
配置参数界面访问单元,用于基于所述通道标识,进入所述反向范式组件对应的配置参数界面,所述配置参数界面的统一资源定位符由前缀和后缀组成,所述前缀为指定管理通道配置界面的统一资源定位符,所述后缀为所述通道标识;
参数设置单元,用于在所述配置参数界面中,增加所述反向范式组件对应的组件参数,其中,所述组件参数的参数名与所述应用程序编程接口中的变量名相对应。
需要说明的是,上述实施例提供的系统,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的系统与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种通信设备,所述设备包括如上所述的基于网络矩阵的应用消息通知系统。
进一步地,图13示出了一种用于实现本申请实施例所提供的方法的设备的硬件结构示意图,所述设备可以参与构成或包含本申请实施例所提供的系统。如图13所示,设备13可以包括一个或多个(图中采用1302a、1302b,……,1302n来示出)处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1304、以及用于通信功能的传输装置1306。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图13所示的结构仅为示意,其并不对上述设备的结构造成限定。例如,设备13还可包括比图13中所示更多或者更少的组件,或者具有与图13所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到设备13(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器1304可用于存储应用软件的软件程序以及模块,如本申请实施例中所述的方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器1304内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的基于网络矩阵的应用消息通知方法。存储器1304可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1304可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备13。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置1306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括设备13的通信供应商提供的无线网络。在一个实例中,传输装置1306包括一个网络适配器(NetworkInterfaceController,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置1306可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与设备13(或移动设备)的用户界面进行交互。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的方法实施例提供的基于网络矩阵的应用消息通知方法。
可选地,在本实施例中,上述计算机存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机存储介质中。通信设备的处理器从计算机存储介质读取该计算机指令,处理器执行该计算机指令,使得该通信设备执行上述的方法实施例提供的基于网络矩阵的应用消息通知方法。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述说明已经充分揭露了本申请的具体实施方式。需要指出的是,熟悉该领域的技术人员对本申请的具体实施方式所做的任何改动均不脱离本申请的权利要求书的范围。相应地,本申请的权利要求的范围也并不仅仅局限于前述具体实施方式。
Claims (10)
1.一种基于网络矩阵的应用消息通知方法,其特征在于,所述方法包括:
当第一服务器检测到有应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至云服务器,并在生成消息通知报文后,将所述消息通知报文发送至第一虚拟交换机,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识;
所述第一虚拟交换机接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发至网络矩阵中的源从节点;
所述源从节点将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点;
所述目标从节点对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至第二虚拟交换机;
所述第二虚拟交换机基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的第二服务器;
所述第二服务器接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器中获取与所述应用消息对应的消息内容;
所述第二服务器基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至目标客户端;
其中,所述通过组件编码方式生成所述反向范式组件的步骤,包括:
在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下;
基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号;
基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
2.根据权利要求1所述的方法,其特征在于,所述基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点,包括:
基于所述转发表中是否包含内部网际协议地址,确定目标主节点,其中,所述内部网际协议地址是指用于出口虚拟端点所绑定的网际协议地址;
通过所述目标主节点将所述第一虚拟扩展帧转发至所述目标从节点。
3.根据权利要求2所述的方法,其特征在于,所述基于所述转发表中是否包含内部网际协议地址,确定目标主节点,包括:
若所述转发表中包含所述内部网际协议地址,则将所述虚拟端点确定为所述目标主节点;
若所述转发表中未包含所述内部网际协议地址,则将所述网络矩阵中任意一个主节点确定为所述目标主节点。
4.根据权利要求2所述的方法,其特征在于,所述通过所述目标主节点将所述第一虚拟扩展帧转发至所述目标从节点,包括:
将所述第一虚拟扩展帧采用点对点方式转发至所述目标主节点;
所述目标主节点检测对应的映射数据库中是否存在与所述目标地址标识匹配的条目;
若存在,则将所述第一虚拟扩展帧转发至所述条目对应的目标从节点;
若不存在,则执行路由策略,以将所述第一虚拟扩展帧转发至所述目标从节点。
5.根据权利要求4所述的方法,其特征在于,所述执行路由策略,以将所述第一虚拟扩展帧转发至所述目标从节点,包括:
向所述网络矩阵中的所有边界从节点进行通信,以使所有所述边界从节点进行外部路由学习;
每个所述边界从节点在学习到所述外部路由后,使用多协议扩展边界网关协议将所述外部路由通告给所述网络矩阵中的各个主节点;
所述目标主节点接收到所述外部路由后,更新所述映射数据库,并基于所述映射数据库对所述目标地址标识重新匹配,以将所述第一虚拟扩展帧转发至所述目标从节点。
6.根据权利要求1所述的方法,其特征在于,
所述网络矩阵的拓扑结构由连接到主节点上的从节点构成,所有所述从节点都连接到所有主节点,所有主节点都连接到所有所述从节点,各个所述从节点均具有路由和网桥连接到外部网络基础架构的能力,且每个所述从节点均具有默认网关的作用。
7.根据权利要求1所述的方法,其特征在于,所述对所述反向范式组件对应的组件参数进行配置,包括:
在所述通道管理中,获取所述反向范式组件对应的通道标识;
通过所述通道标识,增加所述反向范式组件对应的组件参数。
8.根据权利要求7所述的方法,其特征在于,所述通过所述通道标识,增加所述反向范式组件对应的组件参数,包括:
基于所述通道标识,进入所述反向范式组件对应的配置参数界面,所述配置参数界面的统一资源定位符由前缀和后缀组成,所述前缀为指定管理通道配置界面的统一资源定位符,所述后缀为所述通道标识;
在所述配置参数界面中,增加所述反向范式组件对应的组件参数,其中,所述组件参数的参数名与所述应用程序编程接口中的变量名相对应。
9.一种基于网络矩阵的应用消息通知系统,其特征在于,所述系统包括第一服务器、第一虚拟交换机、网络矩阵、第二虚拟交换机、云服务器、第二服务器以及目标客户端,其中,所述第二服务器包括组件生成模块;
所述第一服务器用于检测是否有应用消息需要发送,当检测到有所述应用消息需要发送时,将所述应用消息对应的消息内容和消息标识存储至所述云服务器,并在生成消息通知报文后,将所述消息通知报文发送至所述第一虚拟交换机,其中,所述消息通知报文的头部中至少包括所述消息标识和目标地址标识;
所述第一虚拟交换机用于接收到所述消息通知报文后,将所述消息通知报文封装成数据帧,并将所述数据帧转发到所述网络矩阵中的源从节点;
所述源从节点用于将所述数据帧封装成第一虚拟扩展帧,并在执行所述第一虚拟扩展帧对应的配置命令后,基于转发表将所述第一虚拟扩展帧转发至所述网络矩阵中的目标从节点;
所述目标从节点用于对所述第一虚拟扩展帧进行解封装后进行重新封装,以生成第二虚拟扩展帧,并在执行所述第二虚拟扩展帧对应的配置命令后,将所述第二虚拟扩展帧转发至所述第二虚拟交换机;
所述第二虚拟交换机用于基于所述第二虚拟扩展帧中的目标地址标识,将所述第二虚拟扩展帧转发至与所述目标地址标识匹配的所述第二服务器;
所述第二服务器用于接收到所述第二虚拟扩展帧后,基于所述第二虚拟扩展帧中的所述消息标识,从所述云服务器中获取与所述应用消息对应的消息内容;
所述第二服务器还用于基于预先通过组件编码方式生成的反向范式组件,将所述消息内容推送至所述目标客户端;
所述组件生成模块用于通过组件编码方式生成所述反向范式组件;
其中,所述组件生成模块,包括:
组件部署单元,用于在编写完所述反向范式组件对应的应用程序编程接口后,将所述应用程序编程接口通过预设方式部署到所述反向范式所属系统对应的目录下;
组件代号生成单元,用于基于所述应用程序编程接口对应的类名,生成所述反向范式组件对应的组件代号;
组件生效单元,用于基于所述组件代号,在通道管理中为所述反向范式组件注册通道,并在重启服务总线后,对所述反向范式组件对应的组件参数进行配置,以使所述反向范式组件生效。
10.一种计算机存储介质,其特征在于,所述计算机存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-8任意一 项所述的基于网络矩阵的应用消息通知方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110139151.5A CN112468600B (zh) | 2021-02-02 | 2021-02-02 | 一种基于网络矩阵的应用消息通知方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110139151.5A CN112468600B (zh) | 2021-02-02 | 2021-02-02 | 一种基于网络矩阵的应用消息通知方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112468600A CN112468600A (zh) | 2021-03-09 |
CN112468600B true CN112468600B (zh) | 2021-04-06 |
Family
ID=74802473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110139151.5A Active CN112468600B (zh) | 2021-02-02 | 2021-02-02 | 一种基于网络矩阵的应用消息通知方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112468600B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412104A (zh) * | 2016-10-28 | 2017-02-15 | 努比亚技术有限公司 | 应用消息推送装置及方法 |
CN108234631A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 消息推送平台和消息推送方法 |
CN110611691A (zh) * | 2018-06-15 | 2019-12-24 | 中兴通讯股份有限公司 | 一种消息推送方法、系统及存储介质 |
CN110661889A (zh) * | 2019-11-06 | 2020-01-07 | 杭州涂鸦信息技术有限公司 | 一种iOS端的推送消息同步与补偿方法及系统 |
CN111711697A (zh) * | 2020-06-17 | 2020-09-25 | 北京同邦卓益科技有限公司 | 消息推送方法、装置、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539577A (zh) * | 2014-11-27 | 2015-04-22 | 英业达科技有限公司 | 信息推送系统及其方法 |
US10701060B2 (en) * | 2016-05-20 | 2020-06-30 | Avaya Inc. | Public key infrastructure exchange using netconf for Openflow enabled switches |
-
2021
- 2021-02-02 CN CN202110139151.5A patent/CN112468600B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412104A (zh) * | 2016-10-28 | 2017-02-15 | 努比亚技术有限公司 | 应用消息推送装置及方法 |
CN108234631A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 消息推送平台和消息推送方法 |
CN110611691A (zh) * | 2018-06-15 | 2019-12-24 | 中兴通讯股份有限公司 | 一种消息推送方法、系统及存储介质 |
CN110661889A (zh) * | 2019-11-06 | 2020-01-07 | 杭州涂鸦信息技术有限公司 | 一种iOS端的推送消息同步与补偿方法及系统 |
CN111711697A (zh) * | 2020-06-17 | 2020-09-25 | 北京同邦卓益科技有限公司 | 消息推送方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112468600A (zh) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107733670B (zh) | 一种转发策略配置方法和装置 | |
KR101997370B1 (ko) | 사물 인터넷(iot)에서의 디바이스 로케이션 등록을 위한 서버 | |
CN108989066B (zh) | 设备管理方法及装置 | |
US7978631B1 (en) | Method and apparatus for encoding and mapping of virtual addresses for clusters | |
CN109729012B (zh) | 一种单播报文传输方法和装置 | |
CN113645136B (zh) | 网络中报文转发的方法、网络节点、网络系统 | |
CN108964940B (zh) | 消息发送方法及装置、存储介质 | |
EP4239973A1 (en) | Packet sending method, device, and system | |
CN103534993A (zh) | 连接低功率网络域的标签交换路由选择 | |
US11374860B2 (en) | Method and apparatus for sending routing information for network nodes | |
CN105721306A (zh) | 一种配置信息的传输方法和装置 | |
CN104168184A (zh) | 报文转发方法及设备 | |
CN111010329B (zh) | 一种报文传输方法及装置 | |
EP2928117B1 (en) | System and method for device registration and discovery in content-centric networks | |
CN108259215A (zh) | 一种设备管理方法及装置 | |
CN112506670B (zh) | 一种多节点自动化运维任务处理方法、系统及存储介质 | |
CN114024886B (zh) | 跨资源池的网络互通方法、电子设备及可读存储介质 | |
US8914503B2 (en) | Detected IP link and connectivity inference | |
CN107896188B (zh) | 数据转发方法及装置 | |
CN106559332A (zh) | 一种快速组建全连通服务器集群的方法和系统 | |
US20140317271A1 (en) | Method and node apparatus for collecting information in content network based on information-centric networking | |
CN114401319B (zh) | 一种请求处理方法、装置、服务器及存储介质 | |
EP3503484B1 (en) | Message transmission methods and devices | |
CN113904981A (zh) | 一种路由信息处理方法、装置、电子设备和存储介质 | |
CN115865844B (zh) | 基于sdn与ndn的虚实结合动态流量调度方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |