CN113329096B - 消息传输方法、装置、电子设备和存储介质 - Google Patents
消息传输方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113329096B CN113329096B CN202110702576.2A CN202110702576A CN113329096B CN 113329096 B CN113329096 B CN 113329096B CN 202110702576 A CN202110702576 A CN 202110702576A CN 113329096 B CN113329096 B CN 113329096B
- Authority
- CN
- China
- Prior art keywords
- message
- tenant system
- tenant
- feedback
- channel
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000005540 biological transmission Effects 0.000 title claims abstract description 44
- 230000015654 memory Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 11
- 239000003795 chemical substances by application Substances 0.000 description 27
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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/50—Network services
- H04L67/56—Provisioning of proxy services
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及消息传输技术领域,具体公开了一种消息传输方法、装置、电子设备和存储介质,其中,消息传输方法包括:第一租户系统从代理接收连接请求,其中,所述连接请求是由第二租户系统发给所述代理的,所述第一租户系统和所述第二租户系统相互独立;所述第一租户系统根据所述连接请求,建立与所述第二租户系统之间的消息通道;所述第一租户系统通过所述消息通道从所述第二租户系统接收反馈消息,其中,所述反馈消息为外部系统对所述第一租户系统发出的请求消息做出的反馈。
Description
技术领域
本发明涉及消息传输技术领域,具体涉及一种消息传输方法、装置、电子设备和存储介质。
背景技术
企业的软件系统由于某些原因,例如监管机构监管、企业业务扩展等业务分化,需要将软件系统拆分多个租户系统,从而针对分化出的多个业务进行管理。在拆分后,为了避免各项业务之间的相互干扰,各个租户系统之间处于相互独立的状态。但是,企业的各个租户系统与外部系统发生信息交互时,企业的各个租户系统可以复用同一条信息通道进行消息传输。
通常而言,企业的软件系统与外部系统之间的信息交互,从企业角度来看,可分为两种类型,一种是企业的软件系统主动发起请求来获取信息;另一种是外部系统主动发起请求将信息通知到企业的软件系统。
基于此,当企业的软件系统依赖于外部系统主动发起请求将信息通知到企业的软件系统时,由于企业的软件系统是复用同一条信息通道进行消息传输,因此,外部系统处理企业的软件系统发送的请求后,向企业的软件系统发送该请求的反馈时,也将默认只使用接收到该请求时的通道进行反馈。此时,该反馈将只会发往该通道对应的默认的租户系统中,又由于各个租户系统之间处于相互独立的状态,导致企业内复用该通道发送请求的其他的租户系统无法获取外部系统的反馈。此时,其业务流程将被阻断,严重降低企业的运营效率。
发明内容
为了解决现有技术中存在的上述问题,本申请实施方式提供了一种消息传输方法、装置、电子设备和存储介质,可以在保证企业的软件系统所拆分出的多个租户系统的安全性的同时,将收到的反馈消息传输至对应的租户系统,保证企业的运营效率。
第一方面,本申请的实施方式提供了一种消息传输方法,包括:
第一租户系统从代理接收连接请求,其中,连接请求是由第二租户系统发给代理的,第一租户系统和第二租户系统相互独立;
第一租户系统根据连接请求,建立与第二租户系统之间的消息通道;
第一租户系统通过消息通道从第二租户系统接收反馈消息,其中,反馈消息为外部系统对第一租户系统发出的请求消息做出的反馈。
第二方面,本申请的实施方式提供了一种消息传输装置,包括:
接收模块,用于从代理接收连接请求,其中,连接请求是由第二租户系统发给代理的,第一租户系统和第二租户系统相互独立;
通道建立模块,用于根据连接请求,建立与第二租户系统之间的消息通道;
接收模块,还用于通过消息通道从第二租户系统接收反馈消息,其中,反馈消息为外部系统对第一租户系统发出的请求消息做出的反馈。
第三方面,本申请实施方式提供一种电子设备,包括:处理器,处理器与存储器相连,存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序,以使得电子设备执行如第一方面的方法。
第四方面,本申请实施方式提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序使得计算机执行如第一方面的方法。
第五方面,本申请实施方式提供一种计算机程序产品,计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,计算机可操作来使计算机执行如第一方面的方法。
实施本申请实施方式,具有如下有益效果:
在本申请实施方式中,第一租户系统通过从代理接受由第二租户系统发出的连接请求,继而主动建立与第二租户系统之间的消息通道,从而通过该消息通道从第二租户系统接收反馈消息。由此,避免了企业的软件系统在复用同一条消息通道发送请求消息时,复用该通道的租户系统无法获取外部系统的反馈消息的情况,保证了企业的运营效率。同时,在消息转发的过程中,第二租户系统始终无法知晓第一租户系统的地址信息,整个过程是由第一租户系统通过代理主动向第二租户系统建立消息通道,从而完成消息的转发。基于此,可以保证第一租户系统的地址信息的安全,继而避免在消息转发的过程中,由于第一租户系统的地址的泄露,造成企业数据的泄露,威胁企业安全。
附图说明
为了更清楚地说明本申请实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施方式提供的一种软件系统的网络架构图;
图2为本申请实施方式提供的一种消息传输装置的硬件结构示意图;
图3为本申请实施方式提供的一种消息传输方法的流程示意图;
图4为本申请实施方式提供的一种第二租户根据收到的反馈消息确定该反馈消息对应的第一租户系统标识的方法的流程示意图;
图5为本申请实施方式提供的一种表格状态的消息结构的示意图;
图6为本申请实施方式提供的一种表格状态的消息结构的基础单元的示意图;
图7为本申请实施方式提供的一种第一租户系统根据连接请求,建立与第二租户系统之间的消息通道的方法的流程示意图;
图8为本申请实施方式提供的一种根据反馈消息,确定反馈消息中携带的子系统标识的方法的流程示意图;
图9为本申请实施方式提供的一种消息传输装置的功能模块组成框图;
图10为本申请实施方式提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施方式”意味着,结合实施方式描述的特定特征、结果或特性可以包含在本申请的至少一个实施方式中。在说明书中的各个位置出现该短语并不一定均是指相同的实施方式,也不是与其它实施方式互斥的独立的或备选的实施方式。本领域技术人员显式地和隐式地理解的是,本文所描述的实施方式可以与其它实施方式相结合。
首先,需要说明的是,如图1所示,图1为本申请涉及的软件系统的网络架构图,该软件系统100包括企业的软件系统101和外部的软件系统102。其中,企业的软件系统101中可以包括多个租户系统,在本实施方式中,将以两个租户系统:第一租户系统103和第二租户系统104为例进行说明。其他数量的租户系统下的消息传输方法与两个租户系统下的消息传输方法类似,在此不再赘述。
在本实施方式中,第一租户系统103和第二租户系统104相互独立,换句话说,第一租户系统103和第二租户系统104互为消息孤岛。同时,第二租户系统104通过默认消息通道105与外部的软件系统102通讯,第一租户系统103复用第二租户系统104的默认消息通道105,从而间接与外部的软件系统102通讯。
其次,参阅图2,图2为本申请实施方式提供的一种消息传输装置的硬件结构示意图。该消息传输装置200包括至少一个处理器201,通信线路202,存储器203以及至少一个通信接口204。
在本实施方式中,处理器201,可以是一个通用中央处理器(central processingunit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路202,可以包括一通路,在上述组件之间传送信息。
通信接口204,可以是任何收发器一类的装置(如天线等),用于与其他设备或通信网络通信,例如以太网,RAN,无线局域网(wireless local area networks,WLAN)等。
存储器203,可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
在本实施方式中,存储器203可以独立存在,通过通信线路202与处理器201相连接。存储器203也可以和处理器201集成在一起。本申请实施方式提供的存储器203通常可以具有非易失性。其中,存储器203用于存储执行本申请方案的计算机执行指令,并由处理器201来控制执行。处理器201用于执行存储器103中存储的计算机执行指令,从而实现本申请下述实施方式中提供的方法。
在可选的实施方式中,计算机执行指令也可以称之为应用程序代码,本申请对此不作具体限定。
在可选的实施方式中,处理器201可以包括一个或多个CPU,例如图1中的CPU0和CPU1。
在可选的实施方式中,消息传输装置200可以包括多个处理器,例如图2中的处理器201和处理器207。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在可选的实施方式中,若消息传输装置200为服务器,则消息传输装置200还可以包括输出设备205和输入设备206。输出设备205和处理器201通信,可以以多种方式来显示信息。例如,输出设备205可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备206和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备206可以是鼠标、键盘、触摸屏设备或传感设备等。
上述的消息传输装置200可以是一个通用设备或者是一个专用设备。本申请实施方式不限定消息传输装置200的类型。
以下,将对本申请所公开的消息传输方法进行说明:
参阅图3,图3为本申请实施方式提供的一种消息传输方法的流程示意图。该消息传输方法包括以下步骤:
301:第二租户系统根据收到的反馈消息确定该反馈消息对应的第一租户系统标识。
在本实施方式中,反馈消息为外部的软件系统对第一租户系统通过复用第二租户系统的默认消息通道所发出的请求消息所做出的反馈,该反馈通过默认的消息通道被发送至第二租户系统。同时,在本实施方式中,由于第一租户系统和第二租户系统相互独立,因此,第二租户系统无法直接将反馈消息发送至第一租户系统。
基于此,第二租户系统在接收到反馈消息后,首先会解析出反馈消息中所携带的目标系统标识,确定该反馈消息的目标系统。在本实施方式中,上述反馈消息为外部的软件系统对第一租户系统通过复用第二租户系统的默认消息通道所发出的请求消息所做出的反馈,因此,其携带的目标系统标识即为第一租户系统标识。
在本实施方式中,企业的软件系统中的各个租户系统,在复用消息默认消息通道向外部的软件系统发出请求消息时,会将自身的系统标识添加进请求消息中。例如,可以在请求消息中添加一个系统标识字段,从而将该系统标识填入该字段中。基于此,外部的软件系统处理完该请求后,生成反馈消息时,也会将该请求中的系统标识添加进反馈消息中。如上述所述,同样可以在反馈消息中添加一个来源系统标识字段,从而将该系统标识填入该字段中。在本实施方式中,也可以使用其他向请求消息和反馈消息中添加系统标识的方法,本申请对此不做限制。
同时,在本实施方式中,提供了一种第二租户根据收到的反馈消息确定该反馈消息对应的第一租户系统标识的方法,如图4所示,包括:
401:第二租户系统对反馈消息进行解析,得到反馈消息的消息结构。
在本实施方式中,可以将解析的结果以表格的形式输出,如图5所示。
402:第二租户系统根据消息结构,确定反馈消息中目标系统标识位的位置。
在本实施方式中,反馈消息的消息结构是以表格的形式输出,如图5所示,而表格的基本构成单元可以认为是线段和字符串,其中,字符串用于记录信息,线段则是用于将表区域划分为多个简单矩形。基于此,可以简单的认为,每个由线段划分出的矩形和该矩形区域中的字符串(包括空字符串)共同构成表格的一个基础单元,如图6所示。其中,线段构成了该基础单元的边界,字符串构成了该基础单元的内容。同时,字符串在单元中的位置是浮动的,但不会超出由线段所构成的边界的范围。基于此,可以认定表格状态的消息结构是由一组单元构成的有序集合。
因此,从表格状态的消息结构中提取的信息,可以视为线段和字符串的混合体。对于线段,为了避免在后续操作中需要对线段的求交计算,提高处理效率,在本实施方式中,采用对线段编号,而非对交点编号的方式来标识线段。示例性的,图6所示的基本单元中由线段组成的边界即可唯一表达为[xyzh]。
在本实施方式中,可以根据一定的顺序,例如,从左至右、从上至下的顺序,以基础单元为基本粒度对表格状态的消息结构进行信息提取,并记录每个基础单元之间的位置关系。示例性的,每个基础单元a可以表示为(ijpq,b),其中,b为基础单元a中的字符串。
具体而言,对图5所示的表格状态的消息结构进行信息提取后,可以得到:a1(0101,来源系统标识)、a2(0112,1234)、a3(0123,目标系统标识)、a4(0134,4321)、a5(1201,请求消息标识)、a6(1212,1324)、a7(1223,消息类型)和a8(1234,c)。
通常而言,表格中的基础单元常以相邻的两个为一组,其中位于前面的基础单元中的字符串所记录的信息一般为标题,位于后面的基础单元中的字符串所记录的信息一般为前一个基础单元中的标题所对应的数据。基于此,在本实施方式中,可以通过计算每个单元中的字符串与“目标系统标识”标题名之间的相似度,确定目标系统标识位的位置。
示例性的,可以分别对每个基础单元中的字符串进行词嵌入处理,得到对应于每个基础单元的词向量。再计算每个基础单元的词向量与“目标系统标识”标题名词向量之间的相似度,将相似度最高的词向量对应的基础单元作为目标位置。根据表格的排布方式,即可确定该目标位置相邻的下一个基础单元即为目标系统标识位的位置。
403:第二租户系统从反馈消息的目标系统标识位的位置获取第一租户系统标识。
沿用上述图5所示的示例,经过相似度计算,基础单元a3(0123,目标系统标识)的词向量与“目标系统标识”标题名词向量之间的相似度最高,则基础单元a3的下一个基础单元,即,基础单元a4即为目标系统标识位的位置。读取其字符串,可以得到目标系统标识为:4321,对应于第一租户系统。由此,对于任意结构的反馈消息,均可快速的获取其目标系统标识,无需统一消息格式,只需要统一“目标系统标识”标题名即可,适用范围广,效率高。
302:第二租户系统根据第一租户系统标识,确定第一租户系统标识对应的代理。
在本实施方式中,企业的软件系统中的每个租户系统均配置有一个专属代理,可以通过建立对应关系表确定每个代理与每个租户系统的系统标识之间的对应关系。由此,可以通过查询该关系表,确定第一租户系统标识对应的代理。
303:第二租户系统向代理发送连接请求。
304:第一租户系统从代理接收连接请求。
305:第一租户系统根据连接请求,建立与第二租户系统之间的消息通道。
在本实施方式中,提出了一种第一租户系统根据连接请求,建立与第二租户系统之间的消息通道的方法,如图7所示,包括:
701:第一租户系统根据连接请求,确定代理的地址信息。
在本实施方式中,代理在将连接请求转发至第一租户系统时,会将自身的地址信息添加进该连接请求中。而第一租户系统根据连接请求,确定代理的地址信息的方法,与上述步骤401-403所述的第二租户根据收到的反馈消息确定该反馈消息对应的第一租户系统标识的方法类似,在此不再赘述。
702:第一租户系统根据地址信息,建立与代理之间的第一消息通道。
在本实施方式中,该第一消息通道可以是基于SSH协议的消息通道。
示例性的,第一租户系统在接收到连接请求后,根据地址信息主动建立与代理之间的SSH连接隧道。在SSH连接隧道建立完成后,代理会复用该SSH连接隧道,反向SSH连接置第一租户系统,从而完成第一消息通道的建立。
703:第一租户系统获取第二消息通道。
在本实施方式中,第二消息通道是由代理建立的,代理与第二租户系统之间的消息通道,该第二消息通道也可以是基于SSH协议的消息通道。基于此,该第二消息通道的建立方法与步骤702中第一消息通道的建立方法类似,在此不再赘述。
704:第一租户系统将第一消息通道和第二消息通道作为第一租户系统与第二租户系统之间的消息通道。
在可选的实施方式中,第一租户系统在根据连接请求,建立与第二租户系统之间的消息通道之前,还可以对连接请求进行安全审核,以确定是否建立消息通道。
示例性的,第一租户系统可以根据连接请求,确定第二租户系统在白名单中;和/或第一租户系统可以根据连接请求,确定外部的软件系统合法。具体而言,在本实施方式中,连接请求可以包括外部的软件系统的系统标识和反馈消息对应的请求消息标识。由于该反馈消息时外部的软件系统基于第一租户系统发出的请求消息的反馈,因此,该反馈消息对应的请求消息标识即为第一租户系统发出的请求消息的标识。
基于此,第一租户系统在接收到连接请求后,可以对其进行分析,得到表格状态的消息结构,继而通过与步骤401-403中所述的第二租户根据收到的反馈消息确定该反馈消息对应的第一租户系统标识的方法相似的方法,获取外部的软件系统的系统标识和反馈消息对应的请求消息标识。
然后,通过反馈消息对应的请求消息标识,在自身的历史请求消息库中进行匹配,确定该反馈消息对应的请求消息标识对应的请求消息。具体的匹配方式可以是计算相似度,也可以是计算最长公共子串的长度,本申请对此不做限制。
最后,根据匹配出的请求消息,确定该请求消息发往的目标系统的系统标识,若请求消息发往的目标系统的系统标识与外部的软件系统的系统标识相同,则确定外部的软件系统合法。即,该反馈消息确实来自于原本请求消息发往的外部的软件系统。同时,根据匹配出的请求消息,确定该请求消息发往的目标系统的系统标识的方法与步骤401-403中所述的第二租户根据收到的反馈消息确定该反馈消息对应的第一租户系统标识的方法类似,在此不再赘述。
306:第一租户系统通过消息通道从第二租户系统接收反馈消息。
在可选的实施方式中,第一租户系统中还可以包括至少一个子系统,上述请求消息是由这些子系统中的一个或多个发出的。基于此,第一租户系统在接收到反馈消息后,可以根据反馈消息,确定反馈消息中携带的子系统标识。具体而言,如图8所示,包括:
801:第一租户系统对反馈消息进行解析,得到反馈消息的消息结构。
在本实施方式中,第一租户系统对反馈消息进行解析,得到反馈消息的消息结构的方法,和步骤401中第二租户系统对反馈消息进行解析,得到反馈消息的消息结构的方法类似,在此不再赘述。
802:第一租户系统根据消息结构,确定反馈消息中标识位的位置。
在本实施方式中,第一租户系统根据消息结构,确定反馈消息中标识位的位置的方法,和步骤402中第二租户系统根据消息结构,确定反馈消息中目标系统标识位的位置的方法类似,在此不再赘述。
803:第一租户系统从反馈消息的标识位的位置获取第一标识。
在本实施方式中,第一租户系统从反馈消息的标识位的位置获取第一标识的方法,和步骤403中第二租户系统从反馈消息的目标系统标识位的位置获取第一租户系统标识的方法类似,在此不再赘述。
804:第一租户系统根据解扰参数对第一标识进行解扰,得到子系统标识。
在本实施方式中,解扰参数可以预先配置于第一租户系统的配置信息中。
由此,第一租户系统可以根据解析出的子系统标识,将反馈消息发送至至少一个子系统中与子系统标识对应的子系统。
在可选的实施方式中,本发明所提供的消息传输方法中的第一租户系统也可以指第一租户系统中的某个子系统,继而由该子系统主动建立与第二租户系统之间的消息通道,获取反馈消息,从而提升消息传输的效率。在该情况下的消息传输方法与步骤301-306中第一租户系统与第二租户系统之间的消息传输方法类似,在此不再赘述。
综上所述,本发明所提供的消息传输方法中,第一租户系统通过从代理接受由第二租户系统发出的连接请求,继而主动建立与第二租户系统之间的消息通道,从而通过该消息通道从第二租户系统接收反馈消息。由此,避免了企业的软件系统在复用同一条消息通道发送请求消息时,复用该通道的租户系统无法获取外部系统的反馈消息的情况,保证了企业的运营效率。同时,在消息转发的过程中,第二租户系统始终无法知晓第一租户系统的地址信息,整个过程是由第一租户系统通过代理主动向第二租户系统建立消息通道,从而完成消息的转发。基于此,可以保证第一租户系统的地址信息的安全,继而避免在消息转发的过程中,由于第一租户系统的地址的泄露,造成企业数据的泄露,威胁企业安全。
参阅图9,图9为本申请实施方式提供的一种消息传输装置的功能模块组成框图。如图9所示,该消息传输装置900包括:
接收模块901,用于从代理接收连接请求,其中,连接请求是由第二租户系统发给代理的,第一租户系统和第二租户系统相互独立;
通道建立模块902,用于根据连接请求,建立与第二租户系统之间的消息通道;
该接收模块901,还用于通过消息通道从第二租户系统接收反馈消息,其中,反馈消息为外部系统对第一租户系统发出的请求消息做出的反馈。
在本发明的实施方式中,在根据连接请求,建立与第二租户系统之间的消息通道方面,通道建立模块902,具体用于:
根据连接请求,确定代理的地址信息;
根据地址信息,建立与代理之间的第一消息通道;
获取第二消息通道,第二消息通道是由代理建立的,代理与第二租户系统之间的消息通道;
将第一消息通道和第二消息通道作为第一租户系统与第二租户系统之间的消息通道。
在本发明的实施方式中,在根据地址信息建立与代理之间的第一消息通道方面,通道建立模块902,具体用于:
根据地址信息,建立与代理之间的SSH连接隧道;
将SSH连接隧道作为第一消息通道。
在本发明的实施方式中,第一租户系统包括至少一个子系统,基于此,该消息传输装置900,还包括:
传输模块903,用于根据反馈消息,确定反馈消息中携带的子系统标识;以及,根据子系统标识,将反馈消息发送至至少一个子系统中与子系统标识对应的子系统。
在本发明的实施方式中,在根据反馈消息,确定反馈消息中携带的子系统标识方面,传输模块903,具体用于:
对反馈消息进行解析,得到反馈消息的消息结构;
根据消息结构,确定反馈消息中标识位的位置;
从反馈消息的标识位的位置获取第一标识;
根据解扰参数对第一标识进行解扰,得到子系统标识,其中,解扰参数预先配置于第一租户系统的配置信息中。
在本发明的实施方式中,在根据连接请求,建立与第二租户系统之间的消息通道之前,通道建立模块902,还用于:
根据连接请求,确定第二租户系统在白名单中;和/或
根据连接请求,确定外部系统合法。
在本发明的实施方式中,连接请求包括:外部系统的系统标识和反馈消息对应的请求消息标识,其中,请求消息标识对应的请求消息是由第一租户系统发出的;
基于此,在根据连接请求,确定外部系统合法方面,通道建立模块902,具体用于:
根据连接请求中的请求消息标识,确定请求消息标识对应的请求消息;
根据请求消息,确定请求消息发往的目标系统的系统标识;
若请求消息发往的目标系统的系统标识与外部系统的系统标识相同,则确定外部系统合法。
参阅图10,图10为本申请实施方式提供的一种电子设备的结构示意图,该电子设备1000设置于第一租户系统中。如图10所示,电子设备1000包括收发器1001、处理器1002和存储器1003。它们之间通过总线1004连接。存储器1003用于存储计算机程序和数据,并可以将存储器1003存储的数据传输给处理器1002。
处理器1002用于读取存储器1003中的计算机程序执行以下操作:
从代理接收连接请求,其中,连接请求是由第二租户系统发给代理的,第一租户系统和第二租户系统相互独立;
根据连接请求,建立与第二租户系统之间的消息通道;
通过消息通道从第二租户系统接收反馈消息,其中,反馈消息为外部系统对第一租户系统发出的请求消息做出的反馈。
在本发明的实施方式中,在根据连接请求,建立与第二租户系统之间的消息通道方面,处理器1002,具体用于执行以下操作:
根据连接请求,确定代理的地址信息;
根据地址信息,建立与代理之间的第一消息通道;
获取第二消息通道,第二消息通道是由代理建立的,代理与第二租户系统之间的消息通道;
将第一消息通道和第二消息通道作为第一租户系统与第二租户系统之间的消息通道。
在本发明的实施方式中,在根据地址信息建立与代理之间的第一消息通道方面,处理器1002,具体用于执行以下操作:
根据地址信息,建立与代理之间的SSH连接隧道;
将SSH连接隧道作为第一消息通道。
在本发明的实施方式中,第一租户系统包括至少一个子系统,基于此,处理器1002,还用于执行以下操作:
根据反馈消息,确定反馈消息中携带的子系统标识;以及,根据子系统标识,将反馈消息发送至至少一个子系统中与子系统标识对应的子系统。
在本发明的实施方式中,在根据反馈消息,确定反馈消息中携带的子系统标识方面,处理器1002,具体用于执行以下操作:
对反馈消息进行解析,得到反馈消息的消息结构;
根据消息结构,确定反馈消息中标识位的位置;
从反馈消息的标识位的位置获取第一标识;
根据解扰参数对第一标识进行解扰,得到子系统标识,其中,解扰参数预先配置于第一租户系统的配置信息中。
在本发明的实施方式中,在根据连接请求,建立与第二租户系统之间的消息通道之前,处理器1002,还用于执行以下操作:
根据连接请求,确定第二租户系统在白名单中;和/或
根据连接请求,确定外部系统合法。
在本发明的实施方式中,连接请求包括:外部系统的系统标识和反馈消息对应的请求消息标识,其中,请求消息标识对应的请求消息是由第一租户系统发出的;
基于此,在根据连接请求,确定外部系统合法方面,处理器1002,具体用于执行以下操作:
根据连接请求中的请求消息标识,确定请求消息标识对应的请求消息;
根据请求消息,确定请求消息发往的目标系统的系统标识;
若请求消息发往的目标系统的系统标识与外部系统的系统标识相同,则确定外部系统合法。
应理解,本申请中的消息传输装置可以包括智能手机(如Android手机、iOS手机、Windows Phone手机等)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备MID(MobileInternet Devices,简称:MID)、机器人或穿戴式设备等。上述消息传输装置仅是举例,而非穷举,包含但不限于上述消息传输装置。在实际应用中,上述消息传输装置还可以包括:智能车载终端、计算机设备等等。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施方式或者实施方式的某些部分所述的方法。
因此,本申请实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现如上述方法实施方式中记载的任何一种消息传输方法的部分或全部步骤。例如,所述存储介质可以包括硬盘、软盘、光盘、磁带、磁盘、优盘、闪存等。
本申请实施方式还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施方式中记载的任何一种消息传输方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施方式,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施方式均属于可选的实施方式,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施方式中,对各个实施方式的描述都各有侧重,某个实施方式中没有详述的部分,可以参见其他实施方式的相关描述。
在本申请所提供的几个实施方式中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施方式的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施方式进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施方式的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (9)
1.一种消息传输方法,其特征在于,所述方法包括:
第一租户系统从代理接收连接请求,其中,所述连接请求是由第二租户系统发给所述代理的,所述第一租户系统和所述第二租户系统相互独立;
所述第一租户系统根据所述连接请求,确定所述代理的地址信息;
所述第一租户系统根据所述地址信息,建立与所述代理之间的第一消息通道;
所述第一租户系统获取第二消息通道,所述第二消息通道是由所述代理建立的,所述代理与所述第二租户系统之间的消息通道;
所述第一租户系统将所述第一消息通道和所述第二消息通道作为所述第一租户系统与所述第二租户系统之间的消息通道;
所述第一租户系统通过所述消息通道从所述第二租户系统接收反馈消息,其中,所述反馈消息为外部系统对所述第一租户系统通过复用所述第二租户系统的默认消息通道发出的请求消息做出的反馈,该反馈通过所述默认消息通道被发送至所述第二租户系统。
2.根据权利要求1所述的方法,其特征在于,所述第一租户系统根据所述地址信息建立与所述代理之间的第一消息通道,包括:
所述第一租户系统根据所述地址信息,建立与所述代理之间的SSH连接隧道;
所述第一租户系统将所述SSH连接隧道作为所述第一消息通道。
3.根据权利要求1-2中任意一项所述的方法,其特征在于,所述第一租户系统包括至少一个子系统,所述方法还包括:
所述第一租户系统根据所述反馈消息,确定所述反馈消息中携带的子系统标识;
所述第一租户系统根据所述子系统标识,将所述反馈消息发送至所述至少一个子系统中与所述子系统标识对应的子系统。
4.根据权利要求3所述的方法,其特征在于,所述第一租户系统根据所述反馈消息,确定所述反馈消息中携带的子系统标识,包括:
所述第一租户系统对所述反馈消息进行解析,得到所述反馈消息的消息结构;
所述第一租户系统根据所述消息结构,确定所述反馈消息中标识位的位置;
所述第一租户系统从所述反馈消息的标识位的位置获取第一标识;
所述第一租户系统根据解扰参数对所述第一标识进行解扰,得到所述子系统标识,其中,所述解扰参数预先配置于所述第一租户系统的配置信息中。
5.根据权利要求1-2中任意一项所述的方法,其特征在于,在所述第一租户系统根据所述连接请求,建立与所述第二租户系统之间的消息通道之前,所述方法还包括:
所述第一租户系统根据所述连接请求,确定所述第二租户系统在白名单中;和/或
所述第一租户系统根据所述连接请求,确定所述外部系统合法。
6.根据权利要求5所述的方法,其特征在于,
所述连接请求包括:所述外部系统的系统标识和所述反馈消息对应的请求消息标识,其中,所述请求消息标识对应的请求消息是由所述第一租户系统发出的;
所述第一租户系统根据所述连接请求,确定所述外部系统合法,包括:
所述第一租户系统根据所述连接请求中的请求消息标识,确定所述请求消息标识对应的请求消息;
所述第一租户系统根据所述请求消息,确定所述请求消息发往的目标系统的系统标识;
若所述请求消息发往的目标系统的系统标识与所述外部系统的系统标识相同,则确定所述外部系统合法。
7.一种消息传输装置,所述装置设置于第一租户系统,其特征在于,所述装置包括:
接收模块,用于从代理接收连接请求,其中,所述连接请求是由第二租户系统发给所述代理的,所述第一租户系统和所述第二租户系统相互独立;
通道建立模块,用于根据所述连接请求,确定所述代理的地址信息;根据所述地址信息,建立与所述代理之间的第一消息通道;获取第二消息通道,所述第二消息通道是由所述代理建立的,所述代理与所述第二租户系统之间的消息通道;将所述第一消息通道和所述第二消息通道作为所述第一租户系统与所述第二租户系统之间的消息通道;
所述接收模块,还用于通过所述消息通道从所述第二租户系统接收反馈消息,其中,所述反馈消息为外部系统对所述第一租户系统通过复用所述第二租户系统的默认消息通道发出的请求消息做出的反馈,该反馈通过所述默认消息通道被发送至所述第二租户系统。
8.一种电子设备,其特征在于,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述一个或多个程序包括用于执行权利要求1-6任一项方法中的步骤的指令。
9.一种可读计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110702576.2A CN113329096B (zh) | 2021-06-23 | 2021-06-23 | 消息传输方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110702576.2A CN113329096B (zh) | 2021-06-23 | 2021-06-23 | 消息传输方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113329096A CN113329096A (zh) | 2021-08-31 |
CN113329096B true CN113329096B (zh) | 2023-04-07 |
Family
ID=77424528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110702576.2A Active CN113329096B (zh) | 2021-06-23 | 2021-06-23 | 消息传输方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113329096B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448670B (zh) * | 2021-12-27 | 2023-06-23 | 天翼云科技有限公司 | 一种数据传输方法、装置及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107395532A (zh) * | 2017-07-11 | 2017-11-24 | 北京航空航天大学 | 一种基于sdn的多租户虚拟网络隔离方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10893100B2 (en) * | 2015-03-12 | 2021-01-12 | International Business Machines Corporation | Providing agentless application performance monitoring (APM) to tenant applications by leveraging software-defined networking (SDN) |
US10476942B2 (en) * | 2016-12-21 | 2019-11-12 | International Business Machines Corporation | DNS resolution of overlapping domains in a multi-tenant computing environment |
CN110580127B (zh) * | 2018-06-07 | 2020-10-16 | 华中科技大学 | 一种基于多租户云存储的资源管理方法和资源管理系统 |
CN108566444A (zh) * | 2018-08-01 | 2018-09-21 | 长沙拓扑陆川新材料科技有限公司 | 一种云服务的网络传输方法及系统 |
CN109254847B (zh) * | 2018-08-22 | 2022-04-19 | 创新先进技术有限公司 | 一种租户映射信息获取方法及装置 |
CN111294319B (zh) * | 2018-12-07 | 2022-05-27 | 网宿科技股份有限公司 | 网络隔离的方法、装置,网络设备和可读存储介质 |
CN111935110B (zh) * | 2020-07-24 | 2022-05-06 | 北京金山云网络技术有限公司 | 一种对租户访问容器实例的权限的控制方法和装置 |
CN112118565B (zh) * | 2020-08-14 | 2023-07-25 | 金蝶医疗软件科技有限公司 | 多租户服务灰度发布方法、装置、计算机设备和存储介质 |
CN112491630B (zh) * | 2020-12-07 | 2023-08-04 | 北京华胜天成科技股份有限公司 | 一种裸机自动部署方法、装置及云环境平台 |
CN112910685B (zh) * | 2021-01-13 | 2022-04-01 | 新华三大数据技术有限公司 | 实现对容器网络统一管理的方法及装置 |
-
2021
- 2021-06-23 CN CN202110702576.2A patent/CN113329096B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107395532A (zh) * | 2017-07-11 | 2017-11-24 | 北京航空航天大学 | 一种基于sdn的多租户虚拟网络隔离方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113329096A (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111818136B (zh) | 数据处理方法、装置、电子设备及计算机可读介质 | |
CN111258725A (zh) | 一种基于区块链的数据处理方法、装置、设备和介质 | |
CN110377440B (zh) | 信息处理方法和装置 | |
CN110471848B (zh) | 一种动态返回报文的方法和装置 | |
CN113489593B (zh) | Json报文的核对方法和json报文的核对装置 | |
CN112905933A (zh) | 页面跳转方法、装置、电子设备及存储介质 | |
CN112416458A (zh) | 基于ReactNative的预加载方法、装置、计算机设备及存储介质 | |
CN111885184A (zh) | 高并发场景下热点访问关键字处理方法和装置 | |
CN113329096B (zh) | 消息传输方法、装置、电子设备和存储介质 | |
CN114780519A (zh) | 基于can通讯的dbc文件生成方法、装置、设备及介质 | |
US20150019955A1 (en) | Method and system for displaying literal contents, mobile terminal, cloud typesetting server, and storage medium | |
CN112835632A (zh) | 一种端能力的调用方法、设备和计算机存储介质 | |
CN112650804B (zh) | 大数据接入方法、装置、系统及存储介质 | |
CN114064308A (zh) | 基于列式数据扫描的多数据发送和接收方法、装置和设备 | |
US9813927B2 (en) | Mobile terminal flow identification method and apparatus | |
CN113742235A (zh) | 一种校验代码的方法和装置 | |
CN111984202A (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
CN116600031B (zh) | 报文处理方法、装置、设备及存储介质 | |
CN113821750B (zh) | 一种页面数据处理方法、系统、电子设备及可读存储介质 | |
CN114860390B (zh) | 容器数据管理方法、装置、程序产品、介质及电子设备 | |
CN106649388A (zh) | 信息检索方法及装置 | |
CN113778350A (zh) | 一种日志打印方法和装置 | |
CN113448652A (zh) | 一种请求处理方法和装置 | |
CN111026666A (zh) | 测试数据处理方法、装置、计算机系统和介质 | |
CN114372079A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231007 Address after: Room 220202, 2nd Floor, East Unit, Building 2, South Jincheng Four Seasons, East Section of Kuang Kuang Road, Chanba District, Xi'an City, Shaanxi Province, 710038 Patentee after: Xi'an Dekun Enterprise Management Service Co.,Ltd. Address before: Floor 15, no.1333, Lujiazui Ring Road, pilot Free Trade Zone, Pudong New Area, Shanghai Patentee before: Weikun (Shanghai) Technology Service Co.,Ltd. |
|
TR01 | Transfer of patent right |