CN111143707A - 播发链路选择方法和装置 - Google Patents
播发链路选择方法和装置 Download PDFInfo
- Publication number
- CN111143707A CN111143707A CN201811317929.1A CN201811317929A CN111143707A CN 111143707 A CN111143707 A CN 111143707A CN 201811317929 A CN201811317929 A CN 201811317929A CN 111143707 A CN111143707 A CN 111143707A
- Authority
- CN
- China
- Prior art keywords
- subscription
- module
- points
- syntax tree
- broadcast link
- 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
Links
- 238000010187 selection method Methods 0.000 title abstract description 5
- 238000000034 method Methods 0.000 claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 6
- 238000011144 upstream manufacturing Methods 0.000 claims description 4
- 230000007717 exclusion Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 2
- 230000008859 change Effects 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种播发链路选择方法,所述方法包括以下步骤:通过语法树辅助模块创建语法树,步骤具体如下:在使用语法树辅助模块过程中,定义一组标签及其逻辑关系,通过语法树辅助模块提供的逻辑操作创建语法树;语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。本发明通过需求剖析本质,对驱动元素保持开放,抽象出不变的逻辑,完美的解决了现有技术存在的问题。
Description
技术领域
本发明涉及链路选择技术领域,具体涉及一种播发链路选择方法和装置。
背景技术
在互联网位置数据播发系统中,随着业务需求的不断升级,服务的日益丰富和复杂化,如何更好的提供实时快速并且有选择的切换服务,保障全链路服务高可用,提高播发链路智能化水平成为亟待解决的问题。
当前播发链路在进行连接点选择时主要有以下缺点:
1.选择条件比较固定,当前选择主要根据数据点、数据类型和子类型三个条件进行选择。如果需要灵活扩展新的选择条件必须改动源码,重新发布程序。影响线上服务,而且容易引入缺陷。
2.服务范围比较狭窄,如果想扩展新的层次比较固定,现在通过构建拓扑图结合语法树,可以实时更新整个链路层次结构,添加新的业务组件,使整个链路做到高可用高吞吐量和实时性响应。
发明内容
本发明通过需求剖析本质,对驱动元素保持开放,抽象出不变的逻辑,完美的解决了现有技术存在的问题。
本发明采用的技术方案具体如下:
一种播发链路选择方法,所述方法包括以下步骤:
语法树辅助模块通过用户接口创建语法树,构成语法树模块;
语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
进一步地,创建语法树的步骤具体如下:在使用语法树辅助模块过程中,定义一组标签及其逻辑关系,通过语法树辅助模块提供的逻辑操作创建语法树。
进一步地,语法树辅助模块根据标签的属性进行逻辑操作,并将所述属性结合起来生成语法树。
进一步地,针对各种属性设置互斥条件或者联合条件,通过语法树辅助模块提供的逻辑AND/OR/NOT操作,将属性结合起来生成语法树。
进一步地,播发链路内的服务点通过订阅服务找到上游的订阅点,语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点。
进一步地,订阅点的标签通过执行添加、删除、改变操作,满足播发链路的需求。
进一步地,播发链路中的每个订阅点构成播发链路上的一个节点,全局拓扑图模块在播发链路运行期间对全局拓扑图进行动态维护,结合语法树模块选择的订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
进一步地,所述全局拓扑图在DB中进行维护,定期进行更新。
进一步地,每个全局拓扑图代表一个集群,包括至少一个节点,每个节点发布订阅点供其他集群订阅,同时也订阅其他集群发布的订阅点。
本发明还提供了一种播发链路选择装置,所述装置包括:
通过语法树辅助模块,用于创建语法树,构成语法树模块;
语法树模块,用于根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块,用于结合订阅点后和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
本发明还提供了一种存储器,所述存储器存储有计算机程序,所述计算机程序执行如下步骤:
语法树辅助模块通过用户接口创建语法树,构成语法树模块;
语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
本发明通过将逻辑条件转化为一棵可以执行逻辑操作的语法树,针对输入的各种属性对树进行遍历然后进行逻辑与或操作,从而确定这些属性是否符合语法树所表达的逻辑运算含义。在播发链路中,下游需要高效的路由方式决定连接上游哪个节点,当前播发链路要支持亿级播发链路,播发策略千变万化,有些场景非常复杂,通过该策略可以高效选择节点,特别是在海量用户高并发的情况下,树形结构非常高效,可以极大地提高链路的实时性和吞吐量。
附图说明
图1为语法树模型实施例一;
图2为语法树模型实施例二;
图3为本发明播发链路选择实施例一;
图4为本发明播发链路选择实施例二。
具体实施方式
下文中,结合附图和实施例对本发明作进一步阐述。
实施例一:
本发明提供了一种播发链路选择方法,语法树辅助模块通过用户接口创建语法树,构成语法树模块;语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。具体如下:
一、语法树辅助模块
辅助模块主要提供方便的接口,用户可以通过这些接口快速的创建语法树。使用该模块时,用户在使用时会定义一组标签及其逻辑关系,比如那些属性是互斥的,那些属性可以联合的,辅助模块工具类TermTreeBuilder,提供AND/OR/NOT等逻辑操作,可以将这些属性结合最终生成语法树。
如以下实施例所示:
1)针对group(集群)属性,可以设置互斥条件group:A and(not group:B)。该条件只会选择group A的连接点,对于group B的连接点则不会选择。
2)针对group和version(版本)属性,联合使用group:A and version:1.0.0。该条件会选择group A并且version是1.0.0的节点。
3)提供了TermTreeBuilder,提供了AND/OR/NOT的操作,可以将JAVA中的属性对象比较方便的生成TermTree(语法树),TermTree提供了方法可以生成可读的逻辑语句。
二、语法树模块
播发链路内的服务点需要通过订阅服务找到上游的订阅点,其中要经过比较复杂的逻辑判断,语法树会根据订阅点具有的标签进行高效的逻辑判断确定可以选择哪些订阅点。订阅点的标签在整个系统中可以动态的添加、删除、改变,完全满足了整个链路业务复杂性的需求。
如以下实施例所示:
1)通过语法树可以非常高效的选择满足(group:A AND version:1.0.0)OR(group:B AND version:2.0.0)的订阅点,树形如图1所示,设此时可以得到订阅点集合X。
2)订阅点在播发链路中对应的标签可能改变,比如group A的版本现在升级为version:1.1.0,此时可以通过,此时可以删除version:1.0.0,添加为version:1.1.0,裁剪为如图2所示语法树,此时就会得早最新的连接点集合Y。
三、全局拓扑图模块
播发链路中的每个订阅点都是都属于链路上的一个节点,在整个播发链路运行期间会动态维护全局拓扑图,通过语法树获得符合条件的订阅点后,结合这些拓扑图可以方便的进行路由确定订阅点的优先级,以确定最终要获取数据的连接点。
如以下实施例所示:
1)全局拓扑图是在DB(Database,数据库)中维护的,程序会定期更新拓扑图。每个拓扑图代表的是一个集群,有若干接点,每个检点都会发布订阅点供其他group订阅,同时也可能会订阅其他group发布的订阅点。
2)Group F希望获得订阅点X的数据,而在播发链路中Group A,Group B,GroupC,Group D都有提供该订阅点X数据,从整个拓扑链路上Group F最靠近Group D,此时就会选择Group D的订阅点进行连接,这样GroupF就会发起向GroupD的连接,如图3所示。
3)假设此时集群Group D属于运维停机状态,可以通过更改拓扑图,此时删除Group D,Group F则会意识到Group D不再存在,这样就会再次发起订阅点X的查询操作而选择Group C的订阅点X,Group F就会向Group C发起订阅操作,如图4所示。
实施例二:
本发明还提供了一种播发链路选择装置,包括:
通过语法树辅助模块,用于创建语法树;
语法树模块,用于根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块,用于结合订阅点后和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
实施例三:
本发明还提供了一种存储器,所述存储器存储有计算机程序,所述计算机程序执行如下步骤:
通过语法树辅助模块创建语法树;
语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
本发明是可以同时满足离线和在线处理程序,可以提供灵活高效的播发策略实现,一般的计算语言比如java/c/c++/c#均可以实施。
本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
Claims (11)
1.一种播发链路选择方法,其特征在于,所述方法包括以下步骤:
语法树辅助模块通过用户接口创建语法树,构成语法树模块;
语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
2.如权利要求1所述的一种播发链路选择方法,其特征在于,创建语法树的步骤具体如下:首先定义一组标签及其逻辑关系,然后通过语法树辅助模块提供的逻辑操作创建语法树。
3.如权利要求2所述的一种播发链路选择方法,其特征在于,语法树辅助模块根据标签的属性进行逻辑操作,并将所述属性结合起来生成语法树。
4.如权利要求3所述的一种播发链路选择方法,其特征在于,针对各种属性设置互斥条件或者联合条件,通过语法树辅助模块提供的逻辑AND/OR/NOT操作,将属性结合起来生成语法树。
5.如权利要求3所述的一种播发链路选择方法,其特征在于,播发链路内的服务点通过订阅服务找到上游的订阅点,语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点。
6.如权利要求5所述的一种播发链路选择方法,其特征在于,订阅点的标签通过执行添加、删除、改变操作,满足播发链路的需求。
7.如权利要求5所述的一种播发链路选择方法,其特征在于,播发链路中的每个订阅点构成播发链路上的一个节点,全局拓扑图模块在播发链路运行期间对全局拓扑图进行动态维护,结合语法树模块选择的订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
8.如权利要求7所述的一种播发链路选择方法,其特征在于,所述全局拓扑图在DB中进行维护,定期进行更新。
9.如权利要求8所述的一种播发链路选择方法,其特征在于,每个全局拓扑图代表一个集群,包括至少一个节点,每个节点发布订阅点供其他集群订阅,同时也订阅其他集群发布的订阅点。
10.一种播发链路选择装置,其特征在于,所述装置包括:
通过语法树辅助模块,用于创建语法树,构成语法树模块;
语法树模块,用于根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块,用于结合订阅点后和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
11.一种存储器,所述存储器存储有计算机程序,其特征在于,所述计算机程序执行如下步骤:
通过语法树辅助模块创建语法树;
语法树模块根据订阅点具有的标签进行逻辑判断,选择订阅点;
全局拓扑图模块结合订阅点和全局拓扑图进行路由,通过确定订阅点的优先级,从而确定最终要获取数据的连接点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811317929.1A CN111143707A (zh) | 2018-11-05 | 2018-11-05 | 播发链路选择方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811317929.1A CN111143707A (zh) | 2018-11-05 | 2018-11-05 | 播发链路选择方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111143707A true CN111143707A (zh) | 2020-05-12 |
Family
ID=70516505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811317929.1A Pending CN111143707A (zh) | 2018-11-05 | 2018-11-05 | 播发链路选择方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143707A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789491A (zh) * | 2012-07-03 | 2012-11-21 | 河海大学 | 一种可配置的数据订阅和发布系统及其方法 |
CN105447032A (zh) * | 2014-08-29 | 2016-03-30 | 国际商业机器公司 | 用于处理消息与订阅信息方法和系统 |
CN105610981A (zh) * | 2016-02-29 | 2016-05-25 | 湖南高至科技有限公司 | 快速作战信息流转平台 |
CN106202010A (zh) * | 2016-07-12 | 2016-12-07 | 重庆兆光科技股份有限公司 | 基于深度神经网络构建法律文本语法树的方法和装置 |
CN107888499A (zh) * | 2017-11-17 | 2018-04-06 | 北京邮电大学 | 一种基于sdn的发布订阅系统及消息转发方法 |
-
2018
- 2018-11-05 CN CN201811317929.1A patent/CN111143707A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789491A (zh) * | 2012-07-03 | 2012-11-21 | 河海大学 | 一种可配置的数据订阅和发布系统及其方法 |
CN105447032A (zh) * | 2014-08-29 | 2016-03-30 | 国际商业机器公司 | 用于处理消息与订阅信息方法和系统 |
CN105610981A (zh) * | 2016-02-29 | 2016-05-25 | 湖南高至科技有限公司 | 快速作战信息流转平台 |
CN106202010A (zh) * | 2016-07-12 | 2016-12-07 | 重庆兆光科技股份有限公司 | 基于深度神经网络构建法律文本语法树的方法和装置 |
CN107888499A (zh) * | 2017-11-17 | 2018-04-06 | 北京邮电大学 | 一种基于sdn的发布订阅系统及消息转发方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111949170B (zh) | 一种配置任务流程的方法、装置和电子设备 | |
CN106933889A (zh) | 用于筛选的规则的配置方法、显示方法和客户端 | |
CN109033109B (zh) | 数据处理方法及系统 | |
CN106462575A (zh) | 群集内存数据库的设计及实现 | |
US20220179642A1 (en) | Software code change method and apparatus | |
CN110704749B (zh) | 推荐引擎定制系统、推荐方法及推荐系统、电子设备 | |
CN109582289B (zh) | 规则引擎中规则流的处理方法、系统、存储介质和处理器 | |
CN111158666B (zh) | 实体归一化处理方法、装置、设备及存储介质 | |
CN112433702A (zh) | 一种轻量级流程设计系统及方法 | |
CN105893591A (zh) | 一种数据共享服务智能编排技术 | |
CN101495978B (zh) | 减少总线连接的消费者和产生者之间的消息流 | |
CN114385816A (zh) | 对话流挖掘方法、装置、电子设备及计算机存储介质 | |
CN111177247B (zh) | 一种数据转换的方法、装置及存储介质 | |
CN109725916B (zh) | 流处理的拓扑结构更新系统和方法 | |
CN111026916B (zh) | 文本描述的转换方法、装置、电子设备及存储介质 | |
CN111143707A (zh) | 播发链路选择方法和装置 | |
CN104794179A (zh) | 一种基于知识树的视频快速标引方法及装置 | |
CN104850311A (zh) | 一种移动应用版本更新的图形化说明生成方法及系统 | |
CN112148347A (zh) | 一种全流程溯源管理的方法和装置 | |
CN113051479B (zh) | 文件处理、推荐信息生成方法、装置、设备及存储介质 | |
CN114675921A (zh) | 一种自定义界面的方法、装置、电子设备和存储介质 | |
CN112527943B (zh) | 地图渲染方法、装置、设备和存储介质 | |
US11757474B2 (en) | Base station station-type replacement method, SDR network management system, base station station-type replacement apparatus and computer-readable storage medium | |
US7877422B2 (en) | Method and system for processing 1:N relationships between data object nodes | |
CN108089871A (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 | ||
CB02 | Change of applicant information |
Address after: 200438 9 / F, 10 / F, 11 / F, 12 / F, 38 Lane 1688, Guoquan North Road, Yangpu District, Shanghai Applicant after: QIANXUN SPATIAL INTELLIGENCE Inc. Address before: Room j165, 1st floor, building 64, 1436 Jungong Road, Yangpu District, Shanghai, 200433 Applicant before: QIANXUN SPATIAL INTELLIGENCE Inc. |
|
CB02 | Change of applicant information | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200512 |
|
WD01 | Invention patent application deemed withdrawn after publication |