CN112637130A - 一种基于消费队列的数据交换方法及系统 - Google Patents

一种基于消费队列的数据交换方法及系统 Download PDF

Info

Publication number
CN112637130A
CN112637130A CN202011378206.XA CN202011378206A CN112637130A CN 112637130 A CN112637130 A CN 112637130A CN 202011378206 A CN202011378206 A CN 202011378206A CN 112637130 A CN112637130 A CN 112637130A
Authority
CN
China
Prior art keywords
client
data
subscription task
subscription
consumption
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
CN202011378206.XA
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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN202011378206.XA priority Critical patent/CN112637130A/zh
Publication of CN112637130A publication Critical patent/CN112637130A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于消费队列的数据交换方法及系统,包括:接收外网服务器发送的客户端数据查询请求;解析客户端数据查询请求,将得到的订阅任务发送至元数据库,以得到消费队列;转换接收的内部订阅任务数据,将得到的外部订阅任务数据经外网服务器返回至相应客户端,其中所述内部订阅任务数据是通过消费客户端消费消息队列而得到。本发明客户端与内网订阅服务通过HTTP交互,不直接接触MQ数据;可通过客户端循环请求,获取数据。

Description

一种基于消费队列的数据交换方法及系统
技术领域
本发明属于计算机网络领域,尤其涉及一种基于消费队列的数据交换方法及系统。
背景技术
随着互联网的发展和大数据技术的不断成熟,企业的外部客户端进行分析需要使用的数据量越来越大,而消息队列(Message Queue,MQ)技术为大量数据的传输提供了非常好的传输方式。
现有技术中因客户端直接消费MQ,所以外部客户端必须与内网MQ数据相连通,但这极大地增加了安全风险,已经不满足现在互联网企业的需求。因此现在急需一种数据交换方法来进行内网数据到客户端的传输,以使企业可以将内部数据存储和外部数据的使用进行分离。
发明内容
为解决上述问题,本发明提供一种基于消费队列的数据交换方法及系统,客户端不直接接触消费队列,以保证系统的安全性。
本发明技术解决方案包括:
一种基于消费队列的数据交换方法,适用于由客户端、外网服务器、内网服务器、元数据库与消费客户端组成的系统,其步骤包括:
1)接收外网服务器发送的客户端数据查询请求;
2)解析客户端数据查询请求,将得到的订阅任务发送至元数据库,以得到消费队列;
3)转换接收的内部订阅任务数据,将得到的外部订阅任务数据经外网服务器返回至相应客户端,其中所述内部订阅任务数据是通过消费客户端消费消息队列而得到。
进一步地,客户端数据查询请求的字段包括用户名、sql语句、交换方式和消费者组。
进一步地,根据用户名与元数据库,判断所述客户端数据查询请求的合规性。
进一步地,通过消费者组,获取消费客户端
进一步地,通过以下步骤得到所述订阅任务:
1)解析sql语句,获取所需topic、数据字段数量与字段规则;
2)依据交换方式拉取所需topic中的指定字段内容;
3)根据数据字段数量、指定字段内容与字段规则,获取订阅任务。
进一步地,在内网服务器内存中,依据字段规则判断数据字段数量与指定字段内容是否合规。
进一步地,获取元数据库的消费队列前,元数据库判断订阅任务中的数据字段数量和指定字段内容是否合规。
进一步地,所述系统还包括生产客户端;若元数据库内没有相应订阅任务,则通过生产客户端和订阅任务产生消费队列。
进一步地,在消费客户端消费生产客户端产生的消息队列之前,元数据库判断该消息队列是否合规。
进一步地,内部订阅任务数据的格式为byte数据。
进一步地,客户端数据查询请求与外部订阅任务数据的格式包括:HTTP格式。
一种基于消费队列的数据交换系统,包括:
客户端,用以产生客户端数据查询请求;
外网服务器,用以将客户端数据查询请求发送至内网服务器;将接收的外部订阅任务数据返回至客户端;
内网服务器,用以解析客户端数据查询请求,将得到的订阅任务发送至元数据库;转换接收的内部订阅任务数据,将得到的外部订阅任务数据发送至外网服务器;
元数据库,用以存储消息队列;
消费客户端,用以消费消息队列,得到内部订阅任务数据。
进一步地,还包括生产客户端,用以当元数据库没有相应消费队列时,根据订阅任务产生相应消费队列。
本发明与现有技术相比具有如下优点:
1、数据安全:客户端与内网订阅服务通过HTTP交互,不直接接触MQ数据。
2、实时性:通过客户端循环请求,获取数据。
附图说明
图1为本发明方法的数据流程图。
具体实施方式
以下结合具体实施例和附图对本发明进行详细说明,
由客户端通过HTTP的post方式发送request访问内网订阅服务,request以json格式组织,请求内容包含(uid用户名,sql语句,交换方式scopeEnum,group消费者组)四个字段,内网订阅服务接收到请求后,进行鉴权,通过访问元数据库,确定用户身份判断其消费权限,然后开始消费MQ中的数据,对数据进行核实后,再以HTTP返回客户端,由此保证客户端与MQ隔离。保证数据安全。客户端再次通过HTTP请求时,内网订阅服务查询元数据库发现其请求过数据,则直接消费MQ中的数据,对数据进行核实后,再以HTTP返回客户端,客户端实时请求,保障数据交换的实时性。
实例1交换技术(订阅)测试
Linux服务器2台,分别是服务器1和服务器2;
1、将用户的权限写入元数据库,用以判断用户请求的合规性。
2、由服务器1上的客户端以post的方式发送HTTP发送到服务器2端的8085端口。
3、服务器2上的订阅服务接到HTTP,调用页面接口,通过查询HTTP请求中的用户名在元数据库中的权限为正常状态,然后启动订阅任务程序,根据规则解析sql,获取所需要的topic和所需字段,并依据交换方式字段拉取指定topic中的数据,按照解析sql获得字段规则在内存中判断转化拉取的数据,获得指定格式的数据。
4、订阅任务请求元数据服务,判断拉取到数据字段数量和指定字段的内容已符合规定,将数据通过MQ的生产者客户端发送到临时MQ中。
5、接口服务获取客户端请求中消费者组,调用MQ的消费客户端消费临时MQ,获取订阅任务的数据,然后将订阅任务数据转换为byte数据,通过服务器2端的8085端口,以HTTP请求方式返回给客户端。
实例2交换技术(已存在的订阅任务)测试
Linux服务器2台,分别是服务器1和服务器2;
1、将用户的权限写入元数据库,用以判断用户请求的合规性。
2、由服务器1上的客户端以post的方式发送HTTP发送到内网服务器端的8085端口。
3、服务器2上的订阅服务接到HTTP,调用页面接口,通过查询HTTP请求中的用户名在元数据库中的权限为正常状态,随后请求元数据服务,判断订阅任务此前已经存在。
4、订阅接口请求元数据服务,得到已存在订阅任务所转存的临时MQ的topic,然后接口服务获取客户端请求中消费者组,调用MQ的消费客户端消费临时MQ的topic的数据,获取订阅任务的数据,然后将数据转换为byte数据,通过HTTP请求以数据流的方式返回给客户端。
实例3交换技术(不符合规范的订阅请求)测试
Linux服务器2台,分别是服务器1和服务器2;
1、将用户的权限写入元数据库,用以判断用户请求的合规性。
2、由服务器1上的客户端以post的方式发送HTTP发送到到内网服务器端的8085端口。
3、服务器2上的订阅服务接到HTTP,调用页面接口判断其权限为正常状态,解析sql获取过滤规则,然后请求元数据服务,判断sql不符合鉴权规则,禁止其拉取MQ中的数据。
4、订阅接口消费临时MQ,因sql不合规,临时MQ中没有转存数据,所以客户端订阅不到数据,将报错信息返回给客户端。
提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。

Claims (10)

1.一种基于消费队列的数据交换方法,适用于由客户端、外网服务器、内网服务器、元数据库与消费客户端组成的系统,其步骤包括:
1)接收外网服务器发送的客户端数据查询请求;
2)解析客户端数据查询请求,将得到的订阅任务发送至元数据库,以得到消费队列;
3)转换接收的内部订阅任务数据,将得到的外部订阅任务数据经外网服务器返回至相应客户端,其中所述内部订阅任务数据是通过消费客户端消费消息队列而得到。
2.如权利要求1所述的方法,其特征在于,客户端数据查询请求的字段包括用户名、sql语句、交换方式和消费者组。
3.如权利要求2所述的方法,其特征在于,根据用户名与元数据库,判断所述客户端数据查询请求的合规性;通过消费者组,获取消费客户端。
4.如权利要求2所述的方法,其特征在于,通过以下步骤得到所述订阅任务:
1)解析sql语句,获取所需topic、数据字段数量与字段规则;
2)依据交换方式拉取所需topic中的指定字段内容;
3)根据数据字段数量、指定字段内容与字段规则,获取订阅任务。
5.如权利要求4所述的方法,其特征在于,在内网服务器内存中,依据字段规则判断数据字段数量与指定字段内容是否合规。
6.如权利要求4所述的方法,其特征在于,获取元数据库的消费队列前,元数据库判断订阅任务中的数据字段数量和指定字段内容是否合规。
7.如权利要求1所述的方法,其特征在于,所述系统还包括生产客户端;若元数据库内没有相应订阅任务,则通过生产客户端和订阅任务产生消费队列;在消费客户端消费生产客户端产生的消息队列之前,元数据库判断该消息队列是否合规。
8.如权利要求1所述的方法,其特征在于,内部订阅任务数据的格式为byte数据;客户端数据查询请求与外部订阅任务数据的格式包括:HTTP格式。
9.一种基于消费队列的数据交换系统,包括:
客户端,用以产生客户端数据查询请求;
外网服务器,用以将客户端数据查询请求发送至内网服务器;将接收的外部订阅任务数据返回至客户端;
内网服务器,用以解析客户端数据查询请求,将得到的订阅任务发送至元数据库;转换接收的内部订阅任务数据,将得到的外部订阅任务数据发送至外网服务器;
元数据库,用以存储消息队列;
消费客户端,用以消费消息队列,得到内部订阅任务数据。
10.如权利要求1所述的系统,其特征在于,还包括生产客户端,用以当元数据库没有相应消费队列时,根据订阅任务产生相应消费队列。
CN202011378206.XA 2020-11-30 2020-11-30 一种基于消费队列的数据交换方法及系统 Pending CN112637130A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011378206.XA CN112637130A (zh) 2020-11-30 2020-11-30 一种基于消费队列的数据交换方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011378206.XA CN112637130A (zh) 2020-11-30 2020-11-30 一种基于消费队列的数据交换方法及系统

Publications (1)

Publication Number Publication Date
CN112637130A true CN112637130A (zh) 2021-04-09

Family

ID=75307251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011378206.XA Pending CN112637130A (zh) 2020-11-30 2020-11-30 一种基于消费队列的数据交换方法及系统

Country Status (1)

Country Link
CN (1) CN112637130A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761322A (zh) * 2021-09-02 2021-12-07 南方电网数字电网研究院有限公司 数据查询方法、系统、电子设备及存储介质
CN114661720A (zh) * 2022-03-28 2022-06-24 浪潮卓数大数据产业发展有限公司 基于消息队列按权限分发数据的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110307543A1 (en) * 2010-06-14 2011-12-15 Richard Allen Megginson Servicing database operations using a messaging server
CN108063772A (zh) * 2018-01-18 2018-05-22 吉浦斯信息咨询(深圳)有限公司 一种基于服务侧的数据安全访问方法及系统
CN109711122A (zh) * 2019-01-23 2019-05-03 北京奇艺世纪科技有限公司 一种权限管理方法、装置、系统、设备及可读存储介质
CN112000741A (zh) * 2020-08-25 2020-11-27 中国南方电网有限责任公司 内外网数据交换系统、方法、装置、计算机设备和介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110307543A1 (en) * 2010-06-14 2011-12-15 Richard Allen Megginson Servicing database operations using a messaging server
CN108063772A (zh) * 2018-01-18 2018-05-22 吉浦斯信息咨询(深圳)有限公司 一种基于服务侧的数据安全访问方法及系统
CN109711122A (zh) * 2019-01-23 2019-05-03 北京奇艺世纪科技有限公司 一种权限管理方法、装置、系统、设备及可读存储介质
CN112000741A (zh) * 2020-08-25 2020-11-27 中国南方电网有限责任公司 内外网数据交换系统、方法、装置、计算机设备和介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
吴晓凌: "《Android移动应用基础教程》", 31 May 2019 *
陈宇翔: "《精通WebSphere MQ》", 30 September 2004, 安徽科学技术出版社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761322A (zh) * 2021-09-02 2021-12-07 南方电网数字电网研究院有限公司 数据查询方法、系统、电子设备及存储介质
CN113761322B (zh) * 2021-09-02 2024-02-09 南方电网数字电网研究院有限公司 数据查询方法、系统、电子设备及存储介质
CN114661720A (zh) * 2022-03-28 2022-06-24 浪潮卓数大数据产业发展有限公司 基于消息队列按权限分发数据的方法及系统

Similar Documents

Publication Publication Date Title
CN112383533B (zh) 报文格式转换方法及装置
CN113839977B (zh) 消息推送方法、装置、计算机设备及存储介质
CN112637130A (zh) 一种基于消费队列的数据交换方法及系统
WO2012109889A1 (zh) 操作设备资源的方法和管理装置
CN106487891B (zh) 一种基于kafka的处理消息的方法
EP2352269A1 (en) Service access method and system
US20130094403A1 (en) Method and apparatus for providing sensor network information
CA3168857A1 (en) Method and apparatus for managing and controlling resource, device and storage medium
CN111427613B (zh) 一种应用程序接口api管理方法和装置
CN113761079A (zh) 数据访问方法、系统和存储介质
CN107241422B (zh) 一种实时将外部用户及用户组信息同步进Apache Ranger的方法
CN112417016B (zh) 一种数据交换方法、系统、设备及存储介质
CN112200465B (zh) 基于多媒体信息智能分析的电力ai方法及系统
CN103092982A (zh) 基于多视图业务模型的信息服务系统
CN112650767B (zh) 一种数据过滤前置的数据交换方法及系统
CN113687958A (zh) 数据处理方法、系统、计算机设备和存储介质
CN115346525A (zh) 验证与数字助理应用交接的代理的操作状态
CN115242787B (zh) 消息处理系统及方法
CN113297148B (zh) 业务日志数据的采集方法、装置、设备及可读存储介质
Adam Usages of semantic web services technologies in IoT ecosystems and its impact in services delivery: A survey
CN114390033A (zh) 基于可扩展通信协议的回路状态巡检仪采集系统及方法
US20110125828A1 (en) Service for Standardization of Resource Metadata Models Via Social Networking - Arriving at an Agreed Upon (Standard) Resource Meta-Model Via Social Consensus
CN107330089B (zh) 跨网络结构化数据收集系统
CN110704159A (zh) 一种基于OpenStack的一体化云操作系统
Wu et al. An IoT Middleware of Data Service

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210409

WD01 Invention patent application deemed withdrawn after publication